diff --git a/Tactical/Soldier Control.cpp b/Tactical/Soldier Control.cpp index b571ae88..acd5c5f9 100644 --- a/Tactical/Soldier Control.cpp +++ b/Tactical/Soldier Control.cpp @@ -7199,6 +7199,13 @@ BOOLEAN SOLDIERTYPE::EVENT_InternalGetNewSoldierPath( INT32 sDestGridNo, UINT16 BOOLEAN fAdvancePath = TRUE; UINT8 fFlags = 0; + //shadooow: if collapsed and enough breath, get up first and wait for new input + if (this->bCollapsed && this->bBreath >= OKBREATH) + { + this->BeginSoldierGetup(); + if(!this->bCollapsed) return FALSE; + } + // Ifd this code, make true if a player if ( fFromUI == 3 ) { diff --git a/Tactical/Turn Based Input.cpp b/Tactical/Turn Based Input.cpp index bc84d9bb..1ccce220 100644 --- a/Tactical/Turn Based Input.cpp +++ b/Tactical/Turn Based Input.cpp @@ -6306,6 +6306,10 @@ void HandleStanceChangeFromUIKeys( UINT8 ubAnimHeight ) if (gAnimControl[pSoldier->usAnimState].ubEndHeight != ubAnimHeight) pSoldier->usPendingAnimation = usNewState; } + else if (pSoldier->bCollapsed && pSoldier->bBreath >= OKBREATH) + { + pSoldier->BeginSoldierGetup(); + } else { UIHandleSoldierStanceChange(pSoldier->ubID, ubAnimHeight);