Metin2 Hungarian Forum

Metin2 => Szerver készítés => Privát szerverek => Segítség => A témát indította: s3l3n3 - 2017-11-12, 16:56:47

Cím: auto event quest
Írta: s3l3n3 - 2017-11-12, 16:56:47
Sziasztok!

sehogy se tudom műkődésre bírni remélem valaki tud benne segíteni és másnak is jó lesz ez a quest.

quest auto_events begin
    state start begin
        when 9013.chat."auto event" with pc.is_gm() begin
            say_title(" Hallo "..pc.get_name())
            say(" state now "..game.get_event_flag("autoevent").." ")
            say(" ")
            local s = select(" active "," disable "," close ")
            if s == 1 then
                setskin(NOWINDOW)
                server_loop_timer("auto_event_timer", 1)
                game.set_event_flag("autoevent", 1)
            if s == 2 then
                setskin(NOWINDOW)
                clear_server_timer("auto_event_timer")
                game.set_event_flag("autoevent", 0)
end
end

        when auto_event_timer.server_timer begin
            local events_info = {
                {"Sat 14:00", "hair", "event", "hairup", 1, " 4 hours ", "Sat 18:00", 0},
                {"Sun 12:00", "6 Shabe Box", "event", "mount", 1, " 6 hours ", "Sun 18:00", 0},
                {"Mon 13:00", "Gold ball", "event", "gold_bool", 1, " 4 hours ", "Mon 18:00", 0},
                {"Tue 14:00", "dressup box", "event", "dressup", 1, " 4 hours ", "Tue 18:00", 0},
                {"Wed 14:00", "fotball box", "event", "football_drop", 1, " 4 hours ", "Wed 18:00", 0},
                {"Thu 17:00", "holdfény", "event", "holdxla", 1, " 4 hours ", "Thu 21:00", 0},
                {"Fri 14:00", "mount", "event", "Mount_Ring_Event", 1, " 4 hours ", "Fri 18:00", 0},
            }
            local day_time = os.date("%a %H:%M")

            for i, v in ipairs(events_info) do
                if v[1] == day_time then
                    if game.get_event_flag(v[4]) != v[5] then
                        notice_all("notice: event  "..v[2].." actived for "..v[6].."  started from now! ")
                        game.set_event_flag(v[4], v[5])
                    end
elseif v[7] == day_time then
                    if game.get_event_flag(v[4]) != v[8] then
                        notice_all(" notice: event "..v[2].." finish, see u with other events !! ")
                        game.set_event_flag(v[4], v[8])
                    end
                end
            end
        end
    end
end
 

Köszönöm
Cím: Re:auto event quest
Írta: Meli - 2017-11-13, 00:23:06
Sziasztok!

sehogy se tudom műkődésre bírni remélem valaki tud benne segíteni és másnak is jó lesz ez a quest.

quest auto_events begin
    state start begin
        when 9013.chat."auto event" with pc.is_gm() begin
            say_title(" Hallo "..pc.get_name())
            say(" state now "..game.get_event_flag("autoevent").." ")
            say(" ")
            local s = select(" active "," disable "," close ")
            if s == 1 then
                setskin(NOWINDOW)
                server_loop_timer("auto_event_timer", 1)
                game.set_event_flag("autoevent", 1)
            if s == 2 then
                setskin(NOWINDOW)
                clear_server_timer("auto_event_timer")
                game.set_event_flag("autoevent", 0)
end
end

        when auto_event_timer.server_timer begin
            local events_info = {
                {"Sat 14:00", "hair", "event", "hairup", 1, " 4 hours ", "Sat 18:00", 0},
                {"Sun 12:00", "6 Shabe Box", "event", "mount", 1, " 6 hours ", "Sun 18:00", 0},
                {"Mon 13:00", "Gold ball", "event", "gold_bool", 1, " 4 hours ", "Mon 18:00", 0},
                {"Tue 14:00", "dressup box", "event", "dressup", 1, " 4 hours ", "Tue 18:00", 0},
                {"Wed 14:00", "fotball box", "event", "football_drop", 1, " 4 hours ", "Wed 18:00", 0},
                {"Thu 17:00", "holdfény", "event", "holdxla", 1, " 4 hours ", "Thu 21:00", 0},
                {"Fri 14:00", "mount", "event", "Mount_Ring_Event", 1, " 4 hours ", "Fri 18:00", 0},
            }
            local day_time = os.date("%a %H:%M")

            for i, v in ipairs(events_info) do
                if v[1] == day_time then
                    if game.get_event_flag(v[4]) != v[5] then
                        notice_all("notice: event  "..v[2].." actived for "..v[6].."  started from now! ")
                        game.set_event_flag(v[4], v[5])
                    end
