From b5fd70a200f09eac0e216db3709685ce87cf5233 Mon Sep 17 00:00:00 2001 From: Justin Marshall Date: Sun, 12 Jul 2020 17:25:50 -0700 Subject: [PATCH] Added clear tile variation(this will be break some maps and may require them to be redone). --- SCU01EA.INI | 261 ++++++++++--------------------- code/redalert/cdata.cpp | 50 ++++++ code/redalert/cell.cpp | 12 +- code/redalert/defines.h | 7 + code/redalert/win32lib/gbuffer.h | 3 +- 5 files changed, 153 insertions(+), 180 deletions(-) diff --git a/SCU01EA.INI b/SCU01EA.INI index 32684fe..689764e 100644 --- a/SCU01EA.INI +++ b/SCU01EA.INI @@ -110,6 +110,7 @@ TechLevel=3 Credits=100 TechLevel=3 IQ=5 +PlayerControl=yes [Basic] Name=In the thick of it @@ -137,198 +138,108 @@ FillSilos=no TruckCrate=no Percent=0 -[Lights] -0=light0,1015035008,1.000000,1.000000,1.000000,75.000000,1 -1=light1,994063296,1.000000,1.000000,1.000000,75.000000,1 -2=light2,1031812736,1.000000,1.000000,1.000000,75.000000,1 -3=light3,1069561280,1.000000,1.000000,1.000000,75.000000,1 -4=light4,1119892800,1.000000,1.000000,1.000000,75.000000,1 -5=light5,1019230528,1.000000,1.000000,1.000000,75.000000,1 -6=light6,1027620032,1.000000,1.000000,1.000000,75.000000,1 -7=light7,1010839616,1.000000,1.000000,1.000000,75.000000,1 -8=light8,1019227072,1.000000,1.000000,1.000000,75.000000,1 -9=light9,1027614528,1.000000,1.000000,1.000000,75.000000,1 -10=light10,968898112,1.000000,1.000000,1.000000,75.000000,1 -11=light11,918566336,1.000000,1.000000,1.000000,75.000000,1 -12=light12,868234688,1.000000,1.000000,1.000000,75.000000,1 -13=light13,826291648,1.000000,1.000000,1.000000,75.000000,1 -14=light14,792737344,1.000000,1.000000,1.000000,75.000000,1 -15=light15,750794176,1.000000,1.000000,1.000000,75.000000,1 -16=light16,717239744,1.000000,1.000000,1.000000,75.000000,1 -17=light17,679490944,1.000000,1.000000,1.000000,75.000000,1 -18=light18,641742272,1.000000,1.000000,1.000000,75.000000,1 -19=light19,952117568,1.000000,1.000000,1.000000,75.000000,1 -20=light20,910174912,1.000000,1.000000,1.000000,75.000000,1 -21=light21,893398336,1.000000,1.000000,1.000000,75.000000,1 -22=light22,893399104,1.000000,1.000000,1.000000,75.000000,1 -23=light23,843063872,1.000000,1.000000,1.000000,75.000000,1 -24=light24,843062592,1.000000,1.000000,1.000000,75.000000,1 -25=light25,784343872,1.000000,1.000000,1.000000,75.000000,1 -26=light26,717235136,1.000000,1.000000,1.000000,75.000000,1 -27=light27,658514880,1.000000,1.000000,1.000000,75.000000,1 -28=light28,641738432,1.000000,1.000000,1.000000,75.000000,1 -29=light29,998251648,1.000000,1.000000,1.000000,75.000000,1 -30=light30,998250624,1.000000,1.000000,1.000000,75.000000,1 -31=light31,645933952,1.000000,1.000000,1.000000,75.000000,1 -32=light32,599796672,1.000000,1.000000,1.000000,75.000000,1 -33=light33,549465024,1.000000,1.000000,1.000000,75.000000,1 - [Map] Theater=SNOW -X=16 -Y=28 -Width=93 -Height=51 +X=2 +Y=13 +Width=77 +Height=66 [Waypoints] 98=8256 99=8256 [MapPack] -1=FQAAIIH//lMd/4IPABAC/voA//+sAVQdgKwBACCB//5TAP+CDwAQAtc6AIIpABACgQHUeQ -2=D+wgD/+1QA/8IAkADRVAGCFAAQAjAMgigAEAL/+gF6Af/QAHQBggkAEAKBC2ACMBD3WgT/ -3=sACQBOFEBclUBN10A/+wAJAF/wABRAaCCgAQAuc2BOF0Bf+sAJYH/1oARAj/pgCaCO1ECe -4=V0B/8EAZwJ/qQA//9eAEQJ/6IAngv/YgBEDP+eAKAM4UQNgggAEALxbgr/ogCcDP9kAEQO -5=/pwA/8tED8loBXABggcAEAIwDIU+AD4ALUACgSwAAoEuAAL/pACCD3niyzQRy1QH81IQgS -6=YAAv+gAIoQ+SwRgg0AEALXEhLliBH/fACuEf9cACwSgyUAJf/HAH0MMQ6BDMxXFNFUB/F8 -7=Ev6iAP//NgFSFIMnACf/xwCLFYITABAC7TQP/8oAiBX/NgFSF+WIE/5yAP+CDgDTIhqBEU -8=AC/wABQhmBEEACzVgWhQwABAADAAQQAoEFRQAwGIEWQALJOhr/mgCIGP8AASIb3SEd/0YA -9=Qhz/mgCIGv5GAP/JaA0w/v+oAHoa/kYA/8tUBM14Hv96AIYcgMEAACCB//5nAP+CDwAQAt -10=dOAIUmACYAAeCLAP64AP/daACDJwAn/7kAiwCCFAAQAv/6AEoA/yQBRAKCEwAQAtdOBIMl -11=ACX/uQGLA91oA+FkBYMkACT/uQCPAP9mAEQG/poA/9tEB4UeAB4AHwAEcAgwBoEcAAKBHQ -12=ACMAiBIwAC/7gAlAD/HgFECNmMCYECQAL/vgCSAIIaABAC/wABSgrVSAv9Ygv+ogD/20QM -13=2WAM334M/qQA/9tGDdleDd1+Df5iEf+ABwAAIIH//v8f/4CEAgAggQD+qg4AggEC/n0AAI -14=MDBAX+fQAAgwYHCP5+AADNqw4gEIEBYAL+YAAAzSoPABCEAgICAwACIIv/YQBIEMiqDzEK -15=gQEAf4EAAAMACAAHgQP+YQAAYYAxChEAEP4AeoEBEAn+YAAAcYBBCgD4IHsQfP9cAEYQgg -16=ECEd8gAzABgwkKC1EAIPshBxCE/lUAAABoggQFAAVxAEAKIJMheSMB/1gAyBIBboIHCAAF -17=coAwChCGIHdDBf9ZAMgSz6sOYwAh+QMHIQoAgv9UAM0TzyoPYwAxgBB3EYb/VwDGEs+qD8 -18=o0EgAJMggghIEB/1MAyRHUIxRkADH7EI3/VQBHEdWiFBCGEXshfSF8/1YARBLVIhUhABR9 -19=AIUwgkQI/1AAUBbXIxRG+kWHFogxDP5NAADQKg/KtRUAeER+IpAQCv5NAABRgMgjF0EAUA -20=JAhxF6AZIRf/9BANQWZfJl+MmiFyASUHZCdoEBAXxAgwAI/FYYNe9gA82eFswjFzaHNARU -21=ifvXGDXvYAN29dKdF1KASQsgAf9SAM8VIYrMpRJQG0cJgQEojv9FAFIY1AUZzCUTcQAghC -22=B6KZH/UgDYGTGKzKUTyz4agQExADOS/lEAAHF1zzQbMwgAASAM/1UAzBXOqRjLOhkzgkoT -23=/1QAVRrItBvOohdRACD3gQEDivnWG8uXGGBJyKkZzbQbJXcQ/gV9JoX5TxbJGRmEBAUGB0 -24=XbyjEacJ0woRV3EP4UdluQ/0QAXhmBCAD1EIRgkRDnAuZgnSChMQBGhQkNAKb/SwDWGxCE -25=YJE03HCdEARBAGkGJQn/XgDJESGJgwwNDso9HDH3JPz/VgBMFM0gHIERyrwcMflGCedWHo -26=AnAQAggQDwAACDBgcIyicAhwIDAAEBAgAgA4MDAQAgCf5dAAAAYcyoAIYDAwMCAwIghIEC -27=AI8AA/5KAADNtQCEAAMEBc63ABAGIQowf/9LANcAzjQB0DMAAXcAeCEAEIL/TQBVAM20Ad -28=GyACIDQAcQHP9MANYAgwkKC9yTAREAEP8AAhAOEYP/bQBXARD7IYQABwF8/04A1QDQIQLN -29=ogJA+4EBQQf/TgBUA84zAhHoE+VQCkAJMPZAEf5MAADMIgMBZyLvEANAAlAFAAFSBf5LAA -30=DNogNQ9tM4Bf9TAFYAzSMEYPjQugX/TwBTAxABhAQFBgfLpgQF7jDuQ/ZQkhCd/1EA0QWC -31=AAjMtANC6jB+UvsyA/9RANIDEAGDDA0OzBMHQnPRsQX+sRgAgA== - -[TERRAIN] -8754=T01 -8498=T01 -8242=T01 -7986=T01 -7858=T01 -7345=T01 -7346=T01 -7218=T01 -6962=T01 -6706=T01 -6450=T01 -8886=T01 -8631=T01 -8375=T01 -7991=T01 -7864=T01 -7351=T01 -7353=T01 -7355=T01 -7358=T01 -7869=T01 -7095=T01 -6839=T01 -6583=T01 -6327=T01 -6322=T01 -7343=T01 -7340=T01 -7337=T01 -7334=T01 -7331=T01 -7846=T01 -7849=T01 -7852=T01 -7855=T01 -6066=T01 -5682=T01 -5298=T01 -5042=T01 -4786=T01 -5943=T01 -5431=T01 -4919=T01 -7207=T01 -7079=T01 -6823=T01 -6443=T01 -6446=T01 -6448=T01 -6956=T01 -6187=T01 -6678=T01 -6807=T01 +1=BwAAIIH//v8f/4C5AQAggf/+LQj/gzEACQACgTUAAoE0AAL+8gD//9oALgiCJQDNCAqBJA +2=ACyRYKEAKBKQACgUIAAoFKAAL+zgD/7wgKgUngOQqCEAAQAoES1GMLMB6BE9iBC/5oAP8S +3=0jACEtjJDAwQAoE4AAKBNwACEAgTABACgUn//wA5C4E7AAL/ygA8DNsFDskkDYEzAALnNA +4=2CEQAQAvNGDv6WAP+DLwAvIQCBPQAC//gAPA6DLwA///kANw+DMAAwIgCBOQAC/VoQghYA +5=EAL+rgD/UQBUAP/wAEARVAD/AAE4EoE8AAL/TAA8E4VDAEMAKAACgScAAjAIEAb+kgD/gy +6=0ALf8FATMUXAL/SABAFYMsACz/pQCLFYNFAEUpCIFIAAL/UAA8FoEIYAL+lAD/gQUglv9Y +7=ADAXgysAK8iLFztk/m4A/4ICADAC1xIYMQI7EP9EAFYQ3XwY/24AmhjdChkRAoEBAAKBF0 +8=ACyXYN22QNyVIagRhAAtt4F/90AJYZ3wkbEP7/AAEwGoL///9WADIb/4IAiBnjCR0XqMk2 +9=Cv/KAEAZ/34ACh3/ogCIGzX+EKiBQQACGKiBJwAS/8AAQB6AIAEAIIH/7AAAhSwALABBAA +10=KDJwA9AAKE//8RABAC1RgA20AAghYAEAIwDIUrACsACGACgQlAAv6SAP+DMAAwIJr/AAE4 +11=AIFAIAL/SgA+ARJY/6QAjAGDLwAvyjMCghAAEAKBEiACgRPOSwMwHs9MA8lYA/+2AIICgT +12=8gAv9KAD4D/7AAiAH/CAE4BP5IAP8TAFD2cAL+kgD/EwBzAv5KAP/RiAb+lAD/cQCBPgAC +13=gSUgAoEkAAIQCIEnAAKBKEACUAzRWAjNaAgQAoEpAAL/ogCOB8kuCBAC/1oAPgj+mAD/yz +14=AJyzwK+UwJ/6QAjAhVADUCzzgLzY4F9VoL/pwA/80wC3a0z4wF/9QAXAvPMArRQAz3Ugz+ +15=oAD//wABMA3+0BD/gAcAACCB//7/H/+AUwEAIIEA/hgUAIEBIAL+eAAAgwICAxAC/mcAAD +16=DsgQFAB8gRFf5mAAAw7IICA0AHcALQHBWCAQLarxXz0BTPDBUgAtCcFIMDBAXaLxbzUBXO +17=jBVB/s/OFYMGBwjarxb+QwAAggQFEAIQftGcFAFl2CQX/ksAABB+z50WAWXYoxf+SwAAEc +18=7QHBcBZdgjGP5MAABSgNswF/9ZAD8XggMEMYDbrxf/WgC+F1EA2y8Y/1oAPhhRAOKgGGUv +19=/0sAHBVBAOEgGWQy/0sAnBRWgOKgGYEBNDSBBP9MAD8ZVoHgIRoxqv9OABwVUQDiIBkBqi +20=F8/00AyhswW+EgGzCqgQEAg/9MAE0cJYHZsRV0nhKs/1AAmBSEBAUGB9gyFhAfybwa/1EA +21=FxSECAkKC9iyFhAfcwAQAv9PAEodUM3ioRsAAv9PAMkdUM3jIBz/VwBGHgmZ5aAc9cgegB +22=UBACCBANQAAIICAwAChgABAAABAsoLANIhAIEBMCkAM/5KAAAAVIEEAFCDAwQFyY0A0qAA +23=IKwALCCH/kcAAIEDEH0A3oMGBwjJDAHTIAH/VwBFACDeAITboQH/XgDCAACE2yACQKwAAy +24=CC/kkAAEEAAWLboAJBABF8/1QAzAHldAIxqf9MAE4BAE/LsADWqgNSAP9MAE0BAXwRARDa +25=4CEEAAEAsv9LAM0DMQAAUyDc3qMEAAH/TwBKBBJ8gwEBAxEBFIqBBdkmBSP5/0wAzAMxAA +26=DXIQEAAzFecPAjbRBzI3UwpP5OAAAhAFNaQl9TYxCbIBMwCBAi/00ATAFhAEJfyToEEHXS +27=MAT+TwAAIwBAAuGiBP64GACA [UNITS] -0=USSR,4TNK,256,7485,64,Guard,None -1=USSR,4TNK,256,7351,160,Guard,None -2=Greece,2TNK,256,7849,64,Area Guard,None -3=Greece,2TNK,256,7593,64,Area Guard,None -4=Greece,2TNK,256,7723,64,Area Guard,None -5=Greece,2TNK,256,7733,64,Area Guard,None -6=Greece,2TNK,256,7605,64,Area Guard,None +0=USSR,4TNK,256,7705,64,Guard,None +1=USSR,4TNK,256,7321,64,Guard,None +2=USSR,HARV,256,7564,0,Harvest,None [STRUCTURES] -0=USSR,WEAP,256,8890,0,None,0,0 -1=USSR,PROC,256,8378,0,None,0,0 -2=USSR,APWR,256,6971,0,None,0,0 -3=USSR,APWR,256,6458,0,None,0,0 -4=USSR,APWR,256,6462,0,None,0,0 -5=USSR,APWR,256,6975,0,None,0,0 -6=USSR,BARR,256,7618,0,None,0,0 -7=USSR,FACT,256,8769,0,None,1,0 -8=USSR,FACF,256,8383,0,None,0,0 -9=Greece,FACT,256,6310,0,None,0,0 -10=Greece,PROC,256,6692,0,None,0,0 -11=Greece,POWR,256,5927,0,None,0,0 -12=Greece,POWR,256,5801,0,None,0,0 -13=USSR,TSLA,256,7863,0,None,0,0 -14=USSR,TSLA,256,6969,0,None,0,0 -15=USSR,TSLA,256,6967,0,None,0,0 -16=USSR,TSLA,256,6455,0,None,0,0 -17=USSR,TSLA,256,8503,0,None,0,0 -18=Neutral,ABAN01,256,6958,0,None,1,0 -19=Neutral,ABAN01,256,5934,0,None,1,0 -20=Neutral,ABAN01,256,8238,0,None,1,0 -21=Neutral,ABAN01,256,8232,0,None,1,0 -22=Neutral,ABAN01,256,5294,0,None,1,0 -23=Neutral,ABAN02,256,5789,0,None,1,0 -24=Neutral,ABAN02,256,5157,0,None,1,0 -25=Neutral,ABAN02,256,5160,0,None,1,0 -26=Neutral,ABAN03,256,4525,0,None,1,0 -27=Neutral,ABAN03,256,4391,0,None,1,0 -28=Neutral,ABAN03,256,5535,0,None,1,0 -29=Neutral,ABAN03,256,6559,0,None,1,0 -30=Neutral,ABAN03,256,6556,0,None,1,0 -31=Neutral,ABAN03,256,6553,0,None,1,0 -32=Neutral,ABAN03,256,6550,0,None,1,0 -33=Neutral,ABAN03,256,7065,0,None,1,0 -34=Neutral,ABAN03,256,7062,0,None,1,0 -35=Neutral,ABAN03,256,7705,0,None,1,0 -36=Neutral,ABAN03,256,8606,0,None,1,0 -37=Neutral,ABAN03,256,8741,0,None,1,0 -38=Neutral,ABAN01,256,9253,0,None,1,0 -39=Neutral,ABAN01,256,8750,0,None,1,0 +0=USSR,PROC,256,7572,0,None,0,0 +1=USSR,WEAF,256,7188,0,None,0,0 +2=USSR,APWR,256,6416,0,None,0,0 +3=USSR,APWR,256,6928,0,None,0,0 +4=USSR,APWR,256,7440,0,None,0,0 +5=USSR,FCOM,256,7052,0,None,1,0 +6=USSR,TSLA,256,6935,0,None,0,0 +7=USSR,TSLA,256,7575,0,None,0,0 +8=USSR,TSLA,256,6551,0,None,0,0 +9=USSR,TSLA,256,8087,0,None,0,0 +10=USSR,DOME,256,6670,0,None,0,0 +11=USSR,APWR,256,6031,0,None,0,0 +12=USSR,FIX,256,6027,0,None,0,0 +13=Neutral,ABAN01,256,6818,0,None,1,0 +14=Neutral,ABAN01,256,6306,0,None,1,0 +15=Neutral,ABAN01,256,7842,0,None,1,0 +16=Neutral,ABAN01,256,8226,0,None,1,0 +17=Neutral,ABAN01,256,8234,0,None,1,0 +18=Neutral,ABAN01,256,7722,0,None,1,0 +19=Neutral,ABAN02,256,7719,0,None,1,0 +20=Neutral,ABAN02,256,8231,0,None,1,0 +21=Neutral,ABAN03,256,7074,0,None,1,0 +22=Neutral,ABAN03,256,7078,0,None,1,0 +23=Neutral,ABAN03,256,7081,0,None,1,0 +24=Neutral,ABAN01,256,6826,0,None,1,0 +25=Neutral,ABAN01,256,6186,0,None,1,0 +26=Neutral,ABAN01,256,5674,0,None,1,0 +27=Neutral,ABAN02,256,7090,0,None,1,0 +28=Neutral,ABAN02,256,7093,0,None,1,0 +29=Neutral,ABAN03,256,7730,0,None,1,0 +30=Neutral,ABAN03,256,7733,0,None,1,0 +31=Neutral,ABAN03,256,8242,0,None,1,0 +32=Neutral,ABAN03,256,8245,0,None,1,0 +33=Neutral,ABAN02,256,8248,0,None,1,0 +34=Neutral,ABAN01,256,7993,0,None,1,0 +35=Neutral,ABAN01,256,6969,0,None,1,0 +36=Neutral,ABAN01,256,6457,0,None,1,0 +37=Neutral,ABAN01,256,5945,0,None,1,0 +38=Neutral,ABAN03,256,6706,0,None,1,0 +39=Neutral,ABAN03,256,6193,0,None,1,0 +40=Neutral,ABAN03,256,5810,0,None,1,0 +41=Neutral,ABAN03,256,5813,0,None,1,0 +42=Neutral,ABAN02,256,5169,0,None,1,0 +43=Neutral,ABAN02,256,5172,0,None,1,0 +44=Neutral,ABAN02,256,5175,0,None,1,0 +45=Neutral,ABAN02,256,5178,0,None,1,0 [Base] Player=USSR Count=0 [OverlayPack] -1=BwAAIIH//v8f/4ANAAAggf/+twL/gRf+Rx3/gA== +1=bwAAIIH//osZ/4EJ/ncA/4EOAAL+egD/gQv/gQCDGf6CAP+BC/99AIsagQwAAsiBGv5zAP +2=+BCv+GAIsa/3oAiByFCv8KDAr+fQD/gQwA/QIH/noA/4QM/woJ/30Aix2BDAB/gQv/fAAJ +3=HAB8AIL+bgD/gFkAACCB/3ABiQoM/wn/DP8KCf54AP+HCQoMC/8JDAAF/nsA/4EJIAH+eQ +4=D/gQkggf56AP8AfP+AAJIBEH//egATAP97ABYCyIkB/n4A//+AABED/4IAEQP+6Rr/gA== [Briefing] 1=A pitiful excuse for resistance has blockaded itself in this village. @@ -337,5 +248,5 @@ Count=0 4=lesson. [Digest] -1=peEItXFyqYWHfJBKwv0SfgOOEQU= +1=J7Dspa7Ucxg9abSb1M7XJAbIn64= diff --git a/code/redalert/cdata.cpp b/code/redalert/cdata.cpp index 56ca9b6..b79143f 100644 --- a/code/redalert/cdata.cpp +++ b/code/redalert/cdata.cpp @@ -235,6 +235,49 @@ static TemplateTypeClass const Clear( "CLEAR01", TXT_CLEAR ); +static TemplateTypeClass const ClearA( + TEMPLATE_CLEAR1A, + THEATERF_TEMPERATE | THEATERF_SNOW | THEATERF_INTERIOR, + "CLEAR01A", + TXT_CLEAR +); +static TemplateTypeClass const ClearB( + TEMPLATE_CLEAR1B, + THEATERF_TEMPERATE | THEATERF_SNOW | THEATERF_INTERIOR, + "CLEAR01B", + TXT_CLEAR +); +static TemplateTypeClass const ClearC( + TEMPLATE_CLEAR1C, + THEATERF_TEMPERATE | THEATERF_SNOW | THEATERF_INTERIOR, + "CLEAR01C", + TXT_CLEAR +); +static TemplateTypeClass const ClearD( + TEMPLATE_CLEAR1D, + THEATERF_TEMPERATE | THEATERF_SNOW | THEATERF_INTERIOR, + "CLEAR01D", + TXT_CLEAR +); +static TemplateTypeClass const ClearE( + TEMPLATE_CLEAR1E, + THEATERF_TEMPERATE | THEATERF_SNOW | THEATERF_INTERIOR, + "CLEAR01E", + TXT_CLEAR +); +static TemplateTypeClass const ClearF( + TEMPLATE_CLEAR1F, + THEATERF_TEMPERATE | THEATERF_SNOW | THEATERF_INTERIOR, + "CLEAR01F", + TXT_CLEAR +); +static TemplateTypeClass const ClearG( + TEMPLATE_CLEAR1G, + THEATERF_TEMPERATE | THEATERF_SNOW | THEATERF_INTERIOR, + "CLEAR01G", + TXT_CLEAR +); + static TemplateTypeClass const Road01( TEMPLATE_ROAD01, THEATERF_TEMPERATE|THEATERF_SNOW, @@ -2126,6 +2169,13 @@ void TemplateTypeClass::Init_Heap(void) ** allocation block index serves double duty as the type number index. */ (void)new TemplateTypeClass(Clear); // TEMPLATE_CLEAR1 + (void)new TemplateTypeClass(ClearA); // TEMPLATE_CLEAR1 + (void)new TemplateTypeClass(ClearB); // TEMPLATE_CLEAR1 + (void)new TemplateTypeClass(ClearC); // TEMPLATE_CLEAR1 + (void)new TemplateTypeClass(ClearD); // TEMPLATE_CLEAR1 + (void)new TemplateTypeClass(ClearE); // TEMPLATE_CLEAR1 + (void)new TemplateTypeClass(ClearF); // TEMPLATE_CLEAR1 + (void)new TemplateTypeClass(ClearG); // TEMPLATE_CLEAR1 (void)new TemplateTypeClass(Water); // TEMPLATE_WATER (void)new TemplateTypeClass(Water2); // TEMPLATE_WATER2 (void)new TemplateTypeClass(PRoad01); diff --git a/code/redalert/cell.cpp b/code/redalert/cell.cpp index 5103c1f..768f82d 100644 --- a/code/redalert/cell.cpp +++ b/code/redalert/cell.cpp @@ -1119,7 +1119,10 @@ void CellClass::Draw_It(int x, int y, bool objects) ttype = &TemplateTypeClass::As_Reference(TType); icon = TIcon; } else { - ttype = &TemplateTypeClass::As_Reference(TEMPLATE_CLEAR1); +// jmarshall - alternate between the clear tiles if no tile set. + int offset = ((celly % 2) == 1) ? 1 : 0; + ttype = &TemplateTypeClass::As_Reference((TemplateType)(TEMPLATE_CLEAR1 + ((cellx + offset) % TEMPLATE_CLEAR1F))); +// jmarshall end icon = Clear_Icon(); } @@ -1168,11 +1171,12 @@ void CellClass::Draw_It(int x, int y, bool objects) ConvertCoordsToIsometric(xx, yy); lastRenderX = xx; lastRenderY = yy; + int ticon = icon; LogicPage->Draw_Stamp(ttype->Get_HDImage_Data(), icon, xx, yy, NULL, WINDOW_TACTICAL); // jmarshall end - if (remap) { - LogicPage->Remap(x+Map.TacPixelX, y+Map.TacPixelY, ICON_PIXEL_W, ICON_PIXEL_H, remap); - } + //if (remap) { + // LogicPage->Remap(x+Map.TacPixelX, y+Map.TacPixelY, ICON_PIXEL_W, ICON_PIXEL_H, remap); + //} } #ifdef SCENARIO_EDITOR diff --git a/code/redalert/defines.h b/code/redalert/defines.h index 7d87be7..32f3f39 100644 --- a/code/redalert/defines.h +++ b/code/redalert/defines.h @@ -1744,6 +1744,13 @@ typedef enum AircraftType : char { */ typedef enum TemplateType : unsigned short { TEMPLATE_CLEAR1, + TEMPLATE_CLEAR1A, + TEMPLATE_CLEAR1B, + TEMPLATE_CLEAR1C, + TEMPLATE_CLEAR1D, + TEMPLATE_CLEAR1E, + TEMPLATE_CLEAR1F, + TEMPLATE_CLEAR1G, TEMPLATE_WATER, // This must be the first non-clear template. TEMPLATE_WATER2, TEMPLATE_PROAD01, diff --git a/code/redalert/win32lib/gbuffer.h b/code/redalert/win32lib/gbuffer.h index a42eb20..fde5a62 100644 --- a/code/redalert/win32lib/gbuffer.h +++ b/code/redalert/win32lib/gbuffer.h @@ -1041,8 +1041,9 @@ inline void GraphicViewPortClass::Draw_Stamp(void const * icondata, int icon, in if (Lock()){ UnCachedIconsDrawn++; extern int ScreenHeight, ScreenWidth; - if(y_pixel < ScreenHeight && x_pixel < ScreenWidth) + if (y_pixel < ScreenHeight && x_pixel < ScreenWidth) { Buffer_Draw_Stamp_Clip(this, icondata, icon, x_pixel, y_pixel, remap, WindowList[clip_window][WINDOWX], WindowList[clip_window][WINDOWY], WindowList[clip_window][WINDOWWIDTH], WindowList[clip_window][WINDOWHEIGHT]); + } } } Unlock();