Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

Rekomendowane odpowiedzi

Opublikowano

 

quest event begin
state start begin
function koordynaty(var, val)
local y = 63
local z =
{
[1] = {403, 1207}, -- Shinsoo
[2] = {330, 323}, -- Chunjo
[3] = {1215, 279}, -- Jinno
}
if var == 1 then
a = z[val][1]*100
b = z[val][2]*100
return y,a,b
elseif var == 2 then
a = z[val][1]
b = z[val][2]
return a.." "..b
elseif var == 3 then
a = z[val][1]
b = z[val][2]
return a..", "..b
end
end

when login with game.get_event_flag("event") == 1 and pc.get_map_index() != 63 begin -- 63 to index mapy pustynii
send_letter("Wydarzenie na pustyni")
end

when button or info begin
say_title("Wydarzenie na pustyni:")
say("Czy chcesz przenieść się do swojego królestwa?")
say()
if select("Tak", "Nie") == 1 then
pc.warp_local(event.koordynaty(1, pc.get_empire()))
end
end

when 20093.chat."GM: Zarządzaj eventem" with pc.is_gm() begin
local main = select("Status", "Kontrola", "Nagroda", "Anuluj")
if main == 1 then
local get = game.get_event_flag("event")
local mapa = 63

say_title("Event")
if get == 0 then
if pc.get_map_index() == mapa then
say_title("Rozpocząć?")
say()
if select("Tak", "Anuluj") == 1 then
notice_all("Cóż to za hałas? Niech gracze ze")
notice_all("wszystkich królestw natychmiast")
notice_all("pojawią się na pustyni!")
game.set_event_flag("event", 1)
game.set_event_flag("miejsce", 1)
for i = 1, 3 do
local x = 8019 + i
mob.spawn(x, event.koordynaty(3, i), 0, 0, 1)
end
return
end
else
say_title("Przenieść na mapę eventową?")
say()
if select("Tak", "Anuluj") == 1 then
pc.warp_local(event.koordynaty(1, pc.get_empire()))
end
end
elseif get == 1 then
say_title("Zakończyć?")
if select("Tak", "Anuluj") == 1 then
game.set_event_flag("event", 0)
game.set_event_flag("miejsce", 0)
chat("Event zakończony.")
end
else
say("Nieoczekiwany błąd! Wartość ="..get)
end
elseif main == 2 then
say_title("Przenieś się do danego królestwa:")
say()
local x = select("Shinsoo", "Chunjo", "Jinno")
command("go "..event.koordynaty(2, x))
elseif main == 3 then
local n =
{
[1] = "item_drop",
[2] = "gold_drop",
[3] = "gold10_drop",
[4] = "exp",
}

for i = 1, table.getn(n) do
say(i.." = "..n)
end
say()
local x = tonumber(input())
say_title(n[x])
say("Czy na pewno?")
if select("Tak", "Nie") == 1 then
game.set_event_flag("nagroda", x)
end
end
end

--8020 Shinsoo
--8021 Jinno
--8022 Chunjo

when kill with pc.get_map_index() == 63 and not npc.is_pc() and game.get_event_flag("event") == 1 and npc.get_race() >= 8020 and npc.get_race() <= 8022 begin
local y = game.get_event_flag("miejsce")

--jeżeli kamienie metin mają nazwę typu: Kamień Shinsoo, Kamień Jinno itd., to local e wyświetli sam napis Shinsoo, Jinno itd :)

local x = mob_name(npc.get_race())

local e = string.sub(x, 8)

notice_all(x.." został zniszczony!")
game.set_event_flag("miejsce", y + 1)

if y >= 1 then
notice_all("Drużyna "..e.." odpada z turnieju z miejscem "..4-y)

--nie wiem dlaczego, ale: chunjo == 1, jinno == 2, shinsoo == 3

local f
if e == "Chunjo" then
f = "1"
elseif e == "Jinno" then
f = "2"
elseif e == "Shinsoo" then
f = "3"
end

-- 3 miejsce = 10% expa, 2 miejsce = 20% expa, 1 miejsce = 30% expa
local wartosc = y*10
local czas = 40
__give_empire_priv(f, game.get_event_flag("nagroda"), wartosc, czas)
elseif y == 5 then
notice_all("Drużyna "..e.." wygrywa turniej!")
end
end

end
end



w temacie masz też mały Fix jak naprawić resp
http://www.mpcforum.pl/topic/935259-pytanie-obrona-kamieni-metin/

 

image.png

Opublikowano

wszystko pieknie natomiast nie dziala ten fragment

 

        when login with game.get_event_flag("event") == 1 and pc.get_map_index() != 63 begin -- 63 to index mapy pustynii
            send_letter("Wydarzenie na pustyni")
        end
        
        when button or info begin
            say_title("Wydarzenie na pustyni:")
            say("Czy chcesz przenieść się do swojego królestwa?")

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...