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:
parent
e37e174be1
commit
fd05be35c1
68 changed files with 1313 additions and 267 deletions
|
@ -282,7 +282,7 @@ EventClass::EventClass(EventType type, TargetClass src, TargetClass dest)
|
|||
* HISTORY: *
|
||||
* 05/19/1995 JLB : Created. *
|
||||
*=============================================================================================*/
|
||||
EventClass::EventClass(AnimType anim, HousesType owner, COORDINATE coord)
|
||||
EventClass::EventClass(AnimType anim, HousesType owner, COORDINATE coord, int visible)
|
||||
{
|
||||
ID = PlayerPtr->ID;
|
||||
Type = ANIMATION;
|
||||
|
@ -290,6 +290,7 @@ EventClass::EventClass(AnimType anim, HousesType owner, COORDINATE coord)
|
|||
Data.Anim.What = anim;
|
||||
Data.Anim.Owner = owner;
|
||||
Data.Anim.Where = coord;
|
||||
Data.Anim.Visible = visible;
|
||||
}
|
||||
|
||||
|
||||
|
@ -600,14 +601,17 @@ void EventClass::Execute(void)
|
|||
case ANIMATION:
|
||||
anim = new AnimClass(Data.Anim.What, Data.Anim.Where);
|
||||
if (anim) {
|
||||
//2019/09/19 JAS - Visibility needs to be determined per player
|
||||
if (Data.Anim.Owner == HOUSE_NONE || Data.Anim.What != ANIM_MOVE_FLASH)
|
||||
{
|
||||
anim->Set_Visible_Flags(static_cast<unsigned int>(-1));
|
||||
}
|
||||
else
|
||||
{
|
||||
anim->Set_Visible_Flags(1 << Data.Anim.Owner);
|
||||
anim->Set_Owner(Data.Anim.Owner);
|
||||
anim->Set_Visible_Flags(static_cast<unsigned int>(Data.Anim.Visible));
|
||||
/*
|
||||
** Beacons have a 30-second kill time.
|
||||
*/
|
||||
if (Data.Anim.What == ANIM_BEACON) {
|
||||
FILETIME ft;
|
||||
GetSystemTimeAsFileTime(&ft);
|
||||
|
||||
unsigned long long kill_time = ((unsigned long long)ft.dwLowDateTime + ((unsigned long long)ft.dwHighDateTime << 32ULL)) + 300000000ULL;
|
||||
anim->Kill_At(kill_time);
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
|
Reference in a new issue