mirror of
https://github.com/ChocoTaco1/TacoServer.git
synced 2026-01-20 00:24:49 +00:00
Vehicle Respawn Fix
This commit is contained in:
parent
219a4e6cca
commit
8640aa0b0f
|
|
@ -250,6 +250,47 @@ function serverCmdThrow(%client, %data)
|
|||
%client.tossTime = getSimTime();
|
||||
}
|
||||
|
||||
//Vehicle Respawn bug fix - Respawn schedules carrying into map changes
|
||||
function VehicleData::respawn(%data, %marker)
|
||||
{
|
||||
if($MatchStarted + $missionRunning == 2 && isObject(%marker))
|
||||
{
|
||||
%mask = $TypeMasks::PlayerObjectType | $TypeMasks::VehicleObjectType | $TypeMasks::TurretObjectType;
|
||||
InitContainerRadiusSearch(%marker.getWorldBoxCenter(), %data.checkRadius, %mask);
|
||||
if(containerSearchNext() == 0)
|
||||
{
|
||||
%newObj = %data.create(%marker.curTeam, %marker);
|
||||
%newObj.startFade(1000, 0, false);
|
||||
%newObj.setTransform(%marker.getTransform());
|
||||
|
||||
setTargetSensorGroup(%newObj.target, %newObj.team);
|
||||
MissionCleanup.add(%newObj);
|
||||
}
|
||||
else
|
||||
{
|
||||
%marker.schedule = %data.schedule(3000, "respawn", %marker);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function VehicleData::createPositionMarker(%data, %obj)
|
||||
{
|
||||
%marker = new Trigger(PosMarker)
|
||||
{
|
||||
dataBlock = markerTrigger;
|
||||
mountable = %obj.mountable;
|
||||
disableMove = %obj.disableMove;
|
||||
resetPos = %obj.resetPos;
|
||||
data = %obj.getDataBlock().getName();
|
||||
deployed = %obj.deployed;
|
||||
curTeam = %obj.team;
|
||||
respawnTime = %obj.respawnTime;
|
||||
};
|
||||
%marker.setTransform(%obj.getTransform());
|
||||
MissionCleanup.add(%marker);
|
||||
return %marker;
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
// Prevent package from being activated if it is already
|
||||
|
|
|
|||
Loading…
Reference in a new issue