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:
PG-SteveT 2020-09-16 10:03:04 -07:00
parent e37e174be1
commit fd05be35c1
68 changed files with 1313 additions and 267 deletions

View file

@ -1850,7 +1850,7 @@ void BuildingClass::Active_Click_With(ActionType action, CELL cell)
OutList.Add(EventClass(EventClass::SELL, TargetClass(this)));
COORDINATE coord = Map.Pixel_To_Coord(Get_Mouse_X(), Get_Mouse_Y());
OutList.Add(EventClass(ANIM_MOVE_FLASH, PlayerPtr->Class->House, coord));
OutList.Add(EventClass(ANIM_MOVE_FLASH, PlayerPtr->Class->House, coord, 1 << PlayerPtr->Class->House));
}
}
@ -3152,7 +3152,7 @@ bool BuildingClass::Captured(HouseClass * newowner)
assert(Buildings.ID(this) == ID);
assert(IsActive);
if (Class->IsCaptureable && newowner != House) {
if (Can_Capture() && newowner != House) {
#ifdef TOFIX
switch (Owner()) {
case HOUSE_GOOD:
@ -3457,6 +3457,19 @@ bool BuildingClass::Can_Demolish_Unit(void) const
}
bool BuildingClass::Can_Capture(void) const
{
bool can_capture = Class->IsCaptureable && Mission != MISSION_DECONSTRUCTION;
// Only allow capturing of multiplayer-owned structures
if (Session.Type != GAME_NORMAL) {
can_capture &= House->Class->House >= HOUSE_MULTI1 && House->Class->House <= HOUSE_MULTI8;
}
return(can_capture);
}
/***********************************************************************************************
* BuildingClass::Mission_Guard -- Handles guard mission for combat buildings. *
* *
@ -3759,6 +3772,7 @@ int BuildingClass::Mission_Deconstruction(void)
Status = DURING;
Begin_Mode(BSTATE_CONSTRUCTION);
IsReadyToCommence = false;
IsSurvivorless = true;
break;
}
Transmit_Message(RADIO_RUN_AWAY);