diff --git a/osx/Blades of Exile-Info.plist b/osx/Blades of Exile-Info.plist index 71fb089a..c05a4177 100644 --- a/osx/Blades of Exile-Info.plist +++ b/osx/Blades of Exile-Info.plist @@ -17,6 +17,10 @@ CFBundleTypeRole None + LSItemContentTypes + + com.spidweb.bladesofexile.oldsounds + LSTypeIsPackage NSPersistentStoreTypeKey @@ -37,6 +41,10 @@ CFBundleTypeRole None + LSItemContentTypes + + com.spidweb.bladesofexile.oldgraphics + LSTypeIsPackage NSPersistentStoreTypeKey @@ -50,13 +58,17 @@ CFBundleTypeIconFile boesave CFBundleTypeName - SavedGame + Saved Game CFBundleTypeOSTypes beSV CFBundleTypeRole Editor + LSItemContentTypes + + com.spidweb.bladesofexile.savegame + LSTypeIsPackage NSPersistentStoreTypeKey @@ -77,11 +89,75 @@ CFBundleTypeRole Viewer + LSItemContentTypes + + com.spidweb.bladesofexile.scenario + LSTypeIsPackage NSPersistentStoreTypeKey Binary + + CFBundleTypeExtensions + + .exd + + CFBundleTypeIconFile + boegraphics + CFBundleTypeName + Preset Graphics + CFBundleTypeRole + None + LSItemContentTypes + + com.spidweb.bladesofexile.newgraphics + + LSTypeIsPackage + + NSPersistentStoreTypeKey + Binary + + + CFBundleTypeExtensions + + .exr + + CFBundleTypeIconFile + boeresources + CFBundleTypeName + Resource File + CFBundleTypeRole + None + LSItemContentTypes + + com.spidweb.bladesofexile.resources + + LSTypeIsPackage + + NSPersistentStoreTypeKey + Binary + + + CFBundleTypeExtensions + + .exa + + CFBundleTypeIconFile + boesounds + CFBundleTypeName + Preset Sounds + CFBundleTypeRole + None + LSItemContentTypes + + com.spidweb.bladesofexile.newsounds + + LSTypeIsPackage + + NSPersistentStoreTypeKey + Binary + CFBundleExecutable ${EXECUTABLE_NAME} diff --git a/osx/BoE.xcodeproj/project.pbxproj b/osx/BoE.xcodeproj/project.pbxproj index 461f4d03..16278be5 100644 --- a/osx/BoE.xcodeproj/project.pbxproj +++ b/osx/BoE.xcodeproj/project.pbxproj @@ -92,6 +92,7 @@ 913D05BC0FA1EA0A00184C18 /* pc.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 913D05BB0FA1EA0A00184C18 /* pc.cpp */; }; 913D05BD0FA1EA0A00184C18 /* pc.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 913D05BB0FA1EA0A00184C18 /* pc.cpp */; }; 913D05BE0FA1EA0A00184C18 /* pc.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 913D05BB0FA1EA0A00184C18 /* pc.cpp */; }; + 913D6C050FC57A8E00E12527 /* boeresources.icns in Resources */ = {isa = PBXBuildFile; fileRef = 913D6C040FC57A8E00E12527 /* boeresources.icns */; }; 91A79DC70FA797BF00A6A41F /* menu.xib in Resources */ = {isa = PBXBuildFile; fileRef = 91A79DC60FA797BF00A6A41F /* menu.xib */; }; 91AC60800FA26A3B00EEAE67 /* regtown.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 91AC607F0FA26A3B00EEAE67 /* regtown.cpp */; }; 91AC60810FA26A3B00EEAE67 /* regtown.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 91AC607F0FA26A3B00EEAE67 /* regtown.cpp */; }; @@ -342,6 +343,7 @@ 913D05B50FA1E9E300184C18 /* party.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = party.cpp; path = classes/party.cpp; sourceTree = ""; }; 913D05BA0FA1EA0A00184C18 /* pc.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = pc.h; path = classes/pc.h; sourceTree = ""; }; 913D05BB0FA1EA0A00184C18 /* pc.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = pc.cpp; path = classes/pc.cpp; sourceTree = ""; }; + 913D6C040FC57A8E00E12527 /* boeresources.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; path = boeresources.icns; sourceTree = ""; }; 91A79DC60FA797BF00A6A41F /* menu.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = menu.xib; sourceTree = ""; }; 91A79DDD0FA79DEE00A6A41F /* dialogs.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = dialogs.xib; sourceTree = ""; }; 91AC607E0FA26A3B00EEAE67 /* regtown.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = regtown.h; path = classes/regtown.h; sourceTree = ""; }; @@ -842,6 +844,7 @@ children = ( 91279BB30F9D03B6007B0D52 /* boesave.icns */, 91279BB40F9D03B7007B0D52 /* boesounds.icns */, + 913D6C040FC57A8E00E12527 /* boeresources.icns */, 91279BB50F9D03B7007B0D52 /* boegraphics.icns */, 91D62F330F8EB84800674AB3 /* bladesofexile.rsrc */, 2B8F435C0C0973680012E4A8 /* BoE.icns */, @@ -976,6 +979,7 @@ 91279BB70F9D03B7007B0D52 /* boesounds.icns in Resources */, 91279BB80F9D03B7007B0D52 /* boegraphics.icns in Resources */, 91A79DC70FA797BF00A6A41F /* menu.xib in Resources */, + 913D6C050FC57A8E00E12527 /* boeresources.icns in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/osx/boe.graphics.cpp b/osx/boe.graphics.cpp index 20605ca6..80f20c30 100644 --- a/osx/boe.graphics.cpp +++ b/osx/boe.graphics.cpp @@ -2142,35 +2142,35 @@ void place_trim(short q,short r,location where,unsigned short ter_type) if (trim != 0) { unsigned short shore; if (trim & 2){ // upper right - shore = coord_to_ter(where.x, where.y); + shore = coord_to_ter(where.x + 1, where.y - 1); shore = get_ground_for_shore(shore); draw_trim(q,r,5,shore); }if (trim & 8){ // lower right - shore = coord_to_ter(where.x, where.y); + shore = coord_to_ter(where.x + 1, where.y + 1); shore = get_ground_for_shore(shore); draw_trim(q,r,7,shore); }if (trim & 32){ // lower left - shore = coord_to_ter(where.x, where.y); + shore = coord_to_ter(where.x - 1, where.y + 1); shore = get_ground_for_shore(shore); draw_trim(q,r,6,shore); }if (trim & 128){ // upper left - shore = coord_to_ter(where.x, where.y); + shore = coord_to_ter(where.x - 1, where.y - 1); shore = get_ground_for_shore(shore); draw_trim(q,r,4,shore); }if (trim & 1){ // top - shore = coord_to_ter(where.x, where.y); + shore = coord_to_ter(where.x, where.y - 1); shore = get_ground_for_shore(shore); draw_trim(q,r,2,shore); }if (trim & 4){ // right - shore = coord_to_ter(where.x, where.y); + shore = coord_to_ter(where.x + 1, where.y); shore = get_ground_for_shore(shore); draw_trim(q,r,1,shore); }if (trim & 16){ // bottom - shore = coord_to_ter(where.x, where.y); + shore = coord_to_ter(where.x, where.y + 1); shore = get_ground_for_shore(shore); draw_trim(q,r,3,shore); }if (trim & 64){ // left - shore = coord_to_ter(where.x, where.y); + shore = coord_to_ter(where.x - 1, where.y); shore = get_ground_for_shore(shore); draw_trim(q,r,0,shore); } @@ -2324,10 +2324,12 @@ void draw_trim(short q,short r,short which_trim,unsigned short ground_ter) LockPixels(to_bits); LockPixels(mask_bits); LockPixels(from_bits); - CopyMask ((BitMap*) *from_bits, - (BitMap*) *mask_bits, - (BitMap*) *to_bits, - &from_rect, &mask_rect, &to_rect); + CopyDeepMask ((BitMap*) *from_bits, + (BitMap*) *mask_bits, + (BitMap*) *to_bits, + &from_rect, &mask_rect, &to_rect, + transparent, NULL + ); UnlockPixels(from_bits); UnlockPixels(mask_bits); UnlockPixels(to_bits); diff --git a/osx/boe.graphutil.cpp b/osx/boe.graphutil.cpp index 5988db73..6e7092e2 100644 --- a/osx/boe.graphutil.cpp +++ b/osx/boe.graphutil.cpp @@ -815,7 +815,7 @@ Rect get_item_template_rect (short type_wanted)//// return store_rect; } -// Is this is subterranean fluid that gets shore plopped down on it? +// Is this a fluid that gets shore plopped down on it? bool is_fluid(unsigned short ter_type)//// { // if (((ter_type >= 71) && (ter_type <= 76)) || (ter_type == 90)) @@ -824,12 +824,12 @@ bool is_fluid(unsigned short ter_type)//// return scenario.ter_types[ter_type].trim_type == TRIM_FRILLS; } -// Is this is subterranean beach that gets shore plopped down next to it? +// Is this a beach that gets shore plopped down next to it? bool is_shore(unsigned short ter_type)//// { if (is_fluid(ter_type) == true) return false; - if(scenario.ter_types[ter_type].trim_type = TRIM_WATERFALL) + if(scenario.ter_types[ter_type].trim_type == TRIM_WATERFALL) return false; // if (ter_type == 77) // return false;