Files
dsrc/sku.0/sys.server/compiled/game/script/beta/free_vehicle.script
T

61 lines
988 B
Plaintext

include library.callable;
include library.utils;
trigger OnInitialize()
{
int expirationTime = getIntObjVar(self, "mount_vendor.create");
if(getGameTime() > expirationTime)
{
messageTo(self, "expireAndCleanup", null, 0, false);
}
return SCRIPT_CONTINUE;
}
trigger OnDestroy()
{
obj_id currentPet = callable.getCDCallable(self);
messageTo(currentPet, "handlePackRequest", null, 1, false);
if(hasObjVar(self, "hasOwner"))
{
obj_id player = getObjIdObjVar(self, "hasOwner");
if(hasObjVar(player, "hasTestVehicle"))
{
removeObjVar(player, "hasTestVehicle");
}
}
return SCRIPT_CONTINUE;
}
messageHandler expireAndCleanup()
{
obj_id currentPet = callable.getCDCallable(self);
if(isIdValid(currentPet))
{
// pet is out, is it mounted?
obj_id riderId = getRiderId(currentPet);
if(isIdValid(riderId))
{
// dismount
dismountCreature(riderId);
}
}
setObjVar(self, "pet.isDead", true);
destroyObject(self);
return SCRIPT_CONTINUE;
}