Commit graph

63 commits

Author SHA1 Message Date
Kp fc4b686d9d Store PHYSFS_list element count in list when needed 2015-05-09 17:38:57 +00:00
Kp c3925353fd Use null_sentinel_iterator for PHYSFS_list_t 2015-04-26 20:15:51 +00:00
Kp 143c536c77 Use PHYSFS_list_t for more functions 2015-04-26 20:15:50 +00:00
Kp 65ff319ebb Use ntstring for LastMission 2015-03-22 18:49:20 +00:00
Kp cc508be34c Pass selection for EVENT_NEWMENU_SELECTED 2015-02-28 22:34:07 +00:00
Kp f2fb31a120 Merge 'D1 emulation issues' into unification/master
Requested by btb: https://github.com/dxx-rebirth/dxx-rebirth/pull/38
2015-02-20 03:00:46 +00:00
Kp 5a015b38e5 Add D1_MISSION_HOGSIZE2 to load_mission_d1 cases
Fixes: 33c118f999 ("Enable Int3 as d_debugbreak")
2015-02-15 17:24:55 +00:00
Bradley Bell f535bff4f8 When emulating D1, put descent.hog at front of search list.
That way we get the D1 music when playing a D1 mission.
This also means we get D1 music in the menu, etc.
Therefore only keeps D1 assets loaded until non-D1 mission is selected.
2015-02-08 12:26:36 -08:00
Kp 88c740b3a5 Record briefing without modification 2015-01-18 01:58:31 +00:00
Kp 43abfdf431 Split set_briefing_filename 2015-01-18 01:58:31 +00:00
Kp e9e69a1a1a Use ntstring copy_if in set_briefing_filename 2015-01-18 01:58:30 +00:00
Kp f7815810e8 Use RAIIPHYSFS_File to manage PHYSFS_File
Fixes a few leaks on error paths.
2015-01-17 18:31:42 +00:00
Kp 68d705a85a Use bool conversion to test PHYSFS_File pointer 2015-01-17 18:31:42 +00:00
Kp d443e28147 Reuse mle_path as Mission_path 2015-01-15 04:30:03 +00:00
Kp b175c944ef Simplify mle_path 2015-01-14 02:26:20 +00:00
Kp ea3c789f64 Fix Windows build break due to strchr losing const
Mingw32 headers and Apple libc++ both strip const from strchr.  Store
the result into a const char* to restore const to the pointer.
2015-01-14 02:26:20 +00:00
Kp 24bdbfb933 Move mle path carefully 2015-01-13 04:19:42 +00:00
Kp 1c4c33513b Copy secret level name without modification 2015-01-12 00:26:03 +00:00
Kp ddc40a6634 Copy level name without modification 2015-01-12 00:26:03 +00:00
Kp b6a3735f53 Add convenience d_strnicmp for literal right side 2015-01-12 00:26:03 +00:00
Kp 5402e8c546 Add unchecked_partial_range for ranges without end 2015-01-11 05:08:30 +00:00
Kp ac1340e3c9 Use ntstring for mission_name 2014-12-22 04:35:48 +00:00
Kp 1344fb2779 Fix crash choosing jukebox directory
newmenu_listbox1 returns immediately
2014-12-22 04:35:47 +00:00
Kp 2766114959 Make PHYSFSX_gets_line_t::line_t be array<> 2014-12-20 04:36:10 +00:00
Kp 7c24f6896f Stop briefing search on dot or null
Mission names are passed in without an extension.  Short mission names
read beyond the end of the buffer, causing AddressSanitizer to kill the
program.

Reported by btb: https://github.com/dxx-rebirth/dxx-rebirth/issues/20
2014-12-08 03:54:11 +00:00
Kp 73b0a016a8 Fix loading robots-?.mvl
Rework movie loading to fix loading built-in robot movies.  The previous
code always ignored loading the last entry in the movie array, which was
blank until 18f6919b33.  The last entry
was unused after d38a3d1362, so it was
removed, which caused the code to skip the robots entry.

Commit d38a3d1362 broke unloading add-on
movies by removing the strcpy which saved their name.  Add code to save
the name to extra_robot_movie_mission and call it when switching
missions.

Reported by btb: https://github.com/dxx-rebirth/dxx-rebirth/pull/17
2014-12-06 17:56:56 +00:00
Kp f206b3b127 Reduce inclusion of object.h 2014-11-23 04:36:58 +00:00
Kp 82b4a078bd Fix buffer size mismatch on Win32 2014-10-19 17:17:54 +00:00
Kp a8f853aa7a Pass d_event arg by const& 2014-10-04 22:36:13 +00:00
Kp 3c199e3b91 Propagate for variables in similar/main/mission.cpp 2014-09-26 02:42:10 +00:00
Kp 703f60ac3f Fix -Wtype-limits warnings 2014-09-21 21:41:55 +00:00
Kp e8f4b20d1d Use special type for PHYSFSX_fgets 2014-09-07 20:07:20 +00:00
Kp e00224d44d Fix signature of sort predicate 2014-08-30 22:38:26 +00:00
Kp c371559007 Move mission get_parm_value::buf onto caller stack 2014-08-26 03:19:29 +00:00
Kp 94550355a8 Use make_unique instead of bare new 2014-08-24 18:28:09 +00:00
Kp fea751bc62 Use std::string for mission path 2014-08-24 17:45:30 +00:00
Kp 0e211ebe32 Use vector<> for mle[] 2014-08-24 17:41:02 +00:00
Kp ff1ce23d76 Initialize mission->filename consistently 2014-08-24 17:03:52 +00:00
Kp 3f3c3f8a33 Remove useless second sort of mission list 2014-08-24 03:46:18 +00:00
Kp 8d835f8e34 Reduce inclusion of compiler-begin.h 2014-08-24 03:36:35 +00:00
Kp e9e02355cc Fix crash on exiting game 2014-08-16 18:32:24 +00:00
Kp d945a95d47 Use std::default_delete<Mission> for Mission_ptr 2014-08-16 04:22:01 +00:00
Kp 621f947241 Switch builtin_mission_filename to d_fname 2014-08-16 04:20:48 +00:00
Kp b8ee7b23df Use std::swap in promote(mle) 2014-08-16 04:18:49 +00:00
Kp 13b233b7d7 Fix Windows build 2014-07-26 22:53:41 +00:00
Kp af912ea84d Use unique_ptr for level_names 2014-07-25 02:54:31 +00:00
Kp d1eaa1819c Use unique_ptr for secret_level_names 2014-07-25 02:54:31 +00:00
Kp 3bf30f9cf7 Use unique_ptr for secret_level_table 2014-07-25 02:54:31 +00:00
Kp 6020c9c013 Use d_fname for DOS filenames 2014-07-25 02:54:31 +00:00
Kp 79708e14f4 Use unique_ptr for alternate_ham_file 2014-07-25 01:48:36 +00:00