Merge mac into windows
This commit is contained in:
3
.gitignore
vendored
3
.gitignore
vendored
@@ -61,7 +61,7 @@ pkg/win/data.nsi
|
||||
|
||||
# Shader Builder projects
|
||||
# It's an sqlite3 database and not particularly important, so exclude it
|
||||
src/tools/*.sbproj
|
||||
*.sbproj
|
||||
|
||||
# Doxygen stuff
|
||||
src/doxy/html/
|
||||
@@ -84,3 +84,4 @@ test/junk/*.map
|
||||
# Misc
|
||||
oldstructs.txt
|
||||
src/tools/gitrev.hpp
|
||||
rsrc/**/scenario
|
||||
|
@@ -74,7 +74,7 @@ Order of Includes
|
||||
-----------------
|
||||
|
||||
Include files at the top of any file (header or source) should appear in
|
||||
the following order, with a blank line between groups:
|
||||
the following order:
|
||||
|
||||
* the source file's counterpart header (only applicable for source
|
||||
files)
|
||||
@@ -88,7 +88,10 @@ for C headers)
|
||||
* Component-specific Blades of Exile headers
|
||||
|
||||
All except the last three and the first one should use the angle
|
||||
brackets include style.
|
||||
brackets include style. Normally, there should be a blank line
|
||||
between groups; however, if there are only one or two headers in
|
||||
a group, it can be merged with an adjacent group. The counterpart
|
||||
header should always be followed by a blank line, however.
|
||||
|
||||
Try to make all includes explicit in the header files, rather than
|
||||
relying on indirect includes by including one file that includes others.
|
||||
|
@@ -31,6 +31,7 @@
|
||||
91EBE9DE0F9A33A6002356F2 /* PBXTargetDependency */,
|
||||
91EBE9E00F9A33A8002356F2 /* PBXTargetDependency */,
|
||||
91EBE9E20F9A33AC002356F2 /* PBXTargetDependency */,
|
||||
9185BDAA1EA06A150027C346 /* PBXTargetDependency */,
|
||||
);
|
||||
name = All;
|
||||
productName = All;
|
||||
@@ -137,7 +138,7 @@
|
||||
919B13A21BBCDF14009905A4 /* monst_legacy.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 919B13A11BBCDE18009905A4 /* monst_legacy.cpp */; };
|
||||
919B13A41BBD8854009905A4 /* item_legacy.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 919B13A31BBD8849009905A4 /* item_legacy.cpp */; };
|
||||
919B13A61BBDE986009905A4 /* spec_legacy.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 919B13A51BBDE985009905A4 /* spec_legacy.cpp */; };
|
||||
919CC2481B3772F300273FDA /* creatlist.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 91AC620A0FA2853700EEAE67 /* creatlist.cpp */; };
|
||||
919CC2481B3772F300273FDA /* population.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 91AC620A0FA2853700EEAE67 /* population.cpp */; };
|
||||
919CC2491B3772FB00273FDA /* creature.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 914698FE1A747C4500F20F5E /* creature.cpp */; };
|
||||
919CC24B1B37730300273FDA /* item.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 91279D3D0F9D1D6A007B0D52 /* item.cpp */; };
|
||||
919CC24C1B37730900273FDA /* living.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 914698FB1A7362D900F20F5E /* living.cpp */; };
|
||||
@@ -175,14 +176,14 @@
|
||||
919CC2721B3773F800273FDA /* fileio.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 91E30F2D1A7481C20057C54A /* fileio.cpp */; };
|
||||
919CC2731B3773FD00273FDA /* fileio_party.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 91E30F2A1A74819B0057C54A /* fileio_party.cpp */; };
|
||||
919CC2741B37740200273FDA /* fileio_scen.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 91E5C7A60F9F615400C21460 /* fileio_scen.cpp */; };
|
||||
919CC2751B37740A00273FDA /* graphtool.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 91B3F10A0F9779C300BF5B67 /* graphtool.cpp */; };
|
||||
919CC2751B37740A00273FDA /* render_image.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 91B3F10A0F9779C300BF5B67 /* render_image.cpp */; };
|
||||
919CC2761B37741000273FDA /* mathutil.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 91B3F11E0F97801F00BF5B67 /* mathutil.cpp */; };
|
||||
919CC2771B37741500273FDA /* map_parse.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 915E09081A316D89008BDF00 /* map_parse.cpp */; };
|
||||
919CC2781B37741A00273FDA /* porting.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 913D005A0F9FEEC200184C18 /* porting.cpp */; };
|
||||
919CC2791B37742200273FDA /* prefs.mac.mm in Sources */ = {isa = PBXBuildFile; fileRef = 91EC481018FBABB100BB1E86 /* prefs.mac.mm */; };
|
||||
919CC27A1B37742800273FDA /* qdpict.mac.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 91F6F8F518F8DE6300E3EA15 /* qdpict.mac.cpp */; };
|
||||
919CC27B1B37742D00273FDA /* soundtool.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 91B3F10F0F9779D000BF5B67 /* soundtool.cpp */; };
|
||||
919CC27C1B37743200273FDA /* specials_parse.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 915325181A2E37EE000A9A1C /* specials_parse.cpp */; };
|
||||
919CC27B1B37742D00273FDA /* sounds.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 91B3F10F0F9779D000BF5B67 /* sounds.cpp */; };
|
||||
919CC27C1B37743200273FDA /* special_parse.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 915325181A2E37EE000A9A1C /* special_parse.cpp */; };
|
||||
919CC27D1B37743700273FDA /* tarball.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 91BFA3D81902AD78001686E4 /* tarball.cpp */; };
|
||||
919CC27E1B37743B00273FDA /* undo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 912283C80FD0E16C00B21642 /* undo.cpp */; };
|
||||
919CC27F1B37744000273FDA /* winutil.mac.mm in Sources */ = {isa = PBXBuildFile; fileRef = 919145FF18E63B70005CF3A4 /* winutil.mac.mm */; };
|
||||
@@ -256,6 +257,11 @@
|
||||
91CC173C1B421CA0003D9A69 /* catch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 91CC17391B421CA0003D9A69 /* catch.cpp */; };
|
||||
91CC173E1B421CA0003D9A69 /* scen_write.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 91CC173B1B421CA0003D9A69 /* scen_write.cpp */; };
|
||||
91CC17491B422D5C003D9A69 /* scen_read.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 91CC173A1B421CA0003D9A69 /* scen_read.cpp */; };
|
||||
91CE248A1EA12866005BDCE4 /* utility.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 91CE24891EA1284B005BDCE4 /* utility.cpp */; };
|
||||
91CE248C1EA12A96005BDCE4 /* render_text.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 91CE248B1EA12A91005BDCE4 /* render_text.cpp */; };
|
||||
91CE248E1EA12AA3005BDCE4 /* render_shapes.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 91CE248D1EA12AA0005BDCE4 /* render_shapes.cpp */; };
|
||||
91CE24921EA12ABD005BDCE4 /* gfxsheets.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 91CE24911EA12ABB005BDCE4 /* gfxsheets.cpp */; };
|
||||
91CE24931EA12AC9005BDCE4 /* tiling.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 91CE248F1EA12AAD005BDCE4 /* tiling.cpp */; };
|
||||
91D634560F8FD77800674AB3 /* BoE.icns in Resources */ = {isa = PBXBuildFile; fileRef = 2B8F435C0C0973680012E4A8 /* BoE.icns */; };
|
||||
91E128E41BC1624700C8BE1D /* ter_legacy.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 91E128E31BC1624700C8BE1D /* ter_legacy.cpp */; };
|
||||
91E128E61BC19DA400C8BE1D /* init.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 91E128E51BC19DA400C8BE1D /* init.cpp */; };
|
||||
@@ -354,6 +360,13 @@
|
||||
remoteGlobalIDString = 919CC22C1B37721400273FDA;
|
||||
remoteInfo = "Common-Party";
|
||||
};
|
||||
9185BDA91EA06A150027C346 /* PBXContainerItemProxy */ = {
|
||||
isa = PBXContainerItemProxy;
|
||||
containerPortal = 2BF04AA10BF51845006C0831 /* Project object */;
|
||||
proxyType = 1;
|
||||
remoteGlobalIDString = 91CC172C1B421C0A003D9A69;
|
||||
remoteInfo = boe_test;
|
||||
};
|
||||
91BC33931B4390E40008882C /* PBXContainerItemProxy */ = {
|
||||
isa = PBXContainerItemProxy;
|
||||
containerPortal = 2BF04AA10BF51845006C0831 /* Project object */;
|
||||
@@ -563,7 +576,6 @@
|
||||
911F2DA41B98FF2300E3102E /* sounds */ = {isa = PBXFileReference; lastKnownFileType = folder; path = sounds; sourceTree = "<group>"; };
|
||||
911F2DA51B98FF2700E3102E /* fonts */ = {isa = PBXFileReference; lastKnownFileType = folder; path = fonts; sourceTree = "<group>"; };
|
||||
912283C80FD0E16C00B21642 /* undo.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = undo.cpp; sourceTree = "<group>"; };
|
||||
912287850FD41A2300B21642 /* simpletypes.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = simpletypes.hpp; sourceTree = "<group>"; };
|
||||
91279BAD0F9CFCBA007B0D52 /* boescenario.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; name = boescenario.icns; path = ../rsrc/icons/mac/boescenario.icns; sourceTree = SOURCE_ROOT; };
|
||||
91279BB30F9D03B6007B0D52 /* boesave.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; name = boesave.icns; path = icons/mac/boesave.icns; sourceTree = "<group>"; };
|
||||
91279BB40F9D03B7007B0D52 /* boesounds.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; name = boesounds.icns; path = icons/mac/boesounds.icns; sourceTree = "<group>"; };
|
||||
@@ -583,7 +595,7 @@
|
||||
91279D3C0F9D1D6A007B0D52 /* item.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = item.hpp; sourceTree = "<group>"; };
|
||||
91279D3D0F9D1D6A007B0D52 /* item.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = item.cpp; sourceTree = "<group>"; };
|
||||
912DFE8918E24B4C00B00D75 /* resmgr.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = resmgr.hpp; sourceTree = "<group>"; };
|
||||
912DFE8A18E24B4C00B00D75 /* restypes.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = restypes.hpp; sourceTree = "<group>"; };
|
||||
912DFE8A18E24B4C00B00D75 /* res_image.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = res_image.hpp; sourceTree = "<group>"; };
|
||||
912DFE8E18E2872300B00D75 /* boe.menus.mac.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = boe.menus.mac.mm; sourceTree = "<group>"; };
|
||||
913D00590F9FEEC200184C18 /* porting.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = porting.hpp; sourceTree = "<group>"; };
|
||||
913D005A0F9FEEC200184C18 /* porting.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = porting.cpp; sourceTree = "<group>"; };
|
||||
@@ -604,8 +616,8 @@
|
||||
914CA45719074D0A00B6ADD1 /* scen.menus.mac.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = scen.menus.mac.mm; sourceTree = "<group>"; };
|
||||
914CA4641909B00100B6ADD1 /* scen.menus.hpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; path = scen.menus.hpp; sourceTree = "<group>"; };
|
||||
914CA49F190C4E9200B6ADD1 /* scenedit.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; name = scenedit.xib; path = menus/scenedit.xib; sourceTree = "<group>"; };
|
||||
915325161A2E1DA8000A9A1C /* oldstructs.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = oldstructs.cpp; path = ../oldstructs.cpp; sourceTree = "<group>"; };
|
||||
915325181A2E37EE000A9A1C /* specials_parse.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = specials_parse.cpp; sourceTree = "<group>"; };
|
||||
915325161A2E1DA8000A9A1C /* oldstructs.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = oldstructs.cpp; sourceTree = "<group>"; };
|
||||
915325181A2E37EE000A9A1C /* special_parse.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = special_parse.cpp; sourceTree = "<group>"; };
|
||||
91597A6C1A3BED2D00BE7BF9 /* spell.hpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; path = spell.hpp; sourceTree = "<group>"; };
|
||||
91597A6E1A3BEDC700BE7BF9 /* spell.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = spell.cpp; sourceTree = "<group>"; };
|
||||
915AF9E91BC04171008AEF49 /* dlogevt.hpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; path = dlogevt.hpp; sourceTree = "<group>"; };
|
||||
@@ -627,6 +639,21 @@
|
||||
9179A4631A4867E200FEF872 /* stack.hpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; path = stack.hpp; sourceTree = "<group>"; };
|
||||
9179A4641A48681800FEF872 /* stack.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = stack.cpp; sourceTree = "<group>"; };
|
||||
917B573F100B956C0096C978 /* undo.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = undo.hpp; sourceTree = "<group>"; };
|
||||
9185BD951EA020B70027C346 /* monster_abilities.hpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; path = monster_abilities.hpp; sourceTree = "<group>"; };
|
||||
9185BD961EA0234A0027C346 /* damage.hpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; path = damage.hpp; sourceTree = "<group>"; };
|
||||
9185BD971EA025720027C346 /* race.hpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; path = race.hpp; sourceTree = "<group>"; };
|
||||
9185BD991EA027B80027C346 /* fields.hpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; path = fields.hpp; sourceTree = "<group>"; };
|
||||
9185BD9A1EA02B840027C346 /* skills_traits.hpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; path = skills_traits.hpp; sourceTree = "<group>"; };
|
||||
9185BD9B1EA02B8F0027C346 /* alchemy.hpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; path = alchemy.hpp; sourceTree = "<group>"; };
|
||||
9185BD9C1EA02BA20027C346 /* terrain_abilities.hpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; path = terrain_abilities.hpp; sourceTree = "<group>"; };
|
||||
9185BD9D1EA02C320027C346 /* item_abilities.hpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; path = item_abilities.hpp; sourceTree = "<group>"; };
|
||||
9185BD9E1EA02C3D0027C346 /* item_variety.hpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; path = item_variety.hpp; sourceTree = "<group>"; };
|
||||
9185BD9F1EA02E5C0027C346 /* quest.hpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; path = quest.hpp; sourceTree = "<group>"; };
|
||||
9185BDA01EA02FF80027C346 /* global.hpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; path = global.hpp; sourceTree = "<group>"; };
|
||||
9185BDA51EA055180027C346 /* res_cursor.hpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; path = res_cursor.hpp; sourceTree = "<group>"; };
|
||||
9185BDA61EA055180027C346 /* res_font.hpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; path = res_font.hpp; sourceTree = "<group>"; };
|
||||
9185BDA71EA055180027C346 /* res_sound.hpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; path = res_sound.hpp; sourceTree = "<group>"; };
|
||||
9185BDA81EA055180027C346 /* res_strings.hpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; path = res_strings.hpp; sourceTree = "<group>"; };
|
||||
918D59A718EA513900735B66 /* dialog.keys.hpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; path = dialog.keys.hpp; sourceTree = "<group>"; };
|
||||
919086DF1A65C8E30071F7A0 /* tinyprint.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = tinyprint.cpp; sourceTree = "<group>"; };
|
||||
919086E11A65D3250071F7A0 /* tinyprint.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = tinyprint.h; sourceTree = "<group>"; };
|
||||
@@ -652,8 +679,8 @@
|
||||
91AC607F0FA26A3B00EEAE67 /* town_import.tpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; path = town_import.tpp; sourceTree = "<group>"; };
|
||||
91AC61C40FA2729900EEAE67 /* universe.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = universe.hpp; sourceTree = "<group>"; };
|
||||
91AC61C50FA2729900EEAE67 /* universe.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = universe.cpp; sourceTree = "<group>"; };
|
||||
91AC62090FA2853700EEAE67 /* creatlist.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = creatlist.hpp; sourceTree = "<group>"; };
|
||||
91AC620A0FA2853700EEAE67 /* creatlist.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = creatlist.cpp; sourceTree = "<group>"; };
|
||||
91AC62090FA2853700EEAE67 /* population.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = population.hpp; sourceTree = "<group>"; };
|
||||
91AC620A0FA2853700EEAE67 /* population.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = population.cpp; sourceTree = "<group>"; };
|
||||
91ACCE82190032E000FAEF8B /* fix_dylibs.sh */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = fix_dylibs.sh; sourceTree = "<group>"; };
|
||||
91B0D5CB1E33E579002BE4DA /* bladbase */ = {isa = PBXFileReference; lastKnownFileType = folder; name = bladbase; path = ../bases/bladbase; sourceTree = "<group>"; };
|
||||
91B0D5CC1E3408AB002BE4DA /* busywork */ = {isa = PBXFileReference; lastKnownFileType = folder; path = busywork; sourceTree = "<group>"; };
|
||||
@@ -692,10 +719,10 @@
|
||||
91B3EF0A0F969BD300BF5B67 /* pc.graphics.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = pc.graphics.cpp; sourceTree = "<group>"; };
|
||||
91B3EF110F969BD300BF5B67 /* BoECharEd.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; name = BoECharEd.icns; path = icons/mac/BoECharEd.icns; sourceTree = "<group>"; };
|
||||
91B3EF130F969BD300BF5B67 /* BoECharEd-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = "BoECharEd-Info.plist"; path = "pcedit/BoECharEd-Info.plist"; sourceTree = SOURCE_ROOT; };
|
||||
91B3F1090F9779C300BF5B67 /* graphtool.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = graphtool.hpp; sourceTree = "<group>"; };
|
||||
91B3F10A0F9779C300BF5B67 /* graphtool.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = graphtool.cpp; sourceTree = "<group>"; };
|
||||
91B3F10E0F9779D000BF5B67 /* soundtool.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = soundtool.hpp; sourceTree = "<group>"; };
|
||||
91B3F10F0F9779D000BF5B67 /* soundtool.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = soundtool.cpp; sourceTree = "<group>"; };
|
||||
91B3F1090F9779C300BF5B67 /* render_image.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = render_image.hpp; sourceTree = "<group>"; };
|
||||
91B3F10A0F9779C300BF5B67 /* render_image.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = render_image.cpp; sourceTree = "<group>"; };
|
||||
91B3F10E0F9779D000BF5B67 /* sounds.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = sounds.hpp; sourceTree = "<group>"; };
|
||||
91B3F10F0F9779D000BF5B67 /* sounds.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sounds.cpp; sourceTree = "<group>"; };
|
||||
91B3F11D0F97801F00BF5B67 /* mathutil.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = mathutil.hpp; sourceTree = "<group>"; };
|
||||
91B3F11E0F97801F00BF5B67 /* mathutil.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = mathutil.cpp; sourceTree = "<group>"; };
|
||||
91BC33971B439BEA0008882C /* files */ = {isa = PBXFileReference; lastKnownFileType = folder; path = files; sourceTree = "<group>"; };
|
||||
@@ -722,6 +749,16 @@
|
||||
91CC173A1B421CA0003D9A69 /* scen_read.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = scen_read.cpp; sourceTree = "<group>"; };
|
||||
91CC173B1B421CA0003D9A69 /* scen_write.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = scen_write.cpp; sourceTree = "<group>"; };
|
||||
91CC173F1B421CAA003D9A69 /* catch.hpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; path = catch.hpp; sourceTree = "<group>"; };
|
||||
91CE24841EA124E4005BDCE4 /* gfxsheets.hpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; path = gfxsheets.hpp; sourceTree = "<group>"; };
|
||||
91CE24851EA12534005BDCE4 /* render_text.hpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; path = render_text.hpp; sourceTree = "<group>"; };
|
||||
91CE24861EA12595005BDCE4 /* tiling.hpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; path = tiling.hpp; sourceTree = "<group>"; };
|
||||
91CE24871EA12620005BDCE4 /* render_shapes.hpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; path = render_shapes.hpp; sourceTree = "<group>"; };
|
||||
91CE24881EA127EC005BDCE4 /* utility.hpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; path = utility.hpp; sourceTree = "<group>"; };
|
||||
91CE24891EA1284B005BDCE4 /* utility.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = utility.cpp; sourceTree = "<group>"; };
|
||||
91CE248B1EA12A91005BDCE4 /* render_text.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = render_text.cpp; sourceTree = "<group>"; };
|
||||
91CE248D1EA12AA0005BDCE4 /* render_shapes.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = render_shapes.cpp; sourceTree = "<group>"; };
|
||||
91CE248F1EA12AAD005BDCE4 /* tiling.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = tiling.cpp; sourceTree = "<group>"; };
|
||||
91CE24911EA12ABB005BDCE4 /* gfxsheets.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = gfxsheets.cpp; sourceTree = "<group>"; };
|
||||
91E128E31BC1624700C8BE1D /* ter_legacy.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ter_legacy.cpp; sourceTree = "<group>"; };
|
||||
91E128E51BC19DA400C8BE1D /* init.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = init.cpp; sourceTree = "<group>"; };
|
||||
91E128E81BC2076B00C8BE1D /* 3choice.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = 3choice.cpp; sourceTree = "<group>"; };
|
||||
@@ -740,7 +777,7 @@
|
||||
91E381451B97671E00F69B81 /* town_write.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = town_write.cpp; sourceTree = "<group>"; };
|
||||
91E381471B97675900F69B81 /* talk_write.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = talk_write.cpp; sourceTree = "<group>"; };
|
||||
91E381491B97678D00F69B81 /* out_write.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = out_write.cpp; sourceTree = "<group>"; };
|
||||
91E5C5A10F9EACE200C21460 /* oldstructs.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = oldstructs.hpp; path = ../oldstructs.hpp; sourceTree = "<group>"; };
|
||||
91E5C5A10F9EACE200C21460 /* oldstructs.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = oldstructs.hpp; sourceTree = "<group>"; };
|
||||
91E5C7970F9F60EC00C21460 /* town.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = town.hpp; sourceTree = "<group>"; };
|
||||
91E5C7980F9F60EC00C21460 /* town.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = town.cpp; sourceTree = "<group>"; };
|
||||
91E5C79C0F9F60FA00C21460 /* outdoors.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = outdoors.hpp; sourceTree = "<group>"; };
|
||||
@@ -891,9 +928,8 @@
|
||||
2BF04A9F0BF51845006C0831 = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
91279BAB0F9CFB18007B0D52 /* classes */,
|
||||
91B3F0FF0F97797200BF5B67 /* tools */,
|
||||
91B3EF380F969E4A00BF5B67 /* osx */,
|
||||
91279BAB0F9CFB18007B0D52 /* common */,
|
||||
91B3EF380F969E4A00BF5B67 /* Game */,
|
||||
91B3EEF90F969BBD00BF5B67 /* CharEd */,
|
||||
91B3EECD0F969B7000BF5B67 /* ScenEd */,
|
||||
91CC17281B421BD5003D9A69 /* test */,
|
||||
@@ -906,57 +942,56 @@
|
||||
910BBA130FB8BE66001E34EA /* dialogxml */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
910BBA190FB8C43E001E34EA /* xml-parser */,
|
||||
910BBA140FB8BE7D001E34EA /* headers */,
|
||||
910BBA150FB8BE88001E34EA /* src */,
|
||||
910BBA140FB8BE7D001E34EA /* widgets */,
|
||||
910BBA150FB8BE88001E34EA /* dialogs */,
|
||||
);
|
||||
path = dialogxml;
|
||||
sourceTree = SOURCE_ROOT;
|
||||
};
|
||||
910BBA140FB8BE7D001E34EA /* headers */ = {
|
||||
910BBA140FB8BE7D001E34EA /* widgets */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
91E128F21BC2077600C8BE1D /* 3choice.hpp */,
|
||||
91A32BD10FDB797B00C4E957 /* basicbtns.cpp */,
|
||||
910BBA890FB8EC57001E34EA /* button.cpp */,
|
||||
910BBA3C0FB8DA8E001E34EA /* control.cpp */,
|
||||
910BBAB50FB91A26001E34EA /* field.cpp */,
|
||||
910BBAB90FB91ADB001E34EA /* message.cpp */,
|
||||
910BBAA90FB8F733001E34EA /* pict.cpp */,
|
||||
9191460018E63D8E005CF3A4 /* scrollbar.cpp */,
|
||||
919B13A81BBE2B54009905A4 /* scrollpane.cpp */,
|
||||
9179A4641A48681800FEF872 /* stack.cpp */,
|
||||
910BBA880FB8EC57001E34EA /* button.hpp */,
|
||||
91E128F31BC2077700C8BE1D /* choicedlog.hpp */,
|
||||
910BBA3B0FB8DA8E001E34EA /* control.hpp */,
|
||||
910BBA170FB8BECA001E34EA /* dialog.hpp */,
|
||||
918D59A718EA513900735B66 /* dialog.keys.hpp */,
|
||||
915AF9E91BC04171008AEF49 /* dlogevt.hpp */,
|
||||
910BBAB40FB91A26001E34EA /* field.hpp */,
|
||||
910BBAB80FB91ADB001E34EA /* message.hpp */,
|
||||
910BBAA80FB8F733001E34EA /* pict.hpp */,
|
||||
91E128F41BC2077700C8BE1D /* pictchoice.hpp */,
|
||||
913FB40A1A5C90840067B9D2 /* pictypes.hpp */,
|
||||
919145FD18E3C750005CF3A4 /* scrollbar.hpp */,
|
||||
919B13A71BBE297B009905A4 /* scrollpane.hpp */,
|
||||
9179A4631A4867E200FEF872 /* stack.hpp */,
|
||||
91E128F51BC2077700C8BE1D /* strchoice.hpp */,
|
||||
91E128F61BC2077700C8BE1D /* strdlog.hpp */,
|
||||
);
|
||||
name = headers;
|
||||
path = widgets;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
910BBA150FB8BE88001E34EA /* src */ = {
|
||||
910BBA150FB8BE88001E34EA /* dialogs */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
91E128E81BC2076B00C8BE1D /* 3choice.cpp */,
|
||||
91A32BD10FDB797B00C4E957 /* basicbtns.cpp */,
|
||||
910BBA890FB8EC57001E34EA /* button.cpp */,
|
||||
91E128E91BC2076B00C8BE1D /* choicedlog.cpp */,
|
||||
910BBA3C0FB8DA8E001E34EA /* control.cpp */,
|
||||
910BBA180FB8BECA001E34EA /* dialog.cpp */,
|
||||
910BBAB50FB91A26001E34EA /* field.cpp */,
|
||||
910BBAB90FB91ADB001E34EA /* message.cpp */,
|
||||
910BBAA90FB8F733001E34EA /* pict.cpp */,
|
||||
91E128EA1BC2076B00C8BE1D /* pictchoice.cpp */,
|
||||
9191460018E63D8E005CF3A4 /* scrollbar.cpp */,
|
||||
919B13A81BBE2B54009905A4 /* scrollpane.cpp */,
|
||||
9179A4641A48681800FEF872 /* stack.cpp */,
|
||||
91E128EB1BC2076B00C8BE1D /* strchoice.cpp */,
|
||||
91E128EC1BC2076B00C8BE1D /* strdlog.cpp */,
|
||||
91E128F21BC2077600C8BE1D /* 3choice.hpp */,
|
||||
91E128F31BC2077700C8BE1D /* choicedlog.hpp */,
|
||||
910BBA170FB8BECA001E34EA /* dialog.hpp */,
|
||||
918D59A718EA513900735B66 /* dialog.keys.hpp */,
|
||||
915AF9E91BC04171008AEF49 /* dlogevt.hpp */,
|
||||
91E128F41BC2077700C8BE1D /* pictchoice.hpp */,
|
||||
91E128F51BC2077700C8BE1D /* strchoice.hpp */,
|
||||
91E128F61BC2077700C8BE1D /* strdlog.hpp */,
|
||||
);
|
||||
name = src;
|
||||
path = dialogs;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
910BBA190FB8C43E001E34EA /* xml-parser */ = {
|
||||
@@ -990,128 +1025,34 @@
|
||||
name = Products;
|
||||
sourceTree = BUILT_PRODUCTS_DIR;
|
||||
};
|
||||
91279BAB0F9CFB18007B0D52 /* classes */ = {
|
||||
91279BAB0F9CFB18007B0D52 /* common */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
913D03330FA0FFE800184C18 /* headers */,
|
||||
913D03320FA0FFE700184C18 /* src */,
|
||||
91E5C5A10F9EACE200C21460 /* oldstructs.hpp */,
|
||||
915325161A2E1DA8000A9A1C /* oldstructs.cpp */,
|
||||
910BBA130FB8BE66001E34EA /* dialogxml */,
|
||||
9185BDA31EA044790027C346 /* fileio */,
|
||||
9185BDA21EA042BE0027C346 /* gfx */,
|
||||
9185BDA41EA053E00027C346 /* misc */,
|
||||
9185BD941EA01BCC0027C346 /* scenario */,
|
||||
9185BDA11EA041570027C346 /* tools */,
|
||||
9185BD931EA01BB50027C346 /* universe */,
|
||||
);
|
||||
path = classes;
|
||||
name = common;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
912DFE8718E24B0B00B00D75 /* resmgr */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
912DFE8918E24B4C00B00D75 /* resmgr.hpp */,
|
||||
91960ED31BB613E5008AF8F4 /* restypes.cpp */,
|
||||
912DFE8A18E24B4C00B00D75 /* restypes.hpp */,
|
||||
9185BDA51EA055180027C346 /* res_cursor.hpp */,
|
||||
9185BDA61EA055180027C346 /* res_font.hpp */,
|
||||
912DFE8A18E24B4C00B00D75 /* res_image.hpp */,
|
||||
9185BDA71EA055180027C346 /* res_sound.hpp */,
|
||||
9185BDA81EA055180027C346 /* res_strings.hpp */,
|
||||
912DFE8918E24B4C00B00D75 /* resmgr.hpp */,
|
||||
);
|
||||
path = resmgr;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
913D03320FA0FFE700184C18 /* src */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
91AC620A0FA2853700EEAE67 /* creatlist.cpp */,
|
||||
914698FE1A747C4500F20F5E /* creature.cpp */,
|
||||
91E1862B1B2B2AC0006A99EA /* estreams.cpp */,
|
||||
91279D3D0F9D1D6A007B0D52 /* item.cpp */,
|
||||
914698FB1A7362D900F20F5E /* living.cpp */,
|
||||
91279BE10F9D0F73007B0D52 /* location.cpp */,
|
||||
91279CC10F9D19DA007B0D52 /* monster.cpp */,
|
||||
91E5C79D0F9F60FA00C21460 /* outdoors.cpp */,
|
||||
913D05B50FA1E9E300184C18 /* party.cpp */,
|
||||
913D05BB0FA1EA0A00184C18 /* pc.cpp */,
|
||||
91279C580F9D1253007B0D52 /* scenario.cpp */,
|
||||
91FDB5791A4E774E00DE5983 /* shop.cpp */,
|
||||
91279CC60F9D1A02007B0D52 /* special.cpp */,
|
||||
91597A6E1A3BEDC700BE7BF9 /* spell.cpp */,
|
||||
91E5C7B70F9F619D00C21460 /* talking.cpp */,
|
||||
91279C660F9D12D6007B0D52 /* terrain.cpp */,
|
||||
91E5C7980F9F60EC00C21460 /* town.cpp */,
|
||||
91AC607F0FA26A3B00EEAE67 /* town_import.tpp */,
|
||||
91AC61C50FA2729900EEAE67 /* universe.cpp */,
|
||||
91279C750F9D15E5007B0D52 /* vehicle.cpp */,
|
||||
);
|
||||
name = src;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
913D03330FA0FFE800184C18 /* headers */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
91AC607E0FA26A3B00EEAE67 /* area.hpp */,
|
||||
91AC62090FA2853700EEAE67 /* creatlist.hpp */,
|
||||
914698FD1A747BED00F20F5E /* creature.hpp */,
|
||||
91279D3C0F9D1D6A007B0D52 /* item.hpp */,
|
||||
914698FA1A7362C200F20F5E /* living.hpp */,
|
||||
91279BE00F9D0F73007B0D52 /* location.hpp */,
|
||||
91279CC00F9D19DA007B0D52 /* monster.hpp */,
|
||||
91E5C79C0F9F60FA00C21460 /* outdoors.hpp */,
|
||||
913D05B40FA1E9E200184C18 /* party.hpp */,
|
||||
913D05BA0FA1EA0A00184C18 /* pc.hpp */,
|
||||
91279C570F9D1253007B0D52 /* scenario.hpp */,
|
||||
91FDB5771A4E71A900DE5983 /* shop.hpp */,
|
||||
912287850FD41A2300B21642 /* simpletypes.hpp */,
|
||||
91279CC50F9D1A02007B0D52 /* special.hpp */,
|
||||
91597A6C1A3BED2D00BE7BF9 /* spell.hpp */,
|
||||
91E5C7B60F9F619D00C21460 /* talking.hpp */,
|
||||
91279C650F9D12D6007B0D52 /* terrain.hpp */,
|
||||
91E5C7970F9F60EC00C21460 /* town.hpp */,
|
||||
91AC61C40FA2729900EEAE67 /* universe.hpp */,
|
||||
91279C740F9D15E4007B0D52 /* vehicle.hpp */,
|
||||
);
|
||||
name = headers;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
913D03340FA0FFFF00184C18 /* src */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
91C688E70FD702B9000F6D01 /* cursors.mac.mm */,
|
||||
91E30F2D1A7481C20057C54A /* fileio.cpp */,
|
||||
91E30F2A1A74819B0057C54A /* fileio_party.cpp */,
|
||||
91E5C7A60F9F615400C21460 /* fileio_scen.cpp */,
|
||||
91B3F10A0F9779C300BF5B67 /* graphtool.cpp */,
|
||||
915E09081A316D89008BDF00 /* map_parse.cpp */,
|
||||
91A0B15A1900F73E00EF438F /* mask.frag */,
|
||||
91BFA3D61901B024001686E4 /* mask.vert */,
|
||||
91B3F11E0F97801F00BF5B67 /* mathutil.cpp */,
|
||||
913D005A0F9FEEC200184C18 /* porting.cpp */,
|
||||
91EC481018FBABB100BB1E86 /* prefs.mac.mm */,
|
||||
91F6F8F518F8DE6300E3EA15 /* qdpict.mac.cpp */,
|
||||
91B3F10F0F9779D000BF5B67 /* soundtool.cpp */,
|
||||
915325181A2E37EE000A9A1C /* specials_parse.cpp */,
|
||||
91BFA3D81902AD78001686E4 /* tarball.cpp */,
|
||||
912283C80FD0E16C00B21642 /* undo.cpp */,
|
||||
91B0D5D01E34428E002BE4DA /* view_dialogs.cpp */,
|
||||
919145FF18E63B70005CF3A4 /* winutil.mac.mm */,
|
||||
);
|
||||
name = src;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
913D03350FA1000200184C18 /* headers */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
91C688E60FD702B9000F6D01 /* cursors.hpp */,
|
||||
91E5C7A50F9F615400C21460 /* fileio.hpp */,
|
||||
91C2A6E21B8244F700346948 /* gitrev.hpp */,
|
||||
91B3F1090F9779C300BF5B67 /* graphtool.hpp */,
|
||||
915E09071A316D6A008BDF00 /* map_parse.hpp */,
|
||||
91B3F11D0F97801F00BF5B67 /* mathutil.hpp */,
|
||||
913D00590F9FEEC200184C18 /* porting.hpp */,
|
||||
91EC480E18FBAA8700BB1E86 /* prefs.hpp */,
|
||||
91B3F10E0F9779D000BF5B67 /* soundtool.hpp */,
|
||||
91F06E8F1A2EBEE70038E902 /* special_parse.hpp */,
|
||||
91BFA3D91902ADD5001686E4 /* tarball.hpp */,
|
||||
917B573F100B956C0096C978 /* undo.hpp */,
|
||||
9179A4621A47D4E200FEF872 /* vector2d.hpp */,
|
||||
91B0D5D31E3446CF002BE4DA /* view_dialogs.hpp */,
|
||||
919145FE18E63B41005CF3A4 /* winutil.hpp */,
|
||||
);
|
||||
name = headers;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
914B2AA018E7E4A3007B6799 /* Linked Frameworks */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
@@ -1137,6 +1078,147 @@
|
||||
name = "Linked Frameworks";
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
9185BD931EA01BB50027C346 /* universe */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
914698FE1A747C4500F20F5E /* creature.cpp */,
|
||||
914698FB1A7362D900F20F5E /* living.cpp */,
|
||||
913D05B50FA1E9E300184C18 /* party.cpp */,
|
||||
913D05BB0FA1EA0A00184C18 /* pc.cpp */,
|
||||
91AC620A0FA2853700EEAE67 /* population.cpp */,
|
||||
91AC61C50FA2729900EEAE67 /* universe.cpp */,
|
||||
914698FD1A747BED00F20F5E /* creature.hpp */,
|
||||
914698FA1A7362C200F20F5E /* living.hpp */,
|
||||
913D05B40FA1E9E200184C18 /* party.hpp */,
|
||||
913D05BA0FA1EA0A00184C18 /* pc.hpp */,
|
||||
91AC62090FA2853700EEAE67 /* population.hpp */,
|
||||
91AC61C40FA2729900EEAE67 /* universe.hpp */,
|
||||
);
|
||||
path = universe;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
9185BD941EA01BCC0027C346 /* scenario */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
91279D3D0F9D1D6A007B0D52 /* item.cpp */,
|
||||
91279CC10F9D19DA007B0D52 /* monster.cpp */,
|
||||
91E5C79D0F9F60FA00C21460 /* outdoors.cpp */,
|
||||
91279C580F9D1253007B0D52 /* scenario.cpp */,
|
||||
91FDB5791A4E774E00DE5983 /* shop.cpp */,
|
||||
91279CC60F9D1A02007B0D52 /* special.cpp */,
|
||||
91E5C7B70F9F619D00C21460 /* talking.cpp */,
|
||||
91279C660F9D12D6007B0D52 /* terrain.cpp */,
|
||||
91E5C7980F9F60EC00C21460 /* town.cpp */,
|
||||
91279C750F9D15E5007B0D52 /* vehicle.cpp */,
|
||||
91AC607E0FA26A3B00EEAE67 /* area.hpp */,
|
||||
91279D3C0F9D1D6A007B0D52 /* item.hpp */,
|
||||
9185BD9D1EA02C320027C346 /* item_abilities.hpp */,
|
||||
9185BD9E1EA02C3D0027C346 /* item_variety.hpp */,
|
||||
91279CC00F9D19DA007B0D52 /* monster.hpp */,
|
||||
9185BD951EA020B70027C346 /* monster_abilities.hpp */,
|
||||
91E5C79C0F9F60FA00C21460 /* outdoors.hpp */,
|
||||
9185BD9F1EA02E5C0027C346 /* quest.hpp */,
|
||||
91279C570F9D1253007B0D52 /* scenario.hpp */,
|
||||
91FDB5771A4E71A900DE5983 /* shop.hpp */,
|
||||
91279CC50F9D1A02007B0D52 /* special.hpp */,
|
||||
91E5C7B60F9F619D00C21460 /* talking.hpp */,
|
||||
91279C650F9D12D6007B0D52 /* terrain.hpp */,
|
||||
9185BD9C1EA02BA20027C346 /* terrain_abilities.hpp */,
|
||||
91E5C7970F9F60EC00C21460 /* town.hpp */,
|
||||
91AC607F0FA26A3B00EEAE67 /* town_import.tpp */,
|
||||
91279C740F9D15E4007B0D52 /* vehicle.hpp */,
|
||||
);
|
||||
path = scenario;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
9185BDA11EA041570027C346 /* tools */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
91C688E70FD702B9000F6D01 /* cursors.mac.mm */,
|
||||
91EC481018FBABB100BB1E86 /* prefs.mac.mm */,
|
||||
912283C80FD0E16C00B21642 /* undo.cpp */,
|
||||
919145FF18E63B70005CF3A4 /* winutil.mac.mm */,
|
||||
91C688E60FD702B9000F6D01 /* cursors.hpp */,
|
||||
91C2A6E21B8244F700346948 /* gitrev.hpp */,
|
||||
91EC480E18FBAA8700BB1E86 /* prefs.hpp */,
|
||||
917B573F100B956C0096C978 /* undo.hpp */,
|
||||
9179A4621A47D4E200FEF872 /* vector2d.hpp */,
|
||||
919145FE18E63B41005CF3A4 /* winutil.hpp */,
|
||||
91C2A6E11B823CCD00346948 /* gitrev.sh */,
|
||||
);
|
||||
path = tools;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
9185BDA21EA042BE0027C346 /* gfx */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
91CE24911EA12ABB005BDCE4 /* gfxsheets.cpp */,
|
||||
91F6F8F518F8DE6300E3EA15 /* qdpict.mac.cpp */,
|
||||
91B3F10A0F9779C300BF5B67 /* render_image.cpp */,
|
||||
91CE248D1EA12AA0005BDCE4 /* render_shapes.cpp */,
|
||||
91CE248B1EA12A91005BDCE4 /* render_text.cpp */,
|
||||
91CE248F1EA12AAD005BDCE4 /* tiling.cpp */,
|
||||
91CE24841EA124E4005BDCE4 /* gfxsheets.hpp */,
|
||||
91B3F1090F9779C300BF5B67 /* render_image.hpp */,
|
||||
91CE24871EA12620005BDCE4 /* render_shapes.hpp */,
|
||||
91CE24851EA12534005BDCE4 /* render_text.hpp */,
|
||||
91CE24861EA12595005BDCE4 /* tiling.hpp */,
|
||||
91A0B15A1900F73E00EF438F /* mask.frag */,
|
||||
91BFA3D61901B024001686E4 /* mask.vert */,
|
||||
);
|
||||
path = gfx;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
9185BDA31EA044790027C346 /* fileio */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
91E1862B1B2B2AC0006A99EA /* estreams.cpp */,
|
||||
91E30F2D1A7481C20057C54A /* fileio.cpp */,
|
||||
91E30F2A1A74819B0057C54A /* fileio_party.cpp */,
|
||||
91E5C7A60F9F615400C21460 /* fileio_scen.cpp */,
|
||||
915E09081A316D89008BDF00 /* map_parse.cpp */,
|
||||
915325181A2E37EE000A9A1C /* special_parse.cpp */,
|
||||
91BFA3D81902AD78001686E4 /* tarball.cpp */,
|
||||
91E5C7A50F9F615400C21460 /* fileio.hpp */,
|
||||
915E09071A316D6A008BDF00 /* map_parse.hpp */,
|
||||
91F06E8F1A2EBEE70038E902 /* special_parse.hpp */,
|
||||
91BFA3D91902ADD5001686E4 /* tarball.hpp */,
|
||||
91BFA3DC19033E00001686E4 /* gzstream */,
|
||||
912DFE8718E24B0B00B00D75 /* resmgr */,
|
||||
910BBA190FB8C43E001E34EA /* xml-parser */,
|
||||
);
|
||||
path = fileio;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
9185BDA41EA053E00027C346 /* misc */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
91279BE10F9D0F73007B0D52 /* location.cpp */,
|
||||
91B3F11E0F97801F00BF5B67 /* mathutil.cpp */,
|
||||
915325161A2E1DA8000A9A1C /* oldstructs.cpp */,
|
||||
913D005A0F9FEEC200184C18 /* porting.cpp */,
|
||||
91B3F10F0F9779D000BF5B67 /* sounds.cpp */,
|
||||
91597A6E1A3BEDC700BE7BF9 /* spell.cpp */,
|
||||
91CE24891EA1284B005BDCE4 /* utility.cpp */,
|
||||
91B0D5D01E34428E002BE4DA /* view_dialogs.cpp */,
|
||||
9185BD9B1EA02B8F0027C346 /* alchemy.hpp */,
|
||||
9185BD961EA0234A0027C346 /* damage.hpp */,
|
||||
9185BD991EA027B80027C346 /* fields.hpp */,
|
||||
9185BDA01EA02FF80027C346 /* global.hpp */,
|
||||
91279BE00F9D0F73007B0D52 /* location.hpp */,
|
||||
91B3F11D0F97801F00BF5B67 /* mathutil.hpp */,
|
||||
91E5C5A10F9EACE200C21460 /* oldstructs.hpp */,
|
||||
913D00590F9FEEC200184C18 /* porting.hpp */,
|
||||
9185BD971EA025720027C346 /* race.hpp */,
|
||||
9185BD9A1EA02B840027C346 /* skills_traits.hpp */,
|
||||
91B3F10E0F9779D000BF5B67 /* sounds.hpp */,
|
||||
91597A6C1A3BED2D00BE7BF9 /* spell.hpp */,
|
||||
91CE24881EA127EC005BDCE4 /* utility.hpp */,
|
||||
91B0D5D31E3446CF002BE4DA /* view_dialogs.hpp */,
|
||||
);
|
||||
name = misc;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
91B3EECD0F969B7000BF5B67 /* ScenEd */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
@@ -1258,27 +1340,15 @@
|
||||
path = ../rsrc;
|
||||
sourceTree = SOURCE_ROOT;
|
||||
};
|
||||
91B3EF380F969E4A00BF5B67 /* osx */ = {
|
||||
91B3EF380F969E4A00BF5B67 /* Game */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
91D62F2C0F8EB7AB00674AB3 /* src */,
|
||||
91D62F2D0F8EB7BA00674AB3 /* headers */,
|
||||
91D62F2E0F8EB80200674AB3 /* rsrc */,
|
||||
);
|
||||
name = osx;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
91B3F0FF0F97797200BF5B67 /* tools */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
91C2A6E11B823CCD00346948 /* gitrev.sh */,
|
||||
91BFA3DC19033E00001686E4 /* gzstream */,
|
||||
912DFE8718E24B0B00B00D75 /* resmgr */,
|
||||
910BBA130FB8BE66001E34EA /* dialogxml */,
|
||||
913D03350FA1000200184C18 /* headers */,
|
||||
913D03340FA0FFFF00184C18 /* src */,
|
||||
);
|
||||
path = tools;
|
||||
name = Game;
|
||||
path = game;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
91BFA3DC19033E00001686E4 /* gzstream */ = {
|
||||
@@ -1765,7 +1835,7 @@
|
||||
isa = PBXSourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
919CC2481B3772F300273FDA /* creatlist.cpp in Sources */,
|
||||
919CC2481B3772F300273FDA /* population.cpp in Sources */,
|
||||
919CC2491B3772FB00273FDA /* creature.cpp in Sources */,
|
||||
919CC24C1B37730900273FDA /* living.cpp in Sources */,
|
||||
919CC2501B37731D00273FDA /* party.cpp in Sources */,
|
||||
@@ -1811,14 +1881,14 @@
|
||||
919CC2711B3773F300273FDA /* cursors.mac.mm in Sources */,
|
||||
919CC2721B3773F800273FDA /* fileio.cpp in Sources */,
|
||||
919CC2741B37740200273FDA /* fileio_scen.cpp in Sources */,
|
||||
919CC2751B37740A00273FDA /* graphtool.cpp in Sources */,
|
||||
919CC2751B37740A00273FDA /* render_image.cpp in Sources */,
|
||||
919CC2761B37741000273FDA /* mathutil.cpp in Sources */,
|
||||
919CC2771B37741500273FDA /* map_parse.cpp in Sources */,
|
||||
919CC2781B37741A00273FDA /* porting.cpp in Sources */,
|
||||
919CC2791B37742200273FDA /* prefs.mac.mm in Sources */,
|
||||
919CC27A1B37742800273FDA /* qdpict.mac.cpp in Sources */,
|
||||
919CC27B1B37742D00273FDA /* soundtool.cpp in Sources */,
|
||||
919CC27C1B37743200273FDA /* specials_parse.cpp in Sources */,
|
||||
919CC27B1B37742D00273FDA /* sounds.cpp in Sources */,
|
||||
919CC27C1B37743200273FDA /* special_parse.cpp in Sources */,
|
||||
919CC27D1B37743700273FDA /* tarball.cpp in Sources */,
|
||||
919CC27E1B37743B00273FDA /* undo.cpp in Sources */,
|
||||
919CC27F1B37744000273FDA /* winutil.mac.mm in Sources */,
|
||||
@@ -1830,6 +1900,11 @@
|
||||
91E128EF1BC2076B00C8BE1D /* pictchoice.cpp in Sources */,
|
||||
91E128F01BC2076B00C8BE1D /* strchoice.cpp in Sources */,
|
||||
91E128F11BC2076B00C8BE1D /* strdlog.cpp in Sources */,
|
||||
91CE248A1EA12866005BDCE4 /* utility.cpp in Sources */,
|
||||
91CE248C1EA12A96005BDCE4 /* render_text.cpp in Sources */,
|
||||
91CE248E1EA12AA3005BDCE4 /* render_shapes.cpp in Sources */,
|
||||
91CE24921EA12ABD005BDCE4 /* gfxsheets.cpp in Sources */,
|
||||
91CE24931EA12AC9005BDCE4 /* tiling.cpp in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@@ -1944,6 +2019,11 @@
|
||||
target = 919CC22C1B37721400273FDA /* Common-Party */;
|
||||
targetProxy = 9169C3081B379E8B0041002B /* PBXContainerItemProxy */;
|
||||
};
|
||||
9185BDAA1EA06A150027C346 /* PBXTargetDependency */ = {
|
||||
isa = PBXTargetDependency;
|
||||
target = 91CC172C1B421C0A003D9A69 /* boe_test */;
|
||||
targetProxy = 9185BDA91EA06A150027C346 /* PBXContainerItemProxy */;
|
||||
};
|
||||
91BC33941B4390E40008882C /* PBXTargetDependency */ = {
|
||||
isa = PBXTargetDependency;
|
||||
target = 919CC23A1B3772B700273FDA /* Common */;
|
||||
@@ -1987,6 +2067,7 @@
|
||||
GCC_INLINES_ARE_PRIVATE_EXTERN = NO;
|
||||
GCC_INPUT_FILETYPE = automatic;
|
||||
GCC_OPTIMIZATION_LEVEL = 0;
|
||||
GCC_PREFIX_HEADER = global.hpp;
|
||||
GCC_PREPROCESSOR_DEFINITIONS = TIXML_USE_TICPP;
|
||||
GCC_SYMBOLS_PRIVATE_EXTERN = NO;
|
||||
GCC_WARN_ABOUT_DEPRECATED_FUNCTIONS = NO;
|
||||
@@ -2049,6 +2130,7 @@
|
||||
GCC_ENABLE_PASCAL_STRINGS = NO;
|
||||
GCC_INLINES_ARE_PRIVATE_EXTERN = NO;
|
||||
GCC_INPUT_FILETYPE = automatic;
|
||||
GCC_PREFIX_HEADER = global.hpp;
|
||||
GCC_PREPROCESSOR_DEFINITIONS = TIXML_USE_TICPP;
|
||||
GCC_SYMBOLS_PRIVATE_EXTERN = NO;
|
||||
GCC_WARN_ABOUT_DEPRECATED_FUNCTIONS = NO;
|
||||
@@ -2108,8 +2190,6 @@
|
||||
"-lboost_system",
|
||||
"-lboost_filesystem",
|
||||
"$(OTHER_LDFLAGS_QUOTED_FOR_PROJECT_1)",
|
||||
"-lCommon",
|
||||
"-lCommon-Party",
|
||||
);
|
||||
PRODUCT_NAME = "Blades of Exile";
|
||||
WRAPPER_EXTENSION = app;
|
||||
@@ -2132,8 +2212,6 @@
|
||||
"-lboost_system",
|
||||
"-lboost_filesystem",
|
||||
"$(OTHER_LDFLAGS_QUOTED_FOR_PROJECT_1)",
|
||||
"-lCommon",
|
||||
"-lCommon-Party",
|
||||
);
|
||||
PRODUCT_NAME = "Blades of Exile";
|
||||
WRAPPER_EXTENSION = app;
|
||||
@@ -2217,8 +2295,6 @@
|
||||
"-lboost_system",
|
||||
"-lboost_filesystem",
|
||||
"$(OTHER_LDFLAGS_QUOTED_FOR_PROJECT_1)",
|
||||
"-lCommon-Party",
|
||||
"-lCommon",
|
||||
);
|
||||
OTHER_LDFLAGS_QUOTED_FOR_TARGET_1 = "-L\"$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/\"";
|
||||
PRODUCT_NAME = "BoE Character Editor";
|
||||
@@ -2242,8 +2318,6 @@
|
||||
"-lboost_system",
|
||||
"-lboost_filesystem",
|
||||
"$(OTHER_LDFLAGS_QUOTED_FOR_PROJECT_1)",
|
||||
"-lCommon-Party",
|
||||
"-lCommon",
|
||||
);
|
||||
OTHER_LDFLAGS_QUOTED_FOR_TARGET_1 = "-L\"$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/\"";
|
||||
PRODUCT_NAME = "BoE Character Editor";
|
||||
@@ -2311,8 +2385,6 @@
|
||||
"-lboost_system",
|
||||
"-lboost_filesystem",
|
||||
"$(OTHER_LDFLAGS_QUOTED_FOR_PROJECT_1)",
|
||||
"-lCommon",
|
||||
"-lCommon-Party",
|
||||
);
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
};
|
||||
|
36
src/alchemy.hpp
Normal file
36
src/alchemy.hpp
Normal file
@@ -0,0 +1,36 @@
|
||||
//
|
||||
// alchemy.hpp
|
||||
// BoE
|
||||
//
|
||||
// Created by Celtic Minstrel on 17-04-13.
|
||||
//
|
||||
//
|
||||
|
||||
#ifndef BoE_ALCHEMY_HPP
|
||||
#define BoE_ALCHEMY_HPP
|
||||
|
||||
enum class eAlchemy {
|
||||
NONE = -1,
|
||||
CURE_WEAK = 0,
|
||||
HEAL_WEAK = 1,
|
||||
POISON_WEAK = 2,
|
||||
SPEED_WEAK = 3,
|
||||
POISON_MED = 4,
|
||||
HEAL_MED = 5,
|
||||
CURE_STRONG = 6,
|
||||
SPEED_MED = 7,
|
||||
GRAYMOLD = 8,
|
||||
POWER_WEAK = 9,
|
||||
CLARITY = 10,
|
||||
POISON_STRONG = 11,
|
||||
HEAL_STRONG = 12,
|
||||
POISON_KILL = 13,
|
||||
RESURRECT = 14,
|
||||
POWER_MED = 15,
|
||||
KNOWLEDGE = 16,
|
||||
STRENGTH = 17,
|
||||
BLISS = 18,
|
||||
POWER_STRONG = 19,
|
||||
};
|
||||
|
||||
#endif
|
@@ -1,178 +0,0 @@
|
||||
/*
|
||||
* monster.h
|
||||
* BoE
|
||||
*
|
||||
* Created by Celtic Minstrel on 20/04/09.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef BOE_DATA_MONSTER_H
|
||||
#define BOE_DATA_MONSTER_H
|
||||
|
||||
#include <string>
|
||||
#include <map>
|
||||
#include <array>
|
||||
#include <iosfwd>
|
||||
|
||||
#include "soundtool.hpp"
|
||||
#include "simpletypes.hpp"
|
||||
#include "graphtool.hpp"
|
||||
#include "living.hpp"
|
||||
#include "spell.hpp"
|
||||
|
||||
namespace legacy {
|
||||
struct monster_record_type;
|
||||
struct creature_data_type;
|
||||
struct creature_start_type;
|
||||
};
|
||||
|
||||
class cScenario;
|
||||
class cUniverse;
|
||||
|
||||
enum class eMonstAbilTemplate {
|
||||
// Non-magical missiles
|
||||
THROWS_DARTS, SHOOTS_ARROWS, THROWS_SPEARS, THROWS_ROCKS1, THROWS_ROCKS2, THROWS_ROCKS3,
|
||||
THROWS_RAZORDISKS, THROWS_KNIVES, GOOD_ARCHER, SHOOTS_SPINES, CROSSBOWMAN, SLINGER,
|
||||
// Magical missiles
|
||||
RAY_PETRIFY, RAY_SP_DRAIN, RAY_HEAT, RAY_PARALYSIS,
|
||||
BREATH_FIRE, BREATH_FROST, BREATH_ELECTRICITY, BREATH_DARKNESS, BREATH_FOUL, BREATH_SLEEP,
|
||||
SPIT_ACID, SHOOTS_WEB,
|
||||
// Touch abilities
|
||||
TOUCH_POISON, TOUCH_ACID, TOUCH_DISEASE, TOUCH_WEB, TOUCH_SLEEP, TOUCH_DUMB, TOUCH_PARALYSIS,
|
||||
TOUCH_PETRIFY, TOUCH_DEATH, TOUCH_XP_DRAIN, TOUCH_ICY, TOUCH_ICY_DRAINING, TOUCH_STUN, TOUCH_STEAL_FOOD, TOUCH_STEAL_GOLD,
|
||||
// Misc abilities
|
||||
SPLITS, MARTYRS_SHIELD, ABSORB_SPELLS, SUMMON_5, SUMMON_20, SUMMON_50, SPECIAL, HIT_TRIGGERS, DEATH_TRIGGERS,
|
||||
// Radiate abilities
|
||||
RADIATE_FIRE, RADIATE_ICE, RADIATE_SHOCK, RADIATE_ANTIMAGIC, RADIATE_SLEEP, RADIATE_STINK, RADIATE_BLADE, RADIATE_WEB,
|
||||
// Advanced abilities
|
||||
CUSTOM_MISSILE, CUSTOM_DAMAGE, CUSTOM_STATUS, CUSTOM_FIELD, CUSTOM_PETRIFY, CUSTOM_SP_DRAIN, CUSTOM_XP_DRAIN,
|
||||
CUSTOM_KILL, CUSTOM_STEAL_FOOD, CUSTOM_STEAL_GOLD, CUSTOM_STUN, CUSTOM_STATUS2, CUSTOM_RADIATE, CUSTOM_SUMMON,
|
||||
CUSTOM_DAMAGE2,
|
||||
};
|
||||
|
||||
union uAbility {
|
||||
bool active;
|
||||
struct {
|
||||
bool active;
|
||||
eMonstMissile type;
|
||||
miss_num_t pic;
|
||||
int dice, sides, skill, range, odds;
|
||||
} missile;
|
||||
struct {
|
||||
bool active;
|
||||
eMonstGen type;
|
||||
miss_num_t pic;
|
||||
int strength, range, odds;
|
||||
union {
|
||||
eDamageType dmg;
|
||||
eStatus stat;
|
||||
eFieldType fld;
|
||||
};
|
||||
} gen;
|
||||
struct {
|
||||
bool active;
|
||||
eMonstSummon type;
|
||||
mon_num_t what;
|
||||
int min, max, len, chance;
|
||||
} summon;
|
||||
struct {
|
||||
bool active;
|
||||
eFieldType type;
|
||||
int chance;
|
||||
eSpellPat pat;
|
||||
} radiate;
|
||||
struct {
|
||||
bool active;
|
||||
int extra1, extra2, extra3;
|
||||
} special;
|
||||
std::string to_string(eMonstAbil myKey) const;
|
||||
int get_ap_cost(eMonstAbil key) const;
|
||||
};
|
||||
|
||||
class cMonster {
|
||||
public:
|
||||
struct cAttack{
|
||||
unsigned short dice = 0, sides = 0;
|
||||
eMonstMelee type = eMonstMelee::SWING;
|
||||
};
|
||||
unsigned int level;
|
||||
std::string m_name;
|
||||
short m_health;
|
||||
unsigned int armor;
|
||||
unsigned int skill;
|
||||
std::array<cAttack, 3> a;
|
||||
eRace m_type;
|
||||
unsigned int speed;
|
||||
unsigned int mu;
|
||||
unsigned int cl;
|
||||
unsigned int treasure;
|
||||
// HACK: This is only really marked mutable so that I can use operator[] from const methods
|
||||
mutable std::map<eMonstAbil, uAbility> abil;
|
||||
item_num_t corpse_item;
|
||||
short corpse_item_chance;
|
||||
std::map<eDamageType, int> resist;
|
||||
bool mindless, invuln, invisible, guard, amorphous;
|
||||
unsigned int x_width,y_width;
|
||||
eAttitude default_attitude;
|
||||
unsigned int summon_type;
|
||||
pic_num_t default_facial_pic;
|
||||
pic_num_t picture_num;
|
||||
snd_num_t ambient_sound; // has a chance of being played every move
|
||||
spec_num_t see_spec;
|
||||
|
||||
std::map<eMonstAbil,uAbility>::iterator addAbil(eMonstAbilTemplate what, int param = 0);
|
||||
int addAttack(unsigned short dice, unsigned short sides, eMonstMelee type = eMonstMelee::SWING);
|
||||
|
||||
void import_legacy(legacy::monster_record_type& old);
|
||||
cMonster();
|
||||
void writeTo(std::ostream& file) const;
|
||||
void readFrom(std::istream& file);
|
||||
};
|
||||
|
||||
class cTownperson {
|
||||
public:
|
||||
mon_num_t number;
|
||||
eAttitude start_attitude;
|
||||
location start_loc;
|
||||
unsigned short mobility;
|
||||
eMonstTime time_flag;
|
||||
short spec1, spec2;
|
||||
short spec_enc_code, time_code;
|
||||
short monster_time, personality;
|
||||
short special_on_kill, special_on_talk;
|
||||
pic_num_t facial_pic;
|
||||
|
||||
void import_legacy(legacy::creature_start_type old);
|
||||
cTownperson();
|
||||
cTownperson(location loc, mon_num_t num, const cMonster& monst);
|
||||
};
|
||||
|
||||
std::ostream& operator << (std::ostream& out, eStatus e);
|
||||
std::istream& operator >> (std::istream& in, eStatus& e);
|
||||
std::ostream& operator << (std::ostream& out, eRace e);
|
||||
std::istream& operator >> (std::istream& in, eRace& e);
|
||||
std::ostream& operator << (std::ostream& out, eMonstAbil e);
|
||||
std::istream& operator >> (std::istream& in, eMonstAbil& e);
|
||||
std::ostream& operator << (std::ostream& out, eMonstMissile e);
|
||||
std::istream& operator >> (std::istream& in, eMonstMissile& e);
|
||||
std::ostream& operator << (std::ostream& out, eMonstSummon e);
|
||||
std::istream& operator >> (std::istream& in, eMonstSummon& e);
|
||||
std::ostream& operator << (std::ostream& out, eMonstMelee e);
|
||||
std::istream& operator >> (std::istream& in, eMonstMelee& e);
|
||||
std::ostream& operator << (std::ostream& out, eMonstGen e);
|
||||
std::istream& operator >> (std::istream& in, eMonstGen& e);
|
||||
std::ostream& operator << (std::ostream& out, eDirection e);
|
||||
std::istream& operator >> (std::istream& in, eDirection& e);
|
||||
std::ostream& operator << (std::ostream& out, eDamageType e);
|
||||
std::istream& operator >> (std::istream& in, eDamageType& e);
|
||||
std::ostream& operator << (std::ostream& out, eFieldType e);
|
||||
std::istream& operator >> (std::istream& in, eFieldType& e);
|
||||
std::ostream& operator << (std::ostream& out, eMonstTime e);
|
||||
std::istream& operator >> (std::istream& in, eMonstTime& e);
|
||||
std::ostream& operator<< (std::ostream& out, eAttitude node);
|
||||
std::istream& operator>> (std::istream& in, eAttitude& node);
|
||||
std::ostream& operator<<(std::ostream& out, const cMonster::cAttack& att);
|
||||
std::ostream& operator<< (std::ostream& out, eSpellPat pat);
|
||||
std::istream& operator>> (std::istream& in, eSpellPat& pat);
|
||||
|
||||
#endif
|
File diff suppressed because it is too large
Load Diff
@@ -1,76 +0,0 @@
|
||||
/*
|
||||
* special.h
|
||||
* BoE
|
||||
*
|
||||
* Created by Celtic Minstrel on 20/04/09.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef BOE_DATA_SPECIAL_H
|
||||
#define BOE_DATA_SPECIAL_H
|
||||
|
||||
#include <iosfwd>
|
||||
#include <string>
|
||||
#include <functional>
|
||||
#include "simpletypes.hpp"
|
||||
#include "location.hpp"
|
||||
|
||||
namespace legacy { struct special_node_type; };
|
||||
|
||||
class cSpecial {
|
||||
public:
|
||||
eSpecType type;
|
||||
short sd1;
|
||||
short sd2;
|
||||
short pic;
|
||||
short pictype;
|
||||
short m1;
|
||||
short m2;
|
||||
short m3;
|
||||
short ex1a;
|
||||
short ex1b;
|
||||
short ex1c;
|
||||
short ex2a;
|
||||
short ex2b;
|
||||
short ex2c;
|
||||
short jumpto;
|
||||
|
||||
cSpecial();
|
||||
void import_legacy(legacy::special_node_type& old);
|
||||
void writeTo(std::ostream& file, int n) const;
|
||||
};
|
||||
|
||||
class cTimer {
|
||||
public:
|
||||
long time = 0;
|
||||
short node_type = 0;
|
||||
short node = -1;
|
||||
};
|
||||
|
||||
struct pending_special_type {
|
||||
spec_num_t spec;
|
||||
eSpecCtx mode;
|
||||
unsigned short type; // 0 - scen, 1 - out, 2 - town
|
||||
location where;
|
||||
long long trigger_time;
|
||||
};
|
||||
|
||||
struct node_properties_t {
|
||||
eSpecType self;
|
||||
std::string opcode() const;
|
||||
std::string name() const, descr() const;
|
||||
std::string sdf1_lbl() const, sdf2_lbl() const, sdf1_hlp() const, sdf2_hlp() const;
|
||||
std::string msg1_lbl() const, msg2_lbl() const, msg3_lbl() const, msg1_hlp() const, msg2_hlp() const, msg3_hlp() const;
|
||||
std::string pic_lbl() const, pt_lbl() const, pic_hlp() const, pt_hlp() const;
|
||||
std::string ex1a_lbl() const, ex1b_lbl() const, ex1c_lbl() const, ex1a_hlp() const, ex1b_hlp() const, ex1c_hlp() const;
|
||||
std::string ex2a_lbl() const, ex2b_lbl() const, ex2c_lbl() const, ex2a_hlp() const, ex2b_hlp() const, ex2c_hlp() const;
|
||||
std::string jmp_lbl() const, jmp_hlp() const;
|
||||
char sd1_btn, sd2_btn, m1_btn, m2_btn, m3_btn, p_btn, pt_btn;
|
||||
char x1a_btn, x1b_btn, x1c_btn, x2a_btn, x2b_btn, x2c_btn;
|
||||
node_properties_t() {}
|
||||
node_properties_t(std::initializer_list<std::function<void(node_properties_t)>>);
|
||||
};
|
||||
|
||||
const node_properties_t& operator* (eSpecType t);
|
||||
|
||||
#endif
|
@@ -1,53 +0,0 @@
|
||||
//
|
||||
// spell.hpp
|
||||
// BoE
|
||||
//
|
||||
// Created by Celtic Minstrel on 14-12-12.
|
||||
//
|
||||
//
|
||||
|
||||
#ifndef BoE_DATA_SPELL_HPP
|
||||
#define BoE_DATA_SPELL_HPP
|
||||
|
||||
#include <map>
|
||||
#include "simpletypes.hpp"
|
||||
|
||||
enum eSpellRefer {REFER_YES, REFER_IMMED, REFER_TARGET, REFER_FANCY};
|
||||
enum eSpellSelect {SELECT_NO, SELECT_ACTIVE, SELECT_ANY};
|
||||
// This one is meant for indexing a bit field
|
||||
enum eSpellWhen {WHEN_COMBAT = 1, WHEN_TOWN = 2, WHEN_OUTDOORS = 4};
|
||||
|
||||
enum eSpellPat {PAT_SINGLE, PAT_SQ, PAT_SMSQ, PAT_OPENSQ, PAT_RAD2, PAT_RAD3, PAT_PLUS, PAT_WALL};
|
||||
|
||||
class cSpell {
|
||||
static std::map<eSpell,cSpell> dictionary;
|
||||
friend const cSpell& operator*(eSpell spell_num);
|
||||
public:
|
||||
cSpell() {} // This is just here because the map doesn't work without it
|
||||
cSpell(eSpell id);
|
||||
cSpell& withRefer(eSpellRefer r);
|
||||
cSpell& withCost(int c);
|
||||
cSpell& withRange(int r);
|
||||
cSpell& asLevel(int lvl);
|
||||
cSpell& asType(eSkill type);
|
||||
cSpell& asPeaceful();
|
||||
cSpell& needsSelect(eSpellSelect sel = SELECT_ACTIVE);
|
||||
cSpell& when(eSpellWhen when);
|
||||
const cSpell& finish();
|
||||
eSpell num;
|
||||
eSpellRefer refer;
|
||||
int cost, range, level;
|
||||
eSpellSelect need_select;
|
||||
eSkill type;
|
||||
int when_cast;
|
||||
bool peaceful = false;
|
||||
std::string name() const;
|
||||
bool is_priest() const;
|
||||
static eSpell fromNum(eSkill type, int num);
|
||||
static eSpell fromNum(int num);
|
||||
};
|
||||
|
||||
// Need to declare this a second time in order for it to be in scope where it's needed
|
||||
const cSpell& operator*(eSpell spell_num);
|
||||
|
||||
#endif
|
129
src/damage.hpp
Normal file
129
src/damage.hpp
Normal file
@@ -0,0 +1,129 @@
|
||||
//
|
||||
// damage.hpp
|
||||
// BoE
|
||||
//
|
||||
// Created by Celtic Minstrel on 17-04-13.
|
||||
//
|
||||
//
|
||||
|
||||
#ifndef BoE_DATA_DAMAGE_HPP
|
||||
#define BoE_DATA_DAMAGE_HPP
|
||||
|
||||
enum class eDamageType {
|
||||
WEAPON = 0,
|
||||
FIRE = 1,
|
||||
POISON = 2,
|
||||
MAGIC = 3,
|
||||
UNBLOCKABLE = 4,
|
||||
COLD = 5,
|
||||
UNDEAD = 6,
|
||||
DEMON = 7,
|
||||
// Keep these two last
|
||||
SPECIAL = 8, // Completely unblockable damage from assassination skill
|
||||
MARKED = 10,
|
||||
};
|
||||
|
||||
enum class eStatus {
|
||||
MAIN = -1, // For saved games only
|
||||
POISONED_WEAPON = 0,
|
||||
BLESS_CURSE = 1,
|
||||
POISON = 2,
|
||||
HASTE_SLOW = 3,
|
||||
INVULNERABLE = 4,
|
||||
MAGIC_RESISTANCE = 5,
|
||||
WEBS = 6,
|
||||
DISEASE = 7,
|
||||
INVISIBLE = 8, //sanctuary
|
||||
DUMB = 9,
|
||||
MARTYRS_SHIELD = 10,
|
||||
ASLEEP = 11,
|
||||
PARALYZED = 12,
|
||||
ACID = 13,
|
||||
FORCECAGE = 14,
|
||||
// This one is new
|
||||
// It's not quite a real status effect since it doesn't expire
|
||||
CHARM = 15,
|
||||
};
|
||||
|
||||
inline bool isStatusNegative(eStatus stat) {
|
||||
switch(stat) {
|
||||
case eStatus::MAIN: return false;
|
||||
case eStatus::POISONED_WEAPON: return false;
|
||||
case eStatus::BLESS_CURSE: return false;
|
||||
case eStatus::POISON: return true;
|
||||
case eStatus::HASTE_SLOW: return false;
|
||||
case eStatus::INVULNERABLE: return false;
|
||||
case eStatus::MAGIC_RESISTANCE: return false;
|
||||
case eStatus::WEBS: return true;
|
||||
case eStatus::DISEASE: return true;
|
||||
case eStatus::INVISIBLE: return false;
|
||||
case eStatus::DUMB: return true;
|
||||
case eStatus::MARTYRS_SHIELD: return false;
|
||||
case eStatus::ASLEEP: return true;
|
||||
case eStatus::PARALYZED: return true;
|
||||
case eStatus::ACID: return true;
|
||||
case eStatus::FORCECAGE: return true;
|
||||
case eStatus::CHARM: return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
enum class ePartyStatus {
|
||||
STEALTH,
|
||||
FLIGHT,
|
||||
DETECT_LIFE,
|
||||
FIREWALK,
|
||||
};
|
||||
|
||||
enum class eMainStatus {
|
||||
ABSENT = 0, // absent, empty slot
|
||||
ALIVE = 1,
|
||||
DEAD = 2,
|
||||
DUST = 3,
|
||||
STONE = 4,
|
||||
FLED = 5,
|
||||
SURFACE = 6, // fled to surface?
|
||||
WON = 7,
|
||||
SPLIT = 10,
|
||||
SPLIT_ABSENT = SPLIT + ABSENT,
|
||||
SPLIT_ALIVE = SPLIT + ALIVE,
|
||||
SPLIT_DEAD = SPLIT + DEAD,
|
||||
SPLIT_DUST = SPLIT + DUST,
|
||||
SPLIT_STONE = SPLIT + STONE,
|
||||
SPLIT_FLED = SPLIT + FLED,
|
||||
SPLIT_SURFACE = SPLIT + SURFACE,
|
||||
SPLIT_WON = SPLIT + WON,
|
||||
};
|
||||
|
||||
inline eMainStatus exceptSplit(eMainStatus stat) {
|
||||
if(int(stat) >= 10)
|
||||
return (eMainStatus) (-10 + (int)stat);
|
||||
return stat;
|
||||
}
|
||||
|
||||
inline bool isSplit(eMainStatus stat) {
|
||||
return int(stat) >= 10;
|
||||
}
|
||||
|
||||
inline bool isAbsent(eMainStatus stat) {
|
||||
return stat == eMainStatus::ABSENT || int(stat) > 4;
|
||||
}
|
||||
|
||||
inline bool isDead(eMainStatus stat) {
|
||||
int code = (int) stat;
|
||||
return code > 1 && code < 5;
|
||||
}
|
||||
|
||||
std::ostream& operator << (std::ostream& out, eStatus e);
|
||||
std::istream& operator >> (std::istream& in, eStatus& e);
|
||||
std::istream& operator >> (std::istream& in, ePartyStatus& type);
|
||||
std::ostream& operator << (std::ostream& out, ePartyStatus type);
|
||||
std::ostream& operator << (std::ostream& out, eMainStatus e);
|
||||
std::istream& operator >> (std::istream& in, eMainStatus& e);
|
||||
std::ostream& operator << (std::ostream& out, eDamageType e);
|
||||
std::istream& operator >> (std::istream& in, eDamageType& e);
|
||||
|
||||
void operator += (eMainStatus& stat, eMainStatus othr);
|
||||
void operator -= (eMainStatus& stat, eMainStatus othr);
|
||||
|
||||
#endif
|
@@ -9,10 +9,8 @@
|
||||
#include <cmath>
|
||||
#include <stdexcept>
|
||||
#include "dialog.hpp"
|
||||
#include "graphtool.hpp"
|
||||
#include "soundtool.hpp"
|
||||
using namespace std;
|
||||
using namespace ticpp;
|
||||
#include "tiling.hpp" // for bg
|
||||
#include "sounds.hpp"
|
||||
#include "pict.hpp"
|
||||
#include "button.hpp"
|
||||
#include "field.hpp"
|
||||
@@ -25,9 +23,11 @@ using namespace ticpp;
|
||||
#include "cursors.hpp"
|
||||
#include "prefs.hpp"
|
||||
|
||||
using namespace std;
|
||||
using namespace ticpp;
|
||||
|
||||
// TODO: Would be nice if I could avoid depending on mainPtr
|
||||
extern sf::RenderWindow mainPtr;
|
||||
extern cursor_type current_cursor;
|
||||
|
||||
extern sf::Texture bg_gworld;
|
||||
const short cDialog::BG_DARK = 5, cDialog::BG_LIGHT = 16;
|
||||
@@ -386,7 +386,7 @@ void cDialog::run(std::function<void(cDialog&)> onopen){
|
||||
cDialog* formerTop = topWindow;
|
||||
// TODO: The introduction of the static topWindow means I may be able to use this instead of parent->win; do I still need parent?
|
||||
sf::RenderWindow* parentWin = &(parent ? parent->win : mainPtr);
|
||||
cursor_type former_curs = current_cursor;
|
||||
cursor_type former_curs = Cursor::current;
|
||||
set_cursor(sword_curs);
|
||||
using kb = sf::Keyboard;
|
||||
kb::Key k;
|
@@ -12,7 +12,7 @@
|
||||
#include <string>
|
||||
#include <functional>
|
||||
#include "pictypes.hpp"
|
||||
#include "soundtool.hpp" // for snd_num_t
|
||||
#include "sounds.hpp" // for snd_num_t
|
||||
#include "dialog.hpp"
|
||||
|
||||
/// The signature of a record handler for cStrDlog.
|
@@ -14,12 +14,12 @@
|
||||
#include <algorithm>
|
||||
|
||||
#include "dialog.hpp"
|
||||
#include "graphtool.hpp"
|
||||
#include "render_image.hpp"
|
||||
|
||||
#include <cmath>
|
||||
#include <climits>
|
||||
|
||||
#include "restypes.hpp"
|
||||
#include "res_image.hpp"
|
||||
|
||||
extern sf::Texture bg_gworld;
|
||||
|
@@ -18,7 +18,7 @@
|
||||
#include <map>
|
||||
#include <vector>
|
||||
#include "control.hpp"
|
||||
#include "graphtool.hpp" // for eFont
|
||||
#include "render_text.hpp"
|
||||
|
||||
/// A button type.
|
||||
enum eBtnType { // w x h
|
@@ -9,12 +9,13 @@
|
||||
#include "control.hpp"
|
||||
#include <sstream>
|
||||
#include "dialog.hpp"
|
||||
#include "soundtool.hpp"
|
||||
#include "sounds.hpp"
|
||||
#include "button.hpp"
|
||||
#include "graphtool.hpp"
|
||||
#include "restypes.hpp"
|
||||
#include "render_shapes.hpp"
|
||||
#include "res_image.hpp"
|
||||
#include "mathutil.hpp"
|
||||
#include "prefs.hpp"
|
||||
#include "cursors.hpp"
|
||||
|
||||
void cControl::setText(std::string l){
|
||||
lbl = l;
|
@@ -13,7 +13,7 @@
|
||||
#include <boost/lexical_cast.hpp>
|
||||
#include "dialog.hpp"
|
||||
#include "strdlog.hpp"
|
||||
#include "graphtool.hpp"
|
||||
#include "render_shapes.hpp"
|
||||
#include "winutil.hpp"
|
||||
#include "cursors.hpp"
|
||||
|
@@ -14,7 +14,7 @@
|
||||
|
||||
#include <string>
|
||||
#include "control.hpp"
|
||||
#include "graphtool.hpp"
|
||||
#include "render_text.hpp"
|
||||
#include "undo.hpp"
|
||||
|
||||
/// The field's expected input type.
|
@@ -7,7 +7,6 @@
|
||||
*/
|
||||
|
||||
#include "message.hpp"
|
||||
#include "graphtool.hpp"
|
||||
#include "mathutil.hpp"
|
||||
#include "dialog.hpp"
|
||||
|
@@ -16,7 +16,7 @@
|
||||
|
||||
#include <string>
|
||||
#include "control.hpp"
|
||||
#include "graphtool.hpp" // for eFont
|
||||
#include "render_text.hpp"
|
||||
|
||||
/// A simple static text message.
|
||||
/// This class can also create a frame for grouping controls or a clickable area.
|
@@ -11,9 +11,14 @@
|
||||
#include <map>
|
||||
#include <stdexcept>
|
||||
|
||||
#include "graphtool.hpp"
|
||||
#include "gfxsheets.hpp"
|
||||
#include "render_shapes.hpp"
|
||||
#include "render_image.hpp"
|
||||
#include "render_text.hpp"
|
||||
#include "tiling.hpp"
|
||||
#include "location.hpp"
|
||||
#include "dialog.hpp"
|
||||
#include "restypes.hpp"
|
||||
#include "res_image.hpp"
|
||||
|
||||
extern sf::Texture bg_gworld;
|
||||
extern cCustomGraphics spec_scen_g;
|
@@ -12,8 +12,6 @@
|
||||
/// @file
|
||||
/// Constants to specify the type of an icon
|
||||
|
||||
typedef signed short pic_num_t; ///< An icon's unique number
|
||||
|
||||
/// Specifies an icon type.
|
||||
enum ePicType {
|
||||
PIC_TER = 1, ///< 28x36 terrain graphic from the preset sheets
|
@@ -7,9 +7,11 @@
|
||||
//
|
||||
|
||||
#include "scrollbar.hpp"
|
||||
#include "restypes.hpp"
|
||||
#include "graphtool.hpp"
|
||||
#include "res_image.hpp"
|
||||
#include "render_image.hpp"
|
||||
#include "render_shapes.hpp"
|
||||
#include "mathutil.hpp"
|
||||
#include "cursors.hpp"
|
||||
|
||||
std::string cScrollbar::scroll_textures[NUM_STYLES] = {
|
||||
"dlogscrollwh",
|
@@ -13,7 +13,6 @@
|
||||
/// Scrollbar-related classes and types.
|
||||
|
||||
#include "control.hpp"
|
||||
#include "graphtool.hpp"
|
||||
|
||||
/// Specifies the style of a scrollbar.
|
||||
enum eScrollStyle {
|
@@ -12,6 +12,7 @@
|
||||
#include "button.hpp"
|
||||
#include "pict.hpp"
|
||||
#include "stack.hpp"
|
||||
#include "render_shapes.hpp"
|
||||
|
||||
cScrollPane::cScrollPane(cDialog& parent) : cContainer(CTRL_PANE, parent), scroll(parent) {
|
||||
recalcRect();
|
103
src/fields.hpp
Normal file
103
src/fields.hpp
Normal file
@@ -0,0 +1,103 @@
|
||||
//
|
||||
// fields.hpp
|
||||
// BoE
|
||||
//
|
||||
// Created by Celtic Minstrel on 17-04-13.
|
||||
//
|
||||
//
|
||||
|
||||
#ifndef BoE_FIELDS_HPP
|
||||
#define BoE_FIELDS_HPP
|
||||
|
||||
// This is a slight misnomer, as a couple of these are not true fields.
|
||||
enum eFieldType {
|
||||
SPECIAL_EXPLORED = 0,
|
||||
WALL_FORCE = 1,
|
||||
WALL_FIRE = 2,
|
||||
FIELD_ANTIMAGIC = 3,
|
||||
CLOUD_STINK = 4,
|
||||
WALL_ICE = 5,
|
||||
WALL_BLADES = 6,
|
||||
CLOUD_SLEEP = 7,
|
||||
// Begin fields saved in town setup
|
||||
OBJECT_BLOCK = 8,
|
||||
SPECIAL_SPOT = 9, // Space contains a white special spot
|
||||
FIELD_WEB = 10,
|
||||
OBJECT_CRATE = 11,
|
||||
OBJECT_BARREL = 12,
|
||||
BARRIER_FIRE = 13,
|
||||
BARRIER_FORCE = 14,
|
||||
FIELD_QUICKFIRE = 15,
|
||||
// End fields saved in town setup
|
||||
SFX_SMALL_BLOOD = 16,
|
||||
SFX_MEDIUM_BLOOD = 17,
|
||||
SFX_LARGE_BLOOD = 18,
|
||||
SFX_SMALL_SLIME = 19,
|
||||
SFX_LARGE_SLIME = 20,
|
||||
SFX_ASH = 21,
|
||||
SFX_BONES = 22,
|
||||
SFX_RUBBLE = 23,
|
||||
BARRIER_CAGE = 24,
|
||||
SPECIAL_ROAD = 25,
|
||||
// From here on are special values that don't index anything.
|
||||
// Thus, they start at 32.
|
||||
FIELD_DISPEL = 32, // Dispel field
|
||||
FIELD_SMASH = 33, // Move Mountains
|
||||
// Mustn't have anything >= 50
|
||||
};
|
||||
|
||||
// Field types are used to index bit fields.
|
||||
// In this case, their values should be taken as a bit index that is set.
|
||||
inline unsigned long operator&(unsigned long a, eFieldType b) {
|
||||
return a & (1 << b);
|
||||
}
|
||||
inline unsigned long operator&(eFieldType a, unsigned long b) {
|
||||
return (1 << a) & b;
|
||||
}
|
||||
inline unsigned long operator&(eFieldType a, eFieldType b) {
|
||||
return (1 << a) & (1 << b);
|
||||
}
|
||||
inline unsigned long& operator &=(unsigned long& a, eFieldType b) {
|
||||
a = a & b;
|
||||
return a;
|
||||
}
|
||||
inline unsigned long operator|(unsigned long a, eFieldType b) {
|
||||
return a | (1 << b);
|
||||
}
|
||||
inline unsigned long operator|(eFieldType a, unsigned long b) {
|
||||
return (1 << a) | b;
|
||||
}
|
||||
inline unsigned long operator|(eFieldType a, eFieldType b) {
|
||||
return (1 << a) | (1 << b);
|
||||
}
|
||||
inline unsigned long& operator |=(unsigned long& a, eFieldType b) {
|
||||
a = a | b;
|
||||
return a;
|
||||
}
|
||||
inline unsigned long operator^(unsigned long a, eFieldType b) {
|
||||
return a ^ (1 << b);
|
||||
}
|
||||
inline unsigned long operator^(eFieldType a, unsigned long b) {
|
||||
return (1 << a) ^ b;
|
||||
}
|
||||
inline unsigned long operator^(eFieldType a, eFieldType b) {
|
||||
return (1 << a) ^ (1 << b);
|
||||
}
|
||||
inline unsigned long& operator ^=(unsigned long& a, eFieldType b) {
|
||||
a = a ^ b;
|
||||
return a;
|
||||
}
|
||||
inline unsigned long operator>>(eFieldType a, unsigned long b) {
|
||||
return (1 << a) >> b;
|
||||
}
|
||||
inline unsigned long operator<<(eFieldType a, unsigned long b) {
|
||||
return (1 << a) << b;
|
||||
}
|
||||
inline unsigned long operator~(eFieldType f) {
|
||||
return ~(1 << f);
|
||||
}
|
||||
|
||||
std::ostream& operator << (std::ostream& out, eFieldType e);
|
||||
std::istream& operator >> (std::istream& in, eFieldType& e);
|
||||
|
||||
#endif
|
@@ -6,6 +6,7 @@
|
||||
//
|
||||
//
|
||||
|
||||
#include <algorithm>
|
||||
#include <string>
|
||||
#include <iostream>
|
||||
#include <memory>
|
||||
@@ -13,17 +14,37 @@
|
||||
#include <boost/optional.hpp>
|
||||
#include <boost/lexical_cast.hpp>
|
||||
#include <boost/ptr_container/ptr_set.hpp>
|
||||
#include "simpletypes.hpp"
|
||||
#include "spell.hpp"
|
||||
|
||||
std::string oboeVersionString() {
|
||||
#include "spell.hpp"
|
||||
#include "item_abilities.hpp"
|
||||
#include "item_variety.hpp"
|
||||
#include "damage.hpp"
|
||||
#include "race.hpp"
|
||||
#include "location.hpp"
|
||||
#include "fields.hpp"
|
||||
#include "quest.hpp"
|
||||
#include "shop.hpp"
|
||||
#include "terrain_abilities.hpp"
|
||||
|
||||
#include "monster.hpp"
|
||||
#include "party.hpp"
|
||||
#include "town.hpp"
|
||||
#include "talking.hpp"
|
||||
#include "scenario.hpp"
|
||||
|
||||
const char* oboeVersionString() {
|
||||
static std::shared_ptr<char> version;
|
||||
if(version) return version.get();
|
||||
unsigned short M, m, f;
|
||||
M = OBOE_CURRENT_VERSION >> 16;
|
||||
m = (OBOE_CURRENT_VERSION & 0xff00) >> 8;
|
||||
f = OBOE_CURRENT_VERSION & 0xff;
|
||||
std::ostringstream sout;
|
||||
sout << M << '.' << m << '.' << f;
|
||||
return sout.str();
|
||||
std::string vers = sout.str();
|
||||
version.reset(new char[vers.length()], std::default_delete<char[]>());
|
||||
std::copy(vers.begin(), vers.end(), version.get());
|
||||
return version.get();
|
||||
}
|
||||
|
||||
// A simple lookup map based on the concept of a trie
|
@@ -9,23 +9,21 @@
|
||||
#include "fileio.hpp"
|
||||
|
||||
#include <fstream>
|
||||
#include <stdexcept>
|
||||
#include <boost/filesystem/operations.hpp>
|
||||
|
||||
#include "restypes.hpp"
|
||||
#include "cursors.hpp"
|
||||
#include "res_image.hpp"
|
||||
#include "res_cursor.hpp"
|
||||
#include "res_font.hpp"
|
||||
#include "res_strings.hpp"
|
||||
#include "res_sound.hpp"
|
||||
|
||||
bool mac_is_intel;
|
||||
fs::path progDir, tempDir, scenDir;
|
||||
|
||||
// Cursors included here so that they needn't be unnecessarily duplicated in platform-specific files
|
||||
cursor_type current_cursor = sword_curs;
|
||||
cursor_type arrow_curs[3][3] = {
|
||||
{NW_curs, N_curs, NE_curs},
|
||||
{W_curs, wait_curs, E_curs},
|
||||
{SW_curs, S_curs, SE_curs},
|
||||
};
|
||||
// This is here to avoid unnecessarily duplicating it in platform-specific files.
|
||||
cursor_type Cursor::current = sword_curs;
|
||||
|
||||
#include <stdexcept>
|
||||
std::filebuf logfile;
|
||||
|
||||
void init_directories(const char* exec_path) {
|
@@ -18,8 +18,6 @@
|
||||
class cScenario;
|
||||
class cUniverse;
|
||||
|
||||
namespace fs = boost::filesystem; // TODO: Centralize this alias!
|
||||
|
||||
fs::path locate_scenario(std::string scen_name);
|
||||
bool load_scenario(fs::path file_to_load, cScenario& scenario, bool only_header = false);
|
||||
|
@@ -15,7 +15,7 @@
|
||||
#include "gzstream.h"
|
||||
|
||||
#include "universe.hpp"
|
||||
#include "graphtool.hpp"
|
||||
#include "gfxsheets.hpp"
|
||||
|
||||
#include "porting.hpp"
|
||||
#include "tarball.hpp"
|
@@ -18,17 +18,18 @@
|
||||
#include "town.hpp"
|
||||
#include "map_parse.hpp"
|
||||
#include "special_parse.hpp"
|
||||
#include "graphtool.hpp"
|
||||
#include "gfxsheets.hpp"
|
||||
#include "mathutil.hpp"
|
||||
#include "gzstream.h"
|
||||
#include "tarball.hpp"
|
||||
|
||||
#include "porting.hpp"
|
||||
#include "restypes.hpp"
|
||||
#include "res_image.hpp"
|
||||
#include "res_sound.hpp"
|
||||
|
||||
// Because the full template definition needs to be visible in this file
|
||||
// Also, for some reason, it's not found in the include paths, so use a relative path
|
||||
#include "../classes/town_import.tpp"
|
||||
#include "../scenario/town_import.tpp"
|
||||
|
||||
bool cur_scen_is_mac = true;
|
||||
extern cCustomGraphics spec_scen_g;
|
@@ -6,40 +6,21 @@
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef BOE_RESTYPES_H
|
||||
#define BOE_RESTYPES_H
|
||||
#ifndef BOE_RES_CURSOR_HPP
|
||||
#define BOE_RES_CURSOR_HPP
|
||||
|
||||
#include <SFML/Graphics.hpp>
|
||||
#include <SFML/Audio.hpp>
|
||||
|
||||
#include "resmgr.hpp"
|
||||
#include <vector>
|
||||
#include <string>
|
||||
#include <fstream>
|
||||
#include <iostream>
|
||||
#include <map>
|
||||
#include <boost/filesystem/path.hpp>
|
||||
#include <SFML/Graphics.hpp>
|
||||
#include "resmgr.hpp"
|
||||
#include "cursors.hpp"
|
||||
#include "location.hpp"
|
||||
|
||||
using ImageRsrc = sf::Texture;
|
||||
using CursorRsrc = Cursor;
|
||||
using FontRsrc = sf::Font;
|
||||
using StringRsrc = std::vector<std::string>;
|
||||
using SoundRsrc = sf::SoundBuffer;
|
||||
|
||||
// Redeclare this instead of including "fileio.h"
|
||||
extern std::ostream& std_fmterr(std::ostream& out);
|
||||
|
||||
namespace ResMgr {
|
||||
/// Load an image from a PNG file.
|
||||
template<> inline ImageRsrc* resLoader<ImageRsrc>::operator() (fs::path fpath) {
|
||||
ImageRsrc* img = new ImageRsrc();
|
||||
if(img->loadFromFile(fpath.string())) return img;
|
||||
delete img;
|
||||
throw xResMgrErr("Failed to load PNG image: " + fpath.string());
|
||||
}
|
||||
|
||||
/// Load a cursor from a GIF file.
|
||||
/// The cursor's hotspot location is stored in a GIF comment, with the following syntax (case-sensitive):
|
||||
/// "Hotspot(x,y)"
|
||||
@@ -86,40 +67,6 @@ namespace ResMgr {
|
||||
CursorRsrc* cur = new Cursor(fpath.string(),x,y);
|
||||
return cur;
|
||||
}
|
||||
|
||||
/// Load a font from a TTF file.
|
||||
template<> inline FontRsrc* resLoader<FontRsrc>::operator() (fs::path fpath) {
|
||||
FontRsrc* theFont = new FontRsrc;
|
||||
if(theFont->loadFromFile(fpath.string())) return theFont;
|
||||
delete theFont;
|
||||
throw xResMgrErr("Failed to find font: " + fpath.string());
|
||||
}
|
||||
|
||||
/// Load a list of strings from a TXT file.
|
||||
/// Each line in the file becomes one string in the resulting list.
|
||||
/// (Empty lines are included too.)
|
||||
template<> inline StringRsrc* resLoader<StringRsrc>::operator() (fs::path fpath) {
|
||||
std::ifstream fin(fpath.string().c_str());
|
||||
if(fin.fail()) {
|
||||
std::cerr << std_fmterr << ": Error opening file";
|
||||
throw xResMgrErr("Failed to load string list: " + fpath.string());
|
||||
}
|
||||
std::string next;
|
||||
StringRsrc* strlist = new StringRsrc;
|
||||
while(!fin.eof()) {
|
||||
getline(fin,next);
|
||||
strlist->push_back(next);
|
||||
}
|
||||
return strlist;
|
||||
}
|
||||
|
||||
/// Load a sound from a WAV file.
|
||||
template<> inline SoundRsrc* resLoader<SoundRsrc>::operator() (fs::path fpath) {
|
||||
SoundRsrc* snd = new SoundRsrc;
|
||||
if(snd->loadFromFile(fpath.string())) return snd;
|
||||
delete snd;
|
||||
throw xResMgrErr("Failed to load WAV sound: " + fpath.string());
|
||||
}
|
||||
}
|
||||
|
||||
#endif
|
31
src/fileio/resmgr/res_font.hpp
Normal file
31
src/fileio/resmgr/res_font.hpp
Normal file
@@ -0,0 +1,31 @@
|
||||
/*
|
||||
* restypes.h
|
||||
* BoE
|
||||
*
|
||||
* Created by Celtic Minstrel on 10-08-25.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef BOE_RES_FONT_HPP
|
||||
#define BOE_RES_FONT_HPP
|
||||
|
||||
#include "resmgr.hpp"
|
||||
#include <boost/filesystem/path.hpp>
|
||||
#include <SFML/Graphics.hpp>
|
||||
|
||||
using FontRsrc = sf::Font;
|
||||
|
||||
// Redeclare this instead of including "fileio.h"
|
||||
extern std::ostream& std_fmterr(std::ostream& out);
|
||||
|
||||
namespace ResMgr {
|
||||
/// Load a font from a TTF file.
|
||||
template<> inline FontRsrc* resLoader<FontRsrc>::operator() (fs::path fpath) {
|
||||
FontRsrc* theFont = new FontRsrc;
|
||||
if(theFont->loadFromFile(fpath.string())) return theFont;
|
||||
delete theFont;
|
||||
throw xResMgrErr("Failed to find font: " + fpath.string());
|
||||
}
|
||||
}
|
||||
|
||||
#endif
|
31
src/fileio/resmgr/res_image.hpp
Normal file
31
src/fileio/resmgr/res_image.hpp
Normal file
@@ -0,0 +1,31 @@
|
||||
/*
|
||||
* restypes.h
|
||||
* BoE
|
||||
*
|
||||
* Created by Celtic Minstrel on 10-08-25.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef BOE_RES_IMAGE_HPP
|
||||
#define BOE_RES_IMAGE_HPP
|
||||
|
||||
#include <boost/filesystem/path.hpp>
|
||||
#include <SFML/Graphics.hpp>
|
||||
#include "resmgr.hpp"
|
||||
|
||||
using ImageRsrc = sf::Texture;
|
||||
|
||||
// Redeclare this instead of including "fileio.h"
|
||||
extern std::ostream& std_fmterr(std::ostream& out);
|
||||
|
||||
namespace ResMgr {
|
||||
/// Load an image from a PNG file.
|
||||
template<> inline ImageRsrc* resLoader<ImageRsrc>::operator() (fs::path fpath) {
|
||||
ImageRsrc* img = new ImageRsrc();
|
||||
if(img->loadFromFile(fpath.string())) return img;
|
||||
delete img;
|
||||
throw xResMgrErr("Failed to load PNG image: " + fpath.string());
|
||||
}
|
||||
}
|
||||
|
||||
#endif
|
31
src/fileio/resmgr/res_sound.hpp
Normal file
31
src/fileio/resmgr/res_sound.hpp
Normal file
@@ -0,0 +1,31 @@
|
||||
/*
|
||||
* restypes.h
|
||||
* BoE
|
||||
*
|
||||
* Created by Celtic Minstrel on 10-08-25.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef BOE_RES_SOUND_HPP
|
||||
#define BOE_RES_SOUND_HPP
|
||||
|
||||
#include <boost/filesystem/path.hpp>
|
||||
#include <SFML/Audio.hpp>
|
||||
#include "resmgr.hpp"
|
||||
|
||||
using SoundRsrc = sf::SoundBuffer;
|
||||
|
||||
// Redeclare this instead of including "fileio.h"
|
||||
extern std::ostream& std_fmterr(std::ostream& out);
|
||||
|
||||
namespace ResMgr {
|
||||
/// Load a sound from a WAV file.
|
||||
template<> inline SoundRsrc* resLoader<SoundRsrc>::operator() (fs::path fpath) {
|
||||
SoundRsrc* snd = new SoundRsrc;
|
||||
if(snd->loadFromFile(fpath.string())) return snd;
|
||||
delete snd;
|
||||
throw xResMgrErr("Failed to load WAV sound: " + fpath.string());
|
||||
}
|
||||
}
|
||||
|
||||
#endif
|
41
src/fileio/resmgr/res_strings.hpp
Normal file
41
src/fileio/resmgr/res_strings.hpp
Normal file
@@ -0,0 +1,41 @@
|
||||
/*
|
||||
* restypes.h
|
||||
* BoE
|
||||
*
|
||||
* Created by Celtic Minstrel on 10-08-25.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef BOE_RES_STRINGS_HPP
|
||||
#define BOE_RES_STRINGS_HPP
|
||||
|
||||
#include <fstream>
|
||||
#include <boost/filesystem/path.hpp>
|
||||
#include "resmgr.hpp"
|
||||
|
||||
using StringRsrc = std::vector<std::string>;
|
||||
|
||||
// Redeclare this instead of including "fileio.h"
|
||||
extern std::ostream& std_fmterr(std::ostream& out);
|
||||
|
||||
namespace ResMgr {
|
||||
/// Load a list of strings from a TXT file.
|
||||
/// Each line in the file becomes one string in the resulting list.
|
||||
/// (Empty lines are included too.)
|
||||
template<> inline StringRsrc* resLoader<StringRsrc>::operator() (fs::path fpath) {
|
||||
std::ifstream fin(fpath.c_str());
|
||||
if(fin.fail()) {
|
||||
std::cerr << std_fmterr << ": Error opening file";
|
||||
throw xResMgrErr("Failed to load string list: " + fpath.string());
|
||||
}
|
||||
std::string next;
|
||||
StringRsrc* strlist = new StringRsrc;
|
||||
while(!fin.eof()) {
|
||||
getline(fin,next);
|
||||
strlist->push_back(next);
|
||||
}
|
||||
return strlist;
|
||||
}
|
||||
}
|
||||
|
||||
#endif
|
@@ -36,7 +36,6 @@ namespace std {
|
||||
/// for the desired resource type. The operator() receives the
|
||||
/// full file path with the extension already applied.
|
||||
namespace ResMgr {
|
||||
namespace fs = boost::filesystem;
|
||||
/// The signature of an ID map function.
|
||||
using idMapFn = std::function<std::string(int)>;
|
||||
|
@@ -6,7 +6,11 @@
|
||||
//
|
||||
//
|
||||
|
||||
#include "restypes.hpp"
|
||||
#include "res_image.hpp"
|
||||
#include "res_cursor.hpp"
|
||||
#include "res_font.hpp"
|
||||
#include "res_strings.hpp"
|
||||
#include "res_sound.hpp"
|
||||
|
||||
namespace ResMgr {
|
||||
template<> const std::string resLoader<ImageRsrc>::file_ext = "png";
|
@@ -121,7 +121,7 @@ static void init_specials_parse() {
|
||||
using underlying = unsigned short;
|
||||
for(underlying i = 1; i < std::numeric_limits<underlying>::max(); i++) {
|
||||
eSpecType check = (eSpecType) i;
|
||||
eSpecCat category = getNodeCategory(check);
|
||||
eSpecCat category = (*check).cat;
|
||||
if(category == eSpecCat::INVALID) continue;
|
||||
if((*check).opcode().empty())
|
||||
warn_missing_opcode(i);
|
@@ -20,7 +20,7 @@
|
||||
#include "boe.newgraph.hpp"
|
||||
#include "boe.combat.hpp"
|
||||
#include "boe.items.hpp"
|
||||
#include "soundtool.hpp"
|
||||
#include "sounds.hpp"
|
||||
#include "boe.infodlg.hpp"
|
||||
#include "boe.main.hpp"
|
||||
#include "mathutil.hpp"
|
||||
@@ -34,6 +34,7 @@
|
||||
#include "spell.hpp"
|
||||
#include "shop.hpp"
|
||||
#include "prefs.hpp"
|
||||
#include "render_shapes.hpp"
|
||||
|
||||
rectangle bottom_buttons[14];
|
||||
rectangle world_screen = {23, 23, 346, 274};
|
||||
@@ -1072,7 +1073,7 @@ bool handle_action(sf::Event event) {
|
||||
if(overall_mode == MODE_OUTDOORS) {
|
||||
give_help(62,0);
|
||||
display_map();
|
||||
make_cursor_sword();
|
||||
set_cursor(sword_curs);
|
||||
} else if(overall_mode == MODE_TOWN || overall_mode == MODE_COMBAT)
|
||||
handle_get_items(did_something, need_redraw, need_reprint);
|
||||
break;
|
||||
@@ -1106,7 +1107,7 @@ bool handle_action(sf::Event event) {
|
||||
else if(overall_mode == MODE_TOWN) {
|
||||
give_help(62,0);
|
||||
display_map();
|
||||
make_cursor_sword();
|
||||
set_cursor(sword_curs);
|
||||
} else handle_missile(need_redraw, need_reprint);
|
||||
break;
|
||||
|
||||
@@ -2346,7 +2347,7 @@ void increase_age() {
|
||||
if(univ.party.status[ePartyStatus::FLIGHT] == 2)
|
||||
add_string_to_buf("You are starting to descend.");
|
||||
if(univ.party.status[ePartyStatus::FLIGHT] == 1) {
|
||||
if(blocksMove(univ.scenario.ter_types[univ.out[univ.party.out_loc.x][univ.party.out_loc.y]].blockage)) {
|
||||
if(univ.scenario.ter_types[univ.out[univ.party.out_loc.x][univ.party.out_loc.y]].blocksMove()) {
|
||||
add_string_to_buf(" You plummet to your deaths.");
|
||||
slay_party(eMainStatus::DEAD);
|
||||
print_buf();
|
@@ -4,7 +4,6 @@
|
||||
|
||||
#include <SFML/Window/Event.hpp>
|
||||
#include "location.hpp"
|
||||
#include "simpletypes.hpp"
|
||||
|
||||
void init_screen_locs();
|
||||
bool prime_time();
|
@@ -13,7 +13,7 @@
|
||||
#include "boe.items.hpp"
|
||||
#include "boe.party.hpp"
|
||||
#include "boe.combat.hpp"
|
||||
#include "soundtool.hpp"
|
||||
#include "sounds.hpp"
|
||||
#include "boe.town.hpp"
|
||||
#include "boe.specials.hpp"
|
||||
#include "boe.graphutil.hpp"
|
||||
@@ -23,6 +23,7 @@
|
||||
#include "boe.menus.hpp"
|
||||
#include "spell.hpp"
|
||||
#include "prefs.hpp"
|
||||
#include "utility.hpp"
|
||||
|
||||
extern eGameMode overall_mode;
|
||||
extern short which_combat_type;
|
@@ -16,24 +16,24 @@
|
||||
#include "boe.townspec.hpp"
|
||||
#include "boe.main.hpp"
|
||||
#include "boe.items.hpp"
|
||||
#include "soundtool.hpp"
|
||||
#include "sounds.hpp"
|
||||
#include <cstdio>
|
||||
#include "boe.newgraph.hpp"
|
||||
#include "boe.infodlg.hpp"
|
||||
#include "graphtool.hpp"
|
||||
#include "utility.hpp"
|
||||
#include "mathutil.hpp"
|
||||
#include "strdlog.hpp"
|
||||
#include "choicedlog.hpp"
|
||||
#include "winutil.hpp"
|
||||
#include "fileio.hpp"
|
||||
#include "restypes.hpp"
|
||||
#include "res_strings.hpp"
|
||||
#include "scrollbar.hpp"
|
||||
#include "button.hpp"
|
||||
#include "pict.hpp"
|
||||
#include <boost/lexical_cast.hpp>
|
||||
#include "prefs.hpp"
|
||||
#include "shop.hpp"
|
||||
#include "restypes.hpp"
|
||||
#include "cursors.hpp"
|
||||
|
||||
extern short stat_window;
|
||||
extern eGameMode overall_mode;
|
||||
@@ -638,9 +638,7 @@ static void show_job_bank(int which_bank, std::string title) {
|
||||
int which = hit[4] - '1';
|
||||
me["prompt"].setText("Job accepted.");
|
||||
job_bank_t& bank = univ.party.job_banks[which_bank];
|
||||
univ.party.quest_status[bank.jobs[which]] = eQuestStatus::STARTED;
|
||||
univ.party.quest_source[bank.jobs[which]] = store_personality;
|
||||
univ.party.quest_start[bank.jobs[which]] = univ.party.calc_day();
|
||||
univ.party.active_quests[bank.jobs[which]] = cJob(univ.party.calc_day(), store_personality);
|
||||
// Now, if there are spare jobs available, fill in. Otherwise, clear space.
|
||||
if(bank.jobs[4] >= 0)
|
||||
std::swap(bank.jobs[which], bank.jobs[4]);
|
||||
@@ -977,11 +975,9 @@ void handle_talk_event(location p) {
|
||||
showError("Tried to give a nonexistent quest!");
|
||||
return;
|
||||
}
|
||||
switch(univ.party.quest_status[a]) {
|
||||
switch(univ.party.active_quests[a].status) {
|
||||
case eQuestStatus::AVAILABLE:
|
||||
univ.party.quest_status[a] = eQuestStatus::STARTED;
|
||||
univ.party.quest_source[a] = -1;
|
||||
univ.party.quest_start[a] = univ.party.calc_day();
|
||||
univ.party.active_quests[a] = cJob(univ.party.calc_day());
|
||||
break;
|
||||
case eQuestStatus::STARTED:
|
||||
break;
|
||||
@@ -1065,7 +1061,7 @@ void handle_talk_event(location p) {
|
||||
void do_sign(short town_num, short which_sign, short sign_type) {
|
||||
std::string sign_text;
|
||||
|
||||
make_cursor_sword();
|
||||
set_cursor(sword_curs);
|
||||
|
||||
cChoiceDlog sign("view-sign");
|
||||
cPict& pict = dynamic_cast<cPict&>(sign->getControl("ter"));
|
||||
@@ -1153,7 +1149,7 @@ static bool prefs_event_filter (cDialog& me, std::string id, eKeyMod) {
|
||||
}
|
||||
|
||||
void pick_preferences() {
|
||||
make_cursor_sword();
|
||||
set_cursor(sword_curs);
|
||||
|
||||
cDialog prefsDlog("preferences");
|
||||
prefsDlog.attachClickHandlers(&prefs_event_filter, {"okay", "cancel"});
|
||||
@@ -1288,7 +1284,7 @@ static bool edit_party_event_filter(cDialog& me, std::string item_hit, eKeyMod)
|
||||
}
|
||||
|
||||
void edit_party() {
|
||||
make_cursor_sword();
|
||||
set_cursor(sword_curs);
|
||||
|
||||
cDialog pcDialog("edit-party");
|
||||
std::vector<std::string> buttons = {"done", "help"};
|
||||
@@ -1334,7 +1330,7 @@ void tip_of_day() {
|
||||
|
||||
short page = get_ran(1,0,ResMgr::get<StringRsrc>("tips")->size() - 51);
|
||||
|
||||
make_cursor_sword();
|
||||
set_cursor(sword_curs);
|
||||
|
||||
cDialog tips("tip-of-day");
|
||||
tips.attachClickHandlers(std::bind(tip_of_day_event_filter, _1, _2, std::ref(page)),{"done","next"});
|
||||
@@ -1416,7 +1412,7 @@ short pick_a_scen() {
|
||||
err.show();
|
||||
return -1;
|
||||
}
|
||||
make_cursor_sword();
|
||||
set_cursor(sword_curs);
|
||||
|
||||
cDialog pickScen("pick-scenario");
|
||||
short page = 0;
|
||||
@@ -1435,7 +1431,7 @@ short pick_a_scen() {
|
||||
|
||||
short pick_prefab_scen() {
|
||||
|
||||
make_cursor_sword();
|
||||
set_cursor(sword_curs);
|
||||
|
||||
cChoiceDlog pickScenario("pick-prefab-scen", {"cancel", "scen1", "scen2", "scen3"});
|
||||
|
@@ -3,7 +3,6 @@
|
||||
|
||||
#include <string>
|
||||
#include "dialog.hpp"
|
||||
#include "simpletypes.hpp"
|
||||
#include "shop.hpp"
|
||||
|
||||
void start_shop_mode(short which,short cost_adj,std::string store_name);
|
@@ -14,13 +14,12 @@
|
||||
#include "boe.dlgutil.hpp"
|
||||
#include "boe.infodlg.hpp"
|
||||
#include "boe.graphutil.hpp"
|
||||
#include "graphtool.hpp"
|
||||
#include "soundtool.hpp"
|
||||
#include "sounds.hpp"
|
||||
#include "mathutil.hpp"
|
||||
#include "strdlog.hpp"
|
||||
#include "fileio.hpp"
|
||||
#include "cursors.hpp"
|
||||
#include <boost/filesystem.hpp>
|
||||
#include "restypes.hpp"
|
||||
|
||||
#define DONE_BUTTON_ITEM 1
|
||||
|
||||
@@ -129,7 +128,7 @@ void finish_load_party(){
|
||||
}
|
||||
|
||||
void shift_universe_left() {
|
||||
make_cursor_watch();
|
||||
set_cursor(watch_curs);
|
||||
|
||||
save_outdoor_maps();
|
||||
univ.party.outdoor_corner.x--;
|
||||
@@ -157,7 +156,7 @@ void shift_universe_left() {
|
||||
}
|
||||
|
||||
void shift_universe_right() {
|
||||
make_cursor_watch();
|
||||
set_cursor(watch_curs);
|
||||
save_outdoor_maps();
|
||||
univ.party.outdoor_corner.x++;
|
||||
univ.party.i_w_c.x--;
|
||||
@@ -182,7 +181,7 @@ void shift_universe_right() {
|
||||
}
|
||||
|
||||
void shift_universe_up() {
|
||||
make_cursor_watch();
|
||||
set_cursor(watch_curs);
|
||||
save_outdoor_maps();
|
||||
univ.party.outdoor_corner.y--;
|
||||
univ.party.i_w_c.y++;
|
||||
@@ -208,7 +207,7 @@ void shift_universe_up() {
|
||||
}
|
||||
|
||||
void shift_universe_down() {
|
||||
make_cursor_watch();
|
||||
set_cursor(watch_curs);
|
||||
|
||||
save_outdoor_maps();
|
||||
univ.party.outdoor_corner.y++;
|
||||
@@ -348,7 +347,7 @@ void build_scen_headers() {
|
||||
std::cout << progDir << '\n' << scenDir << std::endl;
|
||||
scen_headers.clear();
|
||||
fs::recursive_directory_iterator iter(scenDir);
|
||||
make_cursor_watch();
|
||||
set_cursor(watch_curs);
|
||||
|
||||
while(iter != fs::recursive_directory_iterator()) {
|
||||
fs::file_status stat = iter->status();
|
@@ -4,9 +4,6 @@
|
||||
|
||||
#include <boost/filesystem/path.hpp>
|
||||
#include "location.hpp"
|
||||
#include "simpletypes.hpp"
|
||||
|
||||
namespace fs = boost::filesystem; // TODO: Centralize this alias!
|
||||
|
||||
void finish_load_party();
|
||||
void change_rect_terrain(rectangle r,ter_num_t terrain_type,short probability,bool hollow);
|
||||
@@ -30,6 +27,6 @@ void build_scen_headers();
|
||||
bool load_scenario_header(fs::path filename/*,short header_entry*/);
|
||||
fs::path locate_scenario(std::string scen_name);
|
||||
|
||||
void alter_rect(rectangle *r);
|
||||
void alter_rect(rectangle *r);
|
||||
|
||||
#endif
|
@@ -12,8 +12,10 @@
|
||||
#include "boe.monster.hpp"
|
||||
#include "boe.locutils.hpp"
|
||||
#include "boe.text.hpp"
|
||||
#include "graphtool.hpp"
|
||||
#include "soundtool.hpp"
|
||||
#include "render_image.hpp"
|
||||
#include "render_shapes.hpp"
|
||||
#include "tiling.hpp"
|
||||
#include "sounds.hpp"
|
||||
#include "mathutil.hpp"
|
||||
#include "button.hpp"
|
||||
|
||||
@@ -25,7 +27,7 @@
|
||||
|
||||
#include "scrollbar.hpp"
|
||||
|
||||
#include "restypes.hpp"
|
||||
#include "res_image.hpp"
|
||||
#include "boe.menus.hpp"
|
||||
#include "winutil.hpp"
|
||||
#include "prefs.hpp"
|
||||
@@ -947,7 +949,7 @@ void draw_terrain(short mode) {
|
||||
|
||||
static ter_num_t get_ground_for_shore(ter_num_t ter){
|
||||
if(univ.scenario.ter_types[ter].block_horse) return current_ground;
|
||||
else if(blocksMove(univ.scenario.ter_types[ter].blockage)) return current_ground;
|
||||
else if(univ.scenario.ter_types[ter].blocksMove()) return current_ground;
|
||||
else return ter;
|
||||
}
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user