Sie sind auf Seite 1von 3

datablock TriggerData(AITestTrigger)

{
formationPosition = "227.314 72.6433 877.225";
tickPeriodMS = 100;
};
function AITestTrigger::onEnterTrigger(%unused, %trigger, %obj)
{
%line1 = %trigger.script;
%client = %obj.client;
%used = %trigger.usedup;
%NPCBased = %trigger.NPCBased;
if ((%client $= "") && !((%used $= "true")))
{
if (((%NPCBased $= "all") || (%NPCBased $= "true")) && !((%used $= "true
")))
{
if (!(%line1 $= ""))
{
FireScriptActions(%obj, %line1);
%trigger.usedup = "true";
deactivateEnergyMarker(%trigger);
echo("AITestTrigger Set to go off by AI ready for script instead
of loading AI only");
}
else
{
AIPlayer::LoadEntities();
%trigger.usedup = "true";
deactivateEnergyMarker(%trigger);
}
}
if (((!((%NPCBased $= "")) && !((%NPCBased $= "true"))) && !((%NPCBased
$= "all"))) && !((%used $= "true")))
{
%compare = %obj.name;
if (%compare $= %NPCBased)
{
if (!(%line1 $= ""))
{
FireScriptActions(%obj, %line1);
%trigger.usedup = "true";
deactivateEnergyMarker(%trigger);
echo("AITestTrigger Set to go off by AI ready for script ins
tead of loading AI only");
}
else
{
AIPlayer::LoadEntities();
%trigger.usedup = "true";
deactivateEnergyMarker(%trigger);
}
}
}
}
else
{
return;
}
if (((((!((%client $= "")) && !((%used $= "true"))) && (%NPCBased $= "all"))
|| (%NPCBased $= "")) && !((%client $= ""))) && !((%used $= "true")))
{
if (!(%line1 $= ""))
{
FireScriptActions(%obj, %line1);
%trigger.usedup = "true";
deactivateEnergyMarker(%trigger);
echo("AITestTrigger ready for script instead of loading AI only");
PartyTracker(%obj);
}
else
{
AIPlayer::LoadEntities();
%trigger.usedup = "true";
deactivateEnergyMarker(%trigger);
}
}
}
function AITestTrigger::onAdd(%unused, %trigger, %obj)
{
%marker = %trigger.energyMarker;
if (!(%marker $= ""))
{
activateEnergyMarker(%obj, %trigger);
}
}
function activateEnergyMarker(%obj, %trigger)
{
%pos = %trigger.position;
%marker = %trigger.markerPath;
%emblem = new TSStatic("")
{
shapeName = %marker;
playAmbient = 1;
meshCulling = 0;
originSort = 0;
collisionType = "Collision Mesh";
decalType = "Collision Mesh";
allowPlayerStep = 1;
renderNormals = 0;
forceDetail = -1;
position = %pos;
rotation = "1 0 0 0";
scale = "1 1 1";
canSave = 0;
canSaveDynamicFields = 0;
radar = "EIcon";
};
MissionCleanup.add(%emblem);
%trigger.energyMarker = %emblem;
}
function deactivateEnergyMarker(%trigger)
{
%marker = %trigger.energyMarker;
%radar = strreplace(%trigger.radar, "_", " ");
if (!(%marker $= ""))
{
%marker.schedule(1000, "delete");
if (!(%radar $= ""))
{
%radar1 = getWord(%radar, 0);
%radar2 = getWord(%radar, 1);
%radar1.schedule(1000, "delete");
%radar2.schedule(1000, "delete");
%trigger.radar = "";
}
}
}

Das könnte Ihnen auch gefallen