Switched civilian building anims over to the TS SHP pipeline(from PNG) so the shadows work and such but for some reason these three civi buildings are more yellow need to look into that.

This commit is contained in:
Justin Marshall
2020-08-05 12:55:32 -07:00
parent 9ca02bef6e
commit dcd40b2018
3 changed files with 36 additions and 62 deletions
+23 -24
View File
@@ -468,6 +468,29 @@ void BuildingClass::Draw_It(int x, int y, WindowNumberType window) const
** Actually draw the building shape.
*/
IsTheaterShape = Class->IsTheater; //Let Build_Frame know if this is a theater specific shape
// jmarshall - shadows are going to need to be done differently, but for now this will work.
if (Get_Build_TS_Shape(shapefile) && hdimage == NULL)
{
CCGlobalShadowRender = true;
{
int shadowFrameOffset = Get_Build_Frame_Count(shapefile) / 2;
Techno_Draw_Object(shapefile, shadowFrameOffset + Shape_Number(), x, y, window);
}
if (Class->IdleHasShadowFrames && Class->IdleAnimShape != NULL) {
int shapeNum = animFrameNum;
int maxframes = Get_Build_Frame_Count(Class->IdleAnimShape);
if (Class->IdleAnimNonDamagedFrames != -1) {
maxframes = Class->IdleAnimNonDamagedFrames;
}
shapeNum = shapeNum % maxframes;
int shadowFrameOffset = Get_Build_Frame_Count(Class->IdleAnimShape) / 2;
Techno_Draw_Object(Class->IdleAnimShape, shadowFrameOffset + shapeNum, x, y, window);
}
CCGlobalShadowRender = false;
}
// jmarshall end
// jmarshall - added HD support & custom palette support.
PaletteClass globalPal = CCPalette;
if(Class->CustomTheatrePalette[LastTheater] != NULL) {
@@ -537,30 +560,6 @@ void BuildingClass::Draw_It(int x, int y, WindowNumberType window) const
CCGlobalOveridePalette = NULL;
// jmarshall end
// jmarshall - shadows are going to need to be done differently, but for now this will work.
if (Get_Build_TS_Shape(shapefile) && hdimage == NULL)
{
CCGlobalShadowRender = true;
{
int shadowFrameOffset = Get_Build_Frame_Count(shapefile) / 2;
Techno_Draw_Object(shapefile, shadowFrameOffset + Shape_Number(), x, y, window);
}
if (Class->IdleHasShadowFrames && Class->IdleAnimShape != NULL) {
int shapeNum = animFrameNum;
int maxframes = Get_Build_Frame_Count(Class->IdleAnimShape);
if (Class->IdleAnimNonDamagedFrames != -1) {
maxframes = Class->IdleAnimNonDamagedFrames;
}
shapeNum = shapeNum % maxframes;
int shadowFrameOffset = Get_Build_Frame_Count(Class->IdleAnimShape) / 2;
Techno_Draw_Object(Class->IdleAnimShape, shadowFrameOffset + shapeNum, x, y, window);
}
CCGlobalShadowRender = false;
}
// jmarshall end
IsTheaterShape = false;
/*
+1 -36
View File
@@ -3,42 +3,7 @@
<TilesetTypeClass name="RA_Structures">
<RootTexturePath>Red_Alert\Structures</RootTexturePath>
<Tiles>
<Tile>
<Key>
<Name>ABAN01</Name>
<Shape>0</Shape>
</Key>
<Value>
<Frames>
<Frame>ABAN04/aban04_0000.png</Frame>
<Frame>ABAN04/aban04_0001.png</Frame>
</Frames>
</Value>
</Tile>
<Tile>
<Key>
<Name>ABAN02</Name>
<Shape>0</Shape>
</Key>
<Value>
<Frames>
<Frame>ABAN05/aban12_0000.png</Frame>
<Frame>ABAN05/aban12_0001.png</Frame>
</Frames>
</Value>
</Tile>
<Tile>
<Key>
<Name>ABAN03</Name>
<Shape>0</Shape>
</Key>
<Value>
<Frames>
<Frame>ABAN06/aban06_0000.png</Frame>
<Frame>ABAN06/aban06_0001.png</Frame>
</Frames>
</Value>
</Tile>
</Tiles>
</TilesetTypeClass>
</Tilesets>
+12 -2
View File
@@ -8,7 +8,7 @@
[General]
; dev options
FastBuild=0
FastBuild=1
; crates
CrateMinimum=1 ; crates are normally one per human player but never below this number
@@ -1486,6 +1486,7 @@ ActiveAnimNonDamagedStart=0
ActiveAnimNonDamagedFrames=9
ActiveAnimDamagedStart=10
ActiveAnimDamagedFrames=9
IdleAnimIgnorePowerState=1
; refinery
[PROC]
@@ -3071,15 +3072,24 @@ Strength=400
Points=5
Armor=wood
Repariable=false
Snow=isosno.pal
Temperate=isotem.pal
Image=aban04
[ABAN02]
Strength=400
Points=5
Armor=wood
Repariable=false
Snow=isosno.pal
Temperate=isotem.pal
Image=aban12
[ABAN03]
Strength=400
Points=5
Armor=wood
Repariable=false
Repariable=false
Snow=isosno.pal
Temperate=isotem.pal
Image=aban06