New test gm scripts to help with positioning populace npcs

This commit is contained in:
Filip Maj 2022-02-13 18:50:48 -05:00
parent 214d730a58
commit 8d5f4465e3
3 changed files with 95 additions and 0 deletions

View file

@ -0,0 +1,40 @@
require("global");
properties = {
permissions = 0,
parameters = "dsdffff",
description = "Spawns an actor given the actorClassId",
}
function onTrigger(player, argc, actorClassId, name, motionPack, posX, posY, posZ, rotation)
local actor;
if (actorClassId == nil) then
player:SendMessage(0x20, "", "No actor class id provided.");
return;
end
if (motionPack == nil) then
motionPack = 0;
end
local actorClassId = tonumber(actorClassId);
local pos = player:GetPos();
local x = x or pos[1];
local y = y or pos[2];
local z = z or pos[3];
local rot = rotation or pos[4];
if (actorClassId ~= nil and name ~= nil) then
actor = player.CurrentArea:SpawnActor(1000001, name, x, y, z, rot, 0, motionPack);
actor:ChangeNpcAppearance(actorClassId)
player:SendMessage(0x20, "", string.format("Spawned %d @ %f, %f, %f, %f", actorClassId, x, y, z, rot));
end
if (actor == nil) then
player:SendMessage(0x20, "", "This actor class id cannot be spawned.");
end
end;