Перейти к контенту

Скриптование


Svoboда

Рекомендуемые сообщения

Я хотел бы написать скрипт, который заменяет лагерях, потому что я не функционируют лагеря.

 

Я старался, чтобы написать script здесь

 

он будет работать

 

PS Я не русский так извините за мой плохой язык

local npc = {

mar_clear_sky_respawn_1 = mar_clear_sky_respawn_1_counter

mar_clear_sky_respawn_2 = mar_clear_sky_respawn_2_counter

mar_clear_sky_respawn_3 = mar_clear_sky_respawn_3_counter

}

local npc_spawn_data = {

mar_clear_sky_respawn_1 = -61.996055603027, 0.92057931423187, 293.67742919922, game_vertex_id = 3402, level_vertex_id = 106182

mar_clear_sky_respawn_2 = -51.345394134521, 1.1859278678894, 296.54559326172, game_vertex_id = 3402, level_vertex_id = 114134

mar_clear_sky_respawn_3 = -51.345394134521, 1.1859278678894, 296.54559326172, game_vertex_id = 3402, level_vertex_id = 114134

}

local npc_respawn_counter = {

mar_clear_sky_respawn_1_counter = 3

mar_ clear_sky_respawn_2_counter = 5

mar_clear_sky_respawn_3_counter = 2

}







local npc_spawn = Respawn_NPC()

function start()

    npc_spawn:LoadConfig()

end



class "Respawn_NPC"



function Respawn_NPC:__init()

    self.init_done = false



    self.respawn_npc_tabel = nil

    self.respawn_counter = nil

    self.respawn_counter_name = nil

    self.respawn_npc = nil

    self.respawn_npc_point = nil



    self.respawn_timer = 0

    if level.name() ~= "marsh" then

        self.enabled = false

    else

        self.enabled = true

        self:LoadConfig()

    end

    self.init_done = true

end



function Respawn_NPC:__finalize()

    self.init_done = nil

    self.enabled = nil

    self.respawn_counter = nil

    self.respawn_npc_tabel = nil

    self.respawn_counter_name = nil

    self.respawn_npc = nil

    self.respawn_npc_point = nil

end



function Respawn_NPC:LoadConfig()

        self.respawn_npc .. "_" .. count = 0

        local npc_1 = npc

        local npc_respawn_counter_1 = npc_respawn_counter

        local npc_spawn_data_1 = npc_spawn_data



        self.respawn_counter = {}

        self.respawn_counter_name = {}

        self.respawn_npc = {}

        self.respawn_npc_point = {}



        for k,v in pairs ("npc_1")do

            self.respawn_npc(k)

            self.respawn_counter_name(v)

        end

        for k,v in pairs("npc_respawn_counter_1") do 

                if k == respawn_counter_name then

                self.respawn_counter(v)

            end            

        end

        for k,v in pairs("npc_spawn_data_1") do 

            if k == respawn_npc then

                if respawn_npc .. "_" .. count < respawn_counter then

                self.respawn_npc_point(v)

                else 

                return

                end                    

            end

        end

end



function Respawn_NPC:Timer()

    if respawn_timer == false then 

    if respawn_timer == 0 then 

              respawn_timer = level.get_time_hours() + math.random(3, 4) 

              if respawn_timer > 23 then respawn_timer = respawn_timer - 24 end

        end

    if db.actor:alive() then

            if level.get_time_hours() > respawn_timer then

                respawn_timer = 0

        respawn_timer_a = true

        end

    end

end



function Respawn_NPC:Spawn_NPC(respawn_counter_ltx, respawn_npc_point)

    if respawn_timer_a == true then

    if respawn_timer == 0 then

    if not respawn_counter and not respawn_npc_point then

        return false

        end

    end

    self.respawn_npc_tabel = {}

    if npc_respawn_counter < respawn_counter then

    self.spwan = alife():create(respawn_npc, vector():set(respawn_npc_point)

    respawn_npc_tabel[spwan.id] = true

    end

end





function Respawn_NPC:Counter(respawn_npc_tabel)

if not respawn_npc_tabel then

    return false

end



local obj,count,tbl_cnt = nil,0,#respawn_npc_tabel 

for k,v in pairs(respawn_npc_tabel) do

obj = alife():object(k)

if obj == nil then

v = nil   

respawn_npc .. "_" .. count = respawn_npc .. "_" .. count - 1

end

end

    if respawn_npc .. "_" .. count < respawn_counter  then

        respawn_timer = false 

            respawn_timer = 0   

    end

end

 

 

If you possess the English, then write on it yet, so it will be easier for you to understand.

ColR_iT

Изменено пользователем ColR_iT

Поделиться этим сообщением


Ссылка на сообщение
  • Недавно просматривали   0 пользователей

    • Ни один зарегистрированный пользователь не просматривает эту страницу.
×
×
  • Создать...