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
Kp
6826e966a7
Use unique_ptr for Current_mission
2014-07-22 23:48:23 +00:00
Kp
e19d43f92f
Fix crash parsing bad mission file
2014-07-22 23:48:23 +00:00
zico
ad7cb106bc
Changed custom D1X license to GPLv3
2014-06-01 19:55:23 +02:00
Kp
073f00974a
Eliminate uses of the typedef struct X { ... } X; pattern
...
C++ does not require this pattern.
import re, fileinput
to = re.compile(r'^typedef struct ([a-z_A-Z]+)\s*{')
tc = re.compile(r'^}(.*?)\s*([a-z_A-Z]+);$')
osn = None
for line in fileinput.input(inplace=True):
m = to.match(line)
if m:
osn = m.group(1)
print 'struct %s\n{' % osn
continue
if osn:
m = tc.match(line)
if m:
csn = m.group(2)
if osn == csn:
print '}%s;' % m.group(1)
osn = None
continue
else:
osn = None
print line,
2013-12-28 22:48:07 +00:00