elseif v[7] == day_time then
                    if game.get_event_flag(v[4]) != v[8] then
                        notice_all(" notice: event "..v[2].." finish, see u with other events !! ")
                        game.set_event_flag(v[4], v[8])
                    end
                end
            end
        end
    end
end
 

Köszönöm

Szóval időnként kellene, hogy automatikusan indítson egy eventet a szerver magának?
Cím: Re:auto event quest
Írta: s3l3n3 - 2017-11-13, 19:04:00
igen akár többet is mint ahogy írva van. de ha csak egy eventre az is jó. megköszönném
Cím: Re:auto event quest
Írta: whiteworld - 2017-11-14, 05:02:18
Tessék, ez működik.

quest auto_event begin
state start begin
when 20355.chat."Automata event" with pc.is_gm() begin
say_title(" Üdvozöllek "..pc.get_name())
say(" state now "..game.get_event_flag("autoevent").." ")
say(" ")
local s = select(" Indítás "," Bezárás "," Kilépés ")
if s == 1 then
setskin(NOWINDOW)
server_loop_timer("auto_event_timer", 1)
game.set_event_flag("autoevent", 1)
elseif s == 2 then
setskin(NOWINDOW)
clear_server_timer("auto_event_timer")
game.set_event_flag("autoevent", 0)
end
end
when auto_event_timer.server_timer begin
local events_info = {
{"Mon 10:00", "a Holdfény láda", "event", "holdfeny_drop", 1, " 1 óra ", "Mon 11:00", 0},
{"Mon 18:00", "a Holdfény láda", "event", "holdfeny_drop", 1, " 1 óra ", "Mon 19:00", 0},
{"Tue 10:00", "a Hatszög láda", "event", "hatszog_drop", 1, " 1 óra ", "Tue 11:00", 0},
{"Tue 18:00", "a Hatszög láda", "event", "hatszog_drop", 1, " 1 óra ", "Tue 19:00", 0},
{"Wed 10:00", "a Titokzatos láda", "event", "titokzatos_drop", 1, " 1 óra ", "Wed 11:00", 0},
{"Wed 18:00", "a Titokzatos láda", "event", "titokzatos_drop", 1, " 1 óra ", "Wed 19:00", 0},
{"Thu 10:00", "a Fejlődők ládája", "event", "fejlodok_drop", 1, " 1 óra ", "Thu 11:00", 0},
{"Thu 18:00", "a Fejlődők ládája", "event", "fejlodok_drop", 1, " 1 óra ", "Thu 19:00", 0},
{"Fri 10:00", "a Kutatók ládája", "event", "kutatok_drop", 1, " 1 óra ", "Fri 11:00", 0},
{"Fri 18:00", "a Kutatók ládája", "event", "kutatok_drop", 1, " 1 óra ", "Fri 19:00", 0},
{"Sat 10:00", "az Eventmap", "event", "eventmap", 1, " 1 óra ", "Sat 11:00", 0},
{"Sat 18:00", "a Hatszög láda", "event", "hatszog_drop", 1, " 1 óra ", "Sat 19:00", 0},
{"Sun 10:00", "a Holdfény láda", "event", "holdfeny_drop", 1, " 1 óra ", "Sun 11:00", 0},
{"Sun 18:00", "az Eventmap", "event", "eventmap", 1, " 1 óra ", "Sun 19:00", 0},
}

local day_time = os.date("%a %H:%M")

for i,v in ipairs(events_info) do
if v[1] == day_time then
if game.get_event_flag(v[4]) != v[5] then
notice_all("Figyelem: Kezdődik "..v[2].." event, időtartama "..v[6]..", jó eventezést! ")
game.set_event_flag(v[4], v[5])
end
elseif v[7] == day_time then
if game.get_event_flag(v[4]) != v[8] then
notice_all("Figyelem: Végetért "..v[2].." event! ")
game.set_event_flag(v[4], v[8])
end
end
end
end
end
end

Minden nap indít egy eventet reggel és délután ami 1 órát tart, úgy állítod be ahogy te szeretnéd.
Cím: Re:auto event quest
Írta: s3l3n3 - 2017-11-14, 18:06:46
köszi de valamiért nem jó . gondolom mikor índitja az eventet ki kéne írnia hogy elkezdődőtt az event stb.

Üzenet összefésülés: 2017-11-14, 18:29:14
bocsi eventel lesz gond , holdfény láda eventel műkődik köszi szépen