mirror of
https://github.com/ChocoTaco1/zDiscord-Map-Pack.git
synced 2026-01-20 02:04:48 +00:00
49 lines
1.4 KiB
C#
49 lines
1.4 KiB
C#
//Vehicle Respawn bug fix - Respawn schedules carrying into map changes
|
|
package VehicleRespawnFix
|
|
{
|
|
|
|
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
|
|
if (!isActivePackage(VehicleRespawnFix))
|
|
activatePackage(VehicleRespawnFix); |