forked from Mirrors/openclonk
Hot Ice: Fix movement/fire carrying over from previous round
parent
d0c800d27a
commit
0d21b0b12d
|
@ -21,8 +21,8 @@ func Initialize()
|
|||
func ResetRound()
|
||||
{
|
||||
// Retrieve all Clonks.
|
||||
var clonks = FindObjects(Find_OCF(OCF_CrewMember));
|
||||
for (var clonk in clonks)
|
||||
var clonks = [];
|
||||
for (var clonk in FindObjects(Find_OCF(OCF_CrewMember)))
|
||||
{
|
||||
var container = clonk->Contained();
|
||||
if (container)
|
||||
|
@ -30,6 +30,15 @@ func ResetRound()
|
|||
clonk->Exit();
|
||||
container->RemoveObject();
|
||||
}
|
||||
else
|
||||
{
|
||||
// Players not waiting for a relaunch get a new Clonk to prevent
|
||||
// status effects from carrying over to the next round.
|
||||
var new_clonk = CreateObject(clonk->GetID(), 0, 0, clonk->GetOwner());
|
||||
new_clonk->GrabObjectInfo(clonk);
|
||||
clonk = new_clonk;
|
||||
}
|
||||
PushBack(clonks, clonk);
|
||||
clonk->SetObjectStatus(C4OS_INACTIVE);
|
||||
}
|
||||
// Clear and redraw the map.
|
||||
|
|
Loading…
Reference in New Issue