diff --git a/SCU01EA.INI b/SCU01EA.INI index a335c4d..853fe0b 100644 --- a/SCU01EA.INI +++ b/SCU01EA.INI @@ -103,7 +103,7 @@ Allies=Special [Basic] Name=In the thick of it -Intro=AAGUN +Intro= Brief= Win= Lose= @@ -130,51 +130,120 @@ Percent=0 [Greece] PlayerControl=yes -[USSR] -Credits=53 - [Map] Theater=SNOW -X=49 -Y=49 -Width=30 -Height=30 +X=16 +Y=28 +Width=93 +Height=51 [Waypoints] 98=8256 99=8256 [MapPack] -1=BwAAIIH//v8f/4BkAAAggf/+YRX/hQMAAwAEAAKBBUACyWYVgwYABwAC/t4A//8AAWIVgg -2=EA2WIX/wABgBb+4gD/ghUAEAKBFiAGEAKBFAACgRMAAoEYAAKBFwACgRb/3wB/GP8AAWIZ -3=1WEbUQD+fgT/gAcAACCB//7/H/+ABwAAIIH//v8f/4BWAAAggQD+sRoAgQHKsRoQA/5tAA -4=CCAgPJMRuDAQID/nAAAMq2GoMBBAX+bwAAyDMbEAX+cgAAgQEw+XEG/m4AAIICAxH1yDUb -5=/nsAAIIEBf9xAMAb/tABAIAHAAAggQD+/x8AgA== +1=BwAAIIH//v8f/4A/AQAggf/+cwD/gikAEAKBAdR5AP7iAP/bdAD/1gCQAIIUABACMAyCKA +2=AQAv/6AXoB/wABdAHddAT/1ACQBIIPABAC424D/9QAkAX/DAFoBuF0Bf/QAJYH82gI/8oA +3=mgjxaAf/BAGcCf7IAP/3aAn/xgCeC/toDP/CAKAMgggAEALxbgr/xgCcDP1oDv7AAP+CBw +4=AQAjAMhT4APgAtQAKBLAACgS4AAv/gAIIP3WgQgSYAAv/cAIoQgg0AEALXThLliBH/uACu +5=Ed1oEoMlACX//QCLEv/gAIgRggoAEAL/GgFuFIMnACf//QGLFP8AAYgX5YgT/rgA///aAG +6=gZghAAMAKBDM5JG4MEAAMABBACgwUACSACMBiBFkACgRFAAv++AIQY/0YBQhv/4ACIGclo +7=DTD+/+4AehnJaB4RAv+IAHgYgJwAACCB//5nAP+CDwAQAtdOAIUmACYAAeCLAP64AP/daA +8=CDJwAn//0AiwD/AAGIAP/gAIgCghMAEALXTgSDJQAl//0BiwODJAAk/9kAjwX/RgBkBv64 +9=AP+FHgAeAB8ABHAIMAaBHAACgR0AAjAIgSMAAv/WAJAG/wABYgjZjAmBAkAC/9oAjgb/Qg +10=FgCv7CAP/5ZAz+yAD/82gN/mIR/4AHAAAggf/+/x//gAsCACCBAP46EACCAQIQBWAC/nAA +11=AIcDBAUCAgIDAAIgi/9sAEgQIPoABoMCAgAAAwAIAAeBA/5qAAAA+kEAEP4AeoEBEAn+ag +12=AAgwYHCEEAIHsQfP9tAEYQgwkKC1EAIPshBxCE/mcAADGAInUxeSMB/2oAyBIxgBCGIHdD +13=Bf9rAMgSYwAh+QMHIQoAgv9mAM0TYwAxgBB3EYb/aQDGEso0EgAJMggghIEB/2UAyREhgG +14=QAMfsQjf9nAEcRcwAReyF9IXz/aABEEmMABHwyADCCRAj/YgBQFlMARvpFhxaIMQz+YAAA +15=yrUVAHhEfiKQEAr+YAAAQQBQAkCHEXoBkhF//18A1BYggFB2QnaBAQF8QIMACP9eAFYYMQ +16=BgATaHNARUif9cANcYQ4DIOxkygEkLIAH/XADTF0UAyCsZRwmBASiO/2IAUhjONRlGiSB6 +17=KZH/XQDTF820GVEAgQExADOS/lsAAM80GjMIAAEgDP9hAMwV0DUZM4JKE/9fAFUazzQbQQ +18=Ag94EBA4r/XgDWG820GyV3EP4FfSaF/00ATxY120ADYYA6fSAENXcQ/hR2W5D+SAAAhAQF +19=BgcBcTADEOcC5iAMEBkQBEEARoUJDQCm/0sA1hyBCAvuAXEwAzTcMAwQGRAEQQBpBiUJ/2 +20=MA1xuDDA0Oyj0cMfck/P9fANUYQwCBEcq8HDH5RgnnVh6A9gAAIIEA8AAAgwYHCMonAIcC +21=AwABAQIAIAODAwEAIAn+XQAAAGHMqACGAwMDAgMCIISBAgCPAAP+WwAAgwMEBc63ABAGIQ +22=owf/9dANcAzzQAAXcAeCEAEIL/cQBVACIDQAcQHP9uANYAEQAQ/wACEA4Rg/9tAFcBEPsh +23=hAAHAXz/XwBVAoUAAAkKC8+3AgF6QQf/XwBUAxHoE+VQCkAJMPZAEf5bAAABZyLvEANAAl +24=AFAAFSBf5bAABQ9tM4Bf9fAFIENG3XswX/YQBTAxGABe4w7kP2UJIQnf9gANEFNm4i7zAE +25=MvsyA/9gANIDc3DIwQbLwgX+sBgAgA== + +[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 [UNITS] -0=USSR,4TNK,256,7620,32,Guard,None -1=USSR,4TNK,256,8386,0,Guard,None -2=USSR,4TNK,256,7495,0,Move,None +0=USSR,4TNK,256,7485,64,Guard,None +1=USSR,4TNK,256,7351,160,Guard,None [STRUCTURES] -0=USSR,FACT,256,7861,0,None,0,0 -1=USSR,PROC,256,7865,0,None,0,0 -2=USSR,PROC,256,8377,0,None,0,0 -3=USSR,POWR,256,6323,0,None,0,0 -4=USSR,POWR,256,6326,0,None,0,0 -5=USSR,POWR,256,6330,0,None,0,0 -6=USSR,POWR,256,6333,0,None,0,0 -7=USSR,APWR,256,7869,0,None,0,0 -8=USSR,APWR,256,8382,0,None,0,0 -9=USSR,BARR,256,8373,0,None,0,0 -10=USSR,FIX,256,8885,0,None,0,0 +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,FCOM,256,8769,0,None,1,0 +8=USSR,TSLA,256,8894,0,None,0,0 +9=USSR,TSLA,256,8899,0,None,0,0 +10=USSR,TSLA,256,8259,0,None,0,0 +11=USSR,TSLA,256,7875,0,None,0,0 +12=USSR,TSLA,256,7107,0,None,0,0 +13=USSR,TSLA,256,6467,0,None,0,0 +14=USSR,FACF,256,8383,0,None,0,0 +15=Greece,FACT,256,6310,0,None,0,0 +16=Greece,PROC,256,6692,0,None,0,0 +17=Greece,POWR,256,5927,0,None,0,0 +18=Greece,POWR,256,5801,0,None,0,0 [Base] Player=USSR Count=0 [OverlayPack] -1=BwAAIIH//v8f/4AHAAAggf/+/x//gA== +1=BwAAIIH//v8f/4ANAAAggf/+twL/gRf+Rx3/gA== [Briefing] 1=A pitiful excuse for resistance has blockaded itself in this village. @@ -183,5 +252,5 @@ Count=0 4=lesson. [Digest] -1=lyey0f+Q6FftYusQAt1JVAjsSDQ= +1=biEmbFbbLwAnQPJtEzp0VgnU4cA= diff --git a/code/redalert/cell.cpp b/code/redalert/cell.cpp index dd19b73..cc3686c 100644 --- a/code/redalert/cell.cpp +++ b/code/redalert/cell.cpp @@ -1008,10 +1008,12 @@ void CellClass::ConvertCoordsToIsometric(int& x, int& y) { y = sy;// + (CELL_PIXEL_W / 2); x = x + (ScreenWidth / 2); + y = y - (ScreenWidth / 4); } bool CellClass::ScreenCoordsToIsoTile(int x, int y, int &tileX, int &tileY) { x = x - (ScreenWidth / 2); + y = y + (ScreenWidth / 4); float tempPt_x = (2 * y + x) / 2; float tempPt_y = (2 * y - x) / 2; diff --git a/code/redalert/display.cpp b/code/redalert/display.cpp index 2512b3a..ece8206 100644 --- a/code/redalert/display.cpp +++ b/code/redalert/display.cpp @@ -571,10 +571,10 @@ short const * DisplayClass::Text_Overlap_List(char const * text, int x, int y) c void DisplayClass::Set_View_Dimensions(int x, int y, int width, int height) { if (width == -1) width = SeenBuff.Get_Width(); - TacLeptonWidth = Pixel_To_Lepton( width - x) * 2; + TacLeptonWidth = Pixel_To_Lepton( width - x) * 2.5; if (height == -1) height = SeenBuff.Get_Height(); - TacLeptonHeight = Pixel_To_Lepton(height - y) * 2; + TacLeptonHeight = Pixel_To_Lepton(height - y) * 4; /* ** Adjust the tactical cell if it is now in an invalid position diff --git a/code/redalert/newblit.cpp b/code/redalert/newblit.cpp index 10b090d..53e61b0 100644 --- a/code/redalert/newblit.cpp +++ b/code/redalert/newblit.cpp @@ -25,6 +25,14 @@ void GL_ResetClipRect(void) { } void GL_RenderImage(Image_t* image, int x, int y, int width, int height, int colorRemap, int shapeId) { + if(x < 0 || y < 0) { + return; + } + + if(x >= ScreenWidth || y >= ScreenHeight) { + return; + } + ImVec2 mi(x, y); ImVec2 ma(x + width, y + height);