olaf1
Senior Resident
On forum: 01/17/2012
 Message edited by: olaf1 03/17/2012 15:58:11
Messages: 240
|
Respwn Script
Can anyone say me why this code not spwan NPC´s?
when i start the game one NPC spwan but the other not why???
thanke you
local mar_clear_sky_respawn_1_counter = nil
local mar_clear_sky_respawn_2_counter = nil
local mar_clear_sky_respawn_3_counter = nil
local respwan_table_mar_clear_sky_respawn_1 = {}
local respwan_table_mar_clear_sky_respawn_2 = {}
local respwan_table_mar_clear_sky_respawn_3 = {}
local npc =
{
"mar_clear_sky_respawn_1",
"mar_clear_sky_respawn_2",
"mar_clear_sky_respawn_3"
}
local levels = {marsh= {x=-61.996055603027,y=0.92057931423187,z=293.67742919922}
local npc_spwan_counter = {
mar_clear_sky_respawn_1 = "mar_clear_sky_respawn_1_counter",
mar_clear_sky_respawn_2 = "mar_clear_sky_respawn_3_counter",
mar_clear_sky_respawn_3 = "mar_clear_sky_respawn_2_counter"
}
function spwan()
if db.actor:alive() == false then return end
local level_name = level.name()
local who = npc[math.random(1, 3)]
for lvl, pos in pairs(levels) do
if level_name == lvl then
if lvl == "marsh" then
for npc_name,counter in pairs(npc_spwan_counter)do
if npc_name == who then
if who == "mar_clear_sky_respawn_1" then
if mar_clear_sky_respawn_1_counter == nil then
spwan_mar_clear_sky_respawn_1(who,pos)
elseif who == "mar_clear_sky_respawn_2" then
if mar_clear_sky_respawn_2_counter == nil then
spwan_mar_clear_sky_respawn_2(who,pos)
elseif who == "mar_clear_sky_respawn_3" then
if mar_clear_sky_respawn_3_counter == nil then
spwan_mar_clear_sky_respawn_3(who,pos)
end
end
end
end
end
end
end
end
end
end
function spwan_mar_clear_sky_respawn_1(wer,pos)
local pos = vector():set(pos.x, pos.y, pos.z)
local lvi = db.actor:level_vertex_id()
local gvi = db.actor:game_vertex_id()
respwan_table_mar_clear_sky_respawn_1[alife():create(wer, pos, lvi, gvi).id] = true
mar_clear_sky_respawn_1_counter = false
end
function spwan_mar_clear_sky_respawn_2(wer,pos)
local pos = vector():set(pos.x, pos.y, pos.z)
local lvi = db.actor:level_vertex_id()
local gvi = db.actor:game_vertex_id()
respwan_table_mar_clear_sky_respawn_2[alife():create(wer, pos, lvi, gvi).id] = true
mar_clear_sky_respawn_2_counter = false
end
function spwan_mar_clear_sky_respawn_3(wer,pos)
local pos = vector():set(pos.x, pos.y, pos.z)
local lvi = db.actor:level_vertex_id()
local gvi = db.actor:game_vertex_id()
respwan_table_mar_clear_sky_respawn_3[alife():create(wer, pos, lvi, gvi).id] = true
mar_clear_sky_respawn_3_counter = false
end
i will later writ in this code a timer and then a respwaner
thank you. |