Commit Graph
53 Commits
Author SHA1 Message Date
Goober5000 3b2af702f7 refactor display_name for ships, ship classes, and weapon classes
Several things going on here:
1) refactor `get_display_string()` to `get_display_name()` to be more precise
2) likewise, refactor `alt_name` to `display_name`
3) automatically generate display names when parsing the ship, ship class, and weapon class for the first time
4) remove the on-the-fly truncation of names with hash symbols

Basically this subsumes the `end_string_at_first_hash_symbol` logic into the display name.  Rather than truncate the name every time it's displayed, truncate it once when it's parsed.  This takes advantage of the previous display name infrastructure, since display names are a superset of the case of truncating the hash symbol.

This also has the benefit of now allowing hash symbols within display names.  When updating Destiny of Peace, I noticed that "Lockheed Shuttle #4" would no longer display properly; and it was not previously possible to fix this even with display names.

I could pull out the `get_display_string()` and `alt_name` renaming into a separate PR if desired.
2020-08-21 00:15:38 -04:00
Goober5000 98d7a9f6f6 tweak some untranslated internal XSTR strings
This is a minor follow-up to PR #2390.  There are a few minor differences between untranslated strings and the internal strings in strings.tbl; this PR fixes them.
2020-05-21 19:09:03 -04:00
CasparKielwein 7e74153a3d remove unused functions in mission code.
There where serval relics of prior refactorings like unimplemented functions.
2018-12-28 10:29:22 +01:00
asarium c13cb44df4 Add ship display name feature
This adds a mission file option for ships which allows specifying a
different string which should be used for displaying the name of the
ship to the user. This name will not be used in SEXPs or other ship
lookup functions so it can be freely translated and two ships can also
have the same display name.

The new feature can be used by adding $Display name: <string> after $Name
for a ship in a mission file. I think I added proper support for FRED
(and qtFRED) so that this new value is properly saved but it would be
great if someone could test that.

This implements one of the features requested in #1730.
2018-07-22 23:16:00 +02:00
asarium e28ebc2a6c Enable and fix misc-suspicious-string-compare check 2018-04-25 11:13:19 +02:00
Goober5000 5095b1c57a several fixes to time-docked and time-undocked
Time-undocked will cause FSO to freeze unless you know what you're doing, so this PR fixes some gotcha areas.  Inspired by The E's rant on Discord which, while not 100% correct, did indicate some areas for improvement.

