Am incercat sa fac un quest care imi da la judy loterie, anunt global, si teleportare la player.
Ei bine am facut acest lucru, dar imi da eroare.
Quest:
Cod: Selectaţi tot
quest npcfreakz begin
state start begin
when 20094.chat."NPC Freakz" begin
local s = select("Loto(Loterie)", "Anunt global", "Teleportare", "Anuleaza")
if s == 1 then
local loto = select("Loto 1 din 5", "Loto 1 din 10", "Loto 1 din 20", "Poate nu am nrorc...")
if loto == 1 then
say_title("Loteria:")
say("Salutare ".. pc.get_name() .."! Te simnti norocos?")
say("Poti sa participi la loto la un pret de:")
say_reward("100.000 Yang (100k)")
say("Continui?")
local scelta = select("Da","Nu")
if scelta == 1 then
if pc . gold >= 100000 then
pc . changegold ( - 100000 )
local k
repeat
say_title( "Loteria:" )
say( "Introdu un numar de la 1 la 5" )
say("Daca acest numar corespunde cu rezultatul")
say("poti castiga un")
say("jackpot de 500.000 Yang (500k)!!")
k = tonumber(input())
if k == nil then
say_title("Loteria:")
say("Scrie un numar!")
local s = select("Continua", "Anuleaza")
if s == 2 then
return
end
else
if k <= 0 then
say_title("Loteria:")
say("Scrie un numar pozitiv!")
local s = select("Continua", "Anuleaza")
if s == 2 then
return
end
else
if k > 5 then
say_title("Loteria:")
say("Scrie un numar intre 1 si 5")
local s = select("Continua", "Anuleaza")
if s == 2 then
return
end
else
break
end
end
end
until false
say("Numarul ales de tine: " .. k )
wait ()
say ("Este timpul extrageri numarului!")
local random_number = tostring(number(1,5))
say("Numarul extras: " .. random_number)
if random_number == tostring(k) then
say ("Se pare ca norocul te-a lovit din plin")
say_reward ("Ai castigat 500.000 Yang(500k)")
pc.changegold ( 500000 )
else
say ("Din pacate nu ai avut noroc. Reincearca!")
end
end
end
elseif loto == 2 then
say_title("Loteria:")
say("Salutare ".. pc.get_name() .."! Te simnti norocos?")
say("Poti sa participi la loto la un pret de:")
say_reward("300.000 Yang (300k)")
say("Continui?")
local scelta = select("Da","Nu")
if scelta == 1 then
if pc . gold >= 300000 then
pc . changegold ( - 300000 )
local k
repeat
say_title( "Loteria:" )
say( "Introdu un numar de la 1 la 10" )
say("Daca acest numar corespunde cu rezultatul")
say("poti castiga un")
say("jackpot de 1.200.000 Yang (1.2kk)!!")
k = tonumber(input())
if k == nil then
say_title("Loteria:")
say("Scrie un numar!")
local s = select("Continua", "Anuleaza")
if s == 2 then
return
end
else
if k <= 0 then
say_title("Loteria:")
say("Scrie un numar pozitiv!")
local s = select("Continua", "Anuleaza")
if s == 2 then
return
end
else
if k > 10 then
say_title("Loteria:")
say("Scrie un numar intre 1 si 10")
local s = select("Continua", "Anuleaza")
if s == 2 then
return
end
else
break
end
end
end
until false
say("Numarul ales de tine: " .. k )
wait ()
say ("Este timpul extrageri numarului!")
local random_number = tostring(number(1,10))
say("Numarul extras: " .. random_number)
if random_number == tostring(k) then
say ("Se pare ca norocul te-a lovit din plin")
say_reward ("Ai castigat 1.200.000 Yang(1.2kk)")
pc.changegold ( 1200000 )
else
say ("Din pacate nu ai avut noroc. Reincearca!")
end
end
end
elseif loto == 3 then
say_title("Loteria:")
say("Salutare ".. pc.get_name() .."! Te simnti norocos?")
say("Poti sa participi la loto la un pret de:")
say_reward("500.000 Yang (500k)")
say("Continui?")
local scelta = select("Da","Nu")
if scelta == 1 then
if pc . gold >= 500000 then
pc . changegold ( - 500000 )
local k
repeat
say_title( "Loteria:" )
say( "Introdu un numar de la 1 la 20" )
say("Daca acest numar corespunde cu rezultatul")
say("poti castiga un")
say("jackpot de 5.000.000 Yang (5kk)!!")
k = tonumber(input())
if k == nil then
say_title("Loteria:")
say("Scrie un numar!")
local s = select("Continua", "Anuleaza")
if s == 2 then
return
end
else
if k <= 0 then
say_title("Loteria:")
say("Scrie un numar pozitiv!")
local s = select("Continua", "Anuleaza")
if s == 2 then
return
end
else
if k > 20 then
say_title("Loteria:")
say("Scrie un numar intre 1 si 20")
local s = select("Continua", "Anuleaza")
if s == 2 then
return
end
else
break
end
end
end
until false
say("Numarul ales de tine: " .. k )
wait ()
say ("Este timpul extrageri numarului!")
local random_number = tostring(number(1,20))
say("Numarul extras: " .. random_number)
if random_number == tostring(k) then
say ("Se pare ca norocul te-a lovit din plin")
say_reward ("Ai castigat 5.000.000 Yang(5kk)")
pc.changegold ( 5000000 )
else
say ("Din pacate nu ai avut noroc. Reincearca!")
end
end
end
end
elseif s == 2 then
say("Cu doar 500k poti sa postezi")
say("un mesaj global")
say("Daca adresezi jigniri staffului")
say("sau unor playeri , se ajunge la sanctiuni")
say("Esti sigur ca vrei sa postezi un mesaj?")
local mes = select("Da", "Nu")
if mes == 1 then
if pc.get_gold()<500000 then
say("Nu ai 500.000 Yang (500k)")
else
say("Scrie Mesajul :")
local notice_text = input()
notice_all("Lv. "..pc.get_level().." "..pc.get_name().." spune : "..notice_text)
pc.changegold(-500000)
end
end
elseif s == 3 then
say_title("Teleportarea jucatorului:")
say("Daca ai 200k poti sa te teleportezi la un alt jucator.")
say_reward("Vrei sa te teleportezi?")
local a = select("Da","Nu!")
if a == 1 then
if pc.get_gold()<200000 then
say("Nu ai 200.000 Yang (200k)")
else
say_title("Teleportarea jucatorului:")
say_reward("Scrie numele jucatorului la care vrei sa te[ENTER]teleportezi:")
local name = input()
pc.teleport(name)
pc.changegold(-200000)
end
end
end
end
end
end
end
endCod: Selectaţi tot
metin2# ./qc SuperNpcFreakz.quest
QUEST : npcfreakz
STATE : start
WHEN : 20094.chat ("NPC Freakz")
must start with 'quest'
SuperNpcFreakz.quest:228:Abort (core dumped)
metin2#




