68 lines
2.2 KiB
Lua
Executable file
68 lines
2.2 KiB
Lua
Executable file
--[[
|
|
Script Name : SpawnScripts/Generic/movement_circle_medium.lua
|
|
Script Purpose : Randomly chooses a medium circle for the spawn to take
|
|
Script Author : theFoof
|
|
Script Date : 2013.5.22
|
|
Script Notes : larger version of movement_cirlce_small.lua (written by Scatman)
|
|
--]]
|
|
|
|
function hailed(NPC, Spawn)
|
|
FaceTarget(NPC, Spawn)
|
|
end
|
|
|
|
function spawn(NPC)
|
|
SpawnChooseRandomMovement(NPC)
|
|
end
|
|
|
|
function SpawnChooseRandomMovement(NPC)
|
|
local choice = math.random(1, 4)
|
|
if choice == 1 then
|
|
clockwise1(NPC)
|
|
elseif choice == 2 then
|
|
clockwise2(NPC)
|
|
elseif choice == 3 then
|
|
counter_clockwise1(NPC)
|
|
elseif choice == 4 then
|
|
counter_clockwise2(NPC)
|
|
end
|
|
end
|
|
|
|
function clockwise1(NPC)
|
|
local x = GetX(NPC)
|
|
local y = GetY(NPC)
|
|
local z = GetZ(NPC)
|
|
MovementLoopAddLocation(NPC, x + 12 , y, z - 13 , 2, math.random(5, 15))
|
|
MovementLoopAddLocation(NPC, x - 10 , y, z - 15, 2, math.random(5, 15))
|
|
MovementLoopAddLocation(NPC, x - 15, y, z + 14 , 2, math.random(5, 15))
|
|
MovementLoopAddLocation(NPC, x + 10 , y, z + 13 , 2, math.random(5, 15))
|
|
end
|
|
|
|
function clockwise2(NPC)
|
|
local x = GetX(NPC)
|
|
local y = GetY(NPC)
|
|
local z = GetZ(NPC)
|
|
MovementLoopAddLocation(NPC, x + 7 , y, z - 13 , 2, math.random(5, 15))
|
|
MovementLoopAddLocation(NPC, x - 12 , y, z - 10 , 2, math.random(5, 15))
|
|
MovementLoopAddLocation(NPC, x , y, z + 11 , 2, math.random(5, 15))
|
|
MovementLoopAddLocation(NPC, x + 14 , y, z + 6 , 2, math.random(5, 15))
|
|
end
|
|
|
|
function counter_clockwise1(NPC)
|
|
local x = GetX(NPC)
|
|
local y = GetY(NPC)
|
|
local z = GetZ(NPC)
|
|
MovementLoopAddLocation(NPC, x - 12 , y, z + 13 , 2, math.random(5, 15))
|
|
MovementLoopAddLocation(NPC, x + 10 , y, z + 15, 2, math.random(5, 15))
|
|
MovementLoopAddLocation(NPC, x + 15, y, z - 14 , 2, math.random(5, 15))
|
|
MovementLoopAddLocation(NPC, x - 10 , y, z - 13 , 2, math.random(5, 15))
|
|
end
|
|
|
|
function counter_clockwise2(NPC)
|
|
local x = GetX(NPC)
|
|
local y = GetY(NPC)
|
|
local z = GetZ(NPC)
|
|
MovementLoopAddLocation(NPC, x - 7 , y, z + 13 , 2, math.random(5, 15))
|
|
MovementLoopAddLocation(NPC, x + 12 , y, z + 10 , 2, math.random(5, 15))
|
|
MovementLoopAddLocation(NPC, x , y, z - 11 , 2, math.random(5, 15))
|
|
MovementLoopAddLocation(NPC, x - 14 , y, z - 6 , 2, math.random(5, 15))
|
|
end
|