1) Set the default "number of times docked" argument to 1 when the sexp is created in FRED, same as with the has-[un]docked-delay sexps
2) Catch any <= 0 counts when the sexp is called in FRED and set them to 1.  (This was done for other sexps which used mission_log_get_time_indexed, but was not done for time-[un]docked for some reason.)
3) Add an assertion to mission_log_get_time_indexed as a last resort to guard against invalid counts.
2017-08-27 17:18:39 -04:00
Fabian Woltermann 9f27973147 Fixes various bugs 2016-08-19 19:23:55 +02:00
Fabian Woltermann 1acfaa8157 Converts model subsystem flags 2016-08-19 14:59:15 +02:00
Fabian Woltermann 770fce8de5 Bitset flags -- take 2 (#775)
This introduces a new mechanism for handling bit flags. Instead of using an int (or two, or three) to write bits into, this uses the std::bitset in a wrapper class that accepts an enum class as input. This means that certain classes of errors we've had a few of in the engine, where a coder used the wrong set of flags or checked them against the wrong variable (SF_STEALTH vs SIF_STEALTH, for example) can now be detected at a compiler level rather than not at all.
2016-08-12 16:13:50 -07:00
asarium 16be3b7cc5 Add support for TrueType fonts
This allows to use standard TrueType Fonts for text rendering in FSO. It uses the NanoVG library which provides the ability of drawing 2D shapes. This library is used for most 2D operations now and can also be used directly by using the PathRenderer class.
2016-08-02 10:57:28 +02:00
Echelon9 c5493bb480 Scripted sort and uniq on (internal) project includes. Improves search time and as a by product removed a number of duplicative includes. 2015-06-22 20:24:30 +10:00
Goober5000 7cd97633b6 Yarn's patch for Polish localization
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@11044 387891d4-d844-0410-90c0-e4c51a9137d3
2014-09-09 20:37:02 +10:00
The_E 6e91857745 From Yarn: Fixes interface graphics scaling issues. If, for some reason, you want to have the interface graphics stretched, use the -stretch_menu commandline flag.
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@10544 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-30 12:39:54 +10:00
niffiwan e991f7b3ac remove gcc warnings [-Wshadow] in mission/missionlog.cpp
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9902 387891d4-d844-0410-90c0-e4c51a9137d3
2013-10-07 20:02:31 +10:00
niffiwan 14058b834d Coverity 1093641: fix out of bounds write (Log_line_timestamps[Num_log_lines])
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9901 387891d4-d844-0410-90c0-e4c51a9137d3
2013-10-07 20:02:31 +10:00
Goober5000 4bd10888ff make localization more robust with additional checks on string length, more consting, and stronger typing and make XSTR const, since we don't want to modify the strings it translates and then CONST ALL THE THINGS
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9809 387891d4-d844-0410-90c0-e4c51a9137d3
2013-09-26 18:51:34 +10:00
Goober5000 2e779e8bef MOAR const!
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9805 387891d4-d844-0410-90c0-e4c51a9137d3
2013-09-26 18:51:33 +10:00
Valathil e039a4954e Fix for Mantis 2207: Use Missiontime for F4 Logscreen entries and fix the calculation. 2012-11-20 23:42:12 +00:00
Goober5000 14322c5064 a ship that is self-destructed should have the same behavior as one that is destroyed, if going by mission log entries
(c.f. thread: http://www.hard-light.net/forums/index.php?topic=82718.0)
2012-11-05 05:43:28 +00:00
Goober5000 5c6261c229 fix a rather important variable initialization
(follow-up to r8967)
2012-07-03 05:12:24 +00:00
Goober5000 89eca40235 wings that are initially docked will now arrive in mission correctly 2012-07-02 01:59:35 +00:00
Echelon9 f2856015ad PVS-Studio fixes: Resolve some warnings about use of pointers before checking for a null pointer 2012-03-04 08:51:59 +00:00
Goober5000 3f0914f407 need to use subsystem_stricmp for subsystems 2012-01-19 07:05:50 +00:00
Echelon9 19ae6528e0 Cases of commented out Int3() indicate areas of old, redundant code. 2011-11-17 11:07:53 +00:00
Goober5000 f570348ee2 --the behavior of cargo index -1 (which can only happen for capships) and cargo index 0 is substantially the same, so let's standardize on index 0... this prevents crazy stuff happening with bitwise operators on negative numbers :-/
--also, remove the restriction on capship cargo where ships must have the "scannable" flag
--because of the above constraints, "nothing" cannot be a meaningful subsys cargo, but then again, scanning a subsystem with "nothing" didn't do anything in the old code, so this doesn't change anything
2011-01-31 10:04:37 +00:00
Goober5000 c77551181c fix for Mantis #2390
errors in handling the CARGO_NO_DEPLETE flag for ship subsystems
2011-01-31 09:18:21 +00:00
karajorma a2afa2b67a Switch to using the Macros for Multiplayer modes whenever possible. 2010-04-27 13:42:59 +00:00
Wanderer 93524920bd fix for mantis 2077 2010-01-04 11:21:56 +00:00
portej05 98f337f701 safe_strings - from Antipodes build #1 2009-07-27 16:06:24 +00:00
portej05 719825f80d The big CVS comment removal. This chops approx. 3.5mb off a full checkout.
I've tested this through compiling and through hand checking. 
Normalises line endings in ALL files to \n.
2009-06-20 08:08:20 +00:00
Wanderer 943969aac1 merge from wanderer branch - fix inconsistencies with subobj_name and name 2009-05-21 08:19:51 +00:00
phreak 307106f983 Got rid of goto statements 2008-11-11 00:09:30 +00:00
karajorma 68c51f242a Fix Mantis 1812 (Ship-Deaths reported incorrectly for player starts controlled by AI ships) 2008-11-10 19:31:07 +00:00
Backslash 759872d98b A few more tweaks for ship name end_string_at_first_hash_symbol support.
Make FPS and status displays hide when hud is toggled with shift-O.
2008-04-16 03:21:37 +00:00
taylor 489eab4e8b minor code cleanup and better error handling 2007-10-28 16:39:58 +00:00
Goober5000 71d71f1de9 fix for Mantis #827
--Goober5000
2006-05-21 02:12:21 +00:00
Goober5000 4448ef1c47 fix for Mantis #755, plus make the missionlog #defines uniform
--Goober5000
2006-05-20 02:03:01 +00:00
taylor 6930e3eb6a make sure the mission log doesn't modify stuff in Cargo_names[], since it shouldn't
have split_str_once() be sure to not split a word in half, it should end up on the second line instead
2006-03-19 05:05:59 +00:00
Goober5000 4d5a477f71 übercommit of custom IFF stuff :) 2006-01-13 03:31:20 +00:00
taylor 3c2f9cd4c2 add a bunch of Assert()'s and NULL checks to either help debug or avoid errors
fix Mantis bug #381
fix a small issue with the starfield bitmap removal sexp since it would read one past the array size
2005-10-30 20:03:40 +00:00
taylor d3481714d0 remove NO_NETWORK 2005-10-10 17:21:11 +00:00
Goober5000 2a307d099a CVS header tweaks
--Goober5000
2005-07-22 10:18:41 +00:00
Goober5000 c17c11b651 remove PreProcDefine #includes in FS2
--Goober5000
2005-07-13 03:26:00 +00:00
taylor 3f6e13d20b use vm_malloc(), vm_free(), vm_realloc(), vm_strdup() rather than system named macros
fixes various problems and is past time to make the switch
2005-05-12 17:49:18 +00:00
taylor 91e9fb4433 more NO_NETWORK/INF_BUILD goodness for Windows, takes care of a few warnings too 2005-03-02 21:24:48 +00:00
taylor a2232be0c7 merge with Linux/OSX tree - p0204 2005-02-04 10:12:33 +00:00
Goober5000 d6b1e0c922 made a capitalization thing consistent
--Goober500
2005-01-11 21:28:24 +00:00
Kazan 864e1b5922 remove MCD complete 2004-07-26 20:47:56 +00:00
Kazan 428b3dcbc9 MCD - define _MCD_CHECK to use memory tracking 2004-07-12 16:33:09 +00:00
Goober5000 7ef2ab2e39 Uber pass at reducing #includes
--Goober5000
2004-03-05 09:02:13 +00:00