mirror of
https://github.com/electronicarts/CnC_Remastered_Collection.git
synced 2026-07-04 09:13:13 -04:00
September 16th patch update
DLL version incremented Beacon functionality added Support for loading screen match preview display Placeholder handling of new key-bindable mod commands
This commit is contained in:
+39
-1
@@ -249,6 +249,8 @@ void AnimClass::Draw_It(int x, int y, WindowNumberType window)
|
||||
int shapenum = Class->Start + Fetch_Stage();
|
||||
void const * remap = NULL;
|
||||
ShapeFlags_Type flags = SHAPE_CENTER|SHAPE_WIN_REL;
|
||||
int width = 0;
|
||||
int height = 0;
|
||||
|
||||
/*
|
||||
** Some animations require special fixups.
|
||||
@@ -276,6 +278,12 @@ void AnimClass::Draw_It(int x, int y, WindowNumberType window)
|
||||
y += (3 * ICON_PIXEL_H / 4) - Get_Build_Frame_Height(shapefile);
|
||||
transtable = Map.UnitShadow;
|
||||
break;
|
||||
|
||||
case ANIM_BEACON_VIRTUAL:
|
||||
width = 29;
|
||||
height = 39;
|
||||
flags = flags | SHAPE_BOTTOM | SHAPE_COMPACT;
|
||||
break;
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -303,7 +311,7 @@ void AnimClass::Draw_It(int x, int y, WindowNumberType window)
|
||||
** Draw the animation shape, but ignore legacy if beyond normal stage count.
|
||||
*/
|
||||
if ((window == WINDOW_VIRTUAL) || (Fetch_Stage() < Class->Stages)) {
|
||||
CC_Draw_Shape(this, shapefile, shapenum, x, y, window, flags, remap, transtable, Class->VirtualScale);
|
||||
CC_Draw_Shape(this, shapefile, shapenum, x, y, window, flags, remap, transtable, Class->VirtualScale, width, height);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -571,6 +579,7 @@ AnimClass::AnimClass(AnimType animnum, COORDINATE coord, unsigned char timedelay
|
||||
Object = 0;
|
||||
SortTarget = TARGET_NONE;
|
||||
OwnerHouse = HOUSE_NONE;
|
||||
KillTime = 0ULL;
|
||||
|
||||
if (Class->Stages == -1) {
|
||||
((int&)Class->Stages) = Get_Build_Frame_Count(Class->Get_Image_Data());
|
||||
@@ -732,6 +741,19 @@ void AnimClass::AI(void)
|
||||
IsToDelete = true;
|
||||
}
|
||||
|
||||
/*
|
||||
** Check the kill time.
|
||||
*/
|
||||
if (KillTime > 0ULL) {
|
||||
FILETIME ft;
|
||||
GetSystemTimeAsFileTime(&ft);
|
||||
|
||||
unsigned long long now = (unsigned long long)ft.dwLowDateTime + ((unsigned long long)ft.dwHighDateTime << 32ULL);
|
||||
if (now >= KillTime) {
|
||||
IsToDelete = true;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
** Delete this animation and bail early if the animation is flagged to be deleted
|
||||
** immediately.
|
||||
@@ -1292,4 +1314,20 @@ void AnimClass::Detach(TARGET target, bool all)
|
||||
IsToDelete = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void AnimClass::Set_Owner(HousesType owner)
|
||||
{
|
||||
OwnerHouse = owner;
|
||||
if (VirtualAnim != NULL) {
|
||||
VirtualAnim->Set_Owner(owner);
|
||||
}
|
||||
}
|
||||
|
||||
void AnimClass::Set_Visible_Flags(unsigned flags)
|
||||
{
|
||||
VisibleFlags = flags;
|
||||
if (VirtualAnim != NULL) {
|
||||
VirtualAnim->Set_Visible_Flags(flags);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user