Hi all! i have a problem, when i click "Textil Öv ~ " the quest is exit... what is the problem?
Code:
quest runpont begin
state start begin
when 9010.chat."Pontok Beváltása" begin
local metin = mysql_query("SELECT metin FROM player.player WHERE name ='"..pc.get_name().."' LIMIT 1;")[1][1]
say_title("metin pontjaid:'"..metin.."'")
say("Mire szeretnéd beváltani?")
local asd = select("Textil Öv ~ 20P", "Bőr Öv ~ 35p", "Pompázatos Öv ~60p", "Bölcsesség Öv ~100p", "Király Öv ~160p", "Árnyék Öv ~220p", "Lélek Öv ~360p", "Mégse")
if asd == 1 then
local metin = mysql_query("SELECT metin FROM player.player WHERE name ='"..pc.get_name().."' LIMIT 1;")[1][1]
if metin >= 20 then
say("Máris adom a tárgyat...")
pc.give_item2(18000, 1)
mysql_query("UPDATE player.player SET metin = metin - 20 WHERE name="..pc.get_name()..";")
else
say("Sajnálom, nincs elég pontod.")
end
elseif asd == 2 then
local metin = mysql_query("SELECT metin FROM player.player WHERE name ="..pc.get_name().." LIMIT 1;")[1][1]
if metin < 35 then
say("Sajnálom, nincs elég pontod.")
else
say("Máris adom a tárgyat...")
pc.give_item2(18010, 1)
mysql_query("UPDATE player.player SET metin = metin - 35 WHERE name = " ..pc.get_name().. ";")
end
elseif asd == 3 then
local metin = mysql_query("SELECT metin FROM player.player WHERE name ="..pc.get_name().." LIMIT 1;")[1][1]
if metin < 60 then
say("Sajnálom, nincs elég pontod.")
else
say("Máris adom a tárgyat...")
pc.give_item2(18020, 1)
mysql_query("UPDATE player.player SET metin = metin - 60 WHERE name = " ..pc.get_name().. ";")
end
elseif asd == 4 then
local metin = mysql_query("SELECT metin FROM player.player WHERE name ="..pc.get_name().." LIMIT 1;")[1][1]
if metin < 100 then
say("Sajnálom, nincs elég pontod.")
else
say("Máris adom a tárgyat...")
pc.give_item2(18030, 1)
mysql_query("UPDATE player.player SET metin = metin - 100 WHERE name = " ..pc.get_name().. ";")
end
elseif asd == 5 then
local metin = mysql_query("SELECT metin FROM player.player WHERE name ="..pc.get_name().." LIMIT 1;")[1][1]
if metin < 160 then
say("Sajnálom, nincs elég pontod.")
else
say("Máris adom a tárgyat...")
pc.give_item2(18040, 1)
mysql_query("UPDATE player.player SET metin = metin - 160 WHERE name = " ..pc.get_name().. ";")
end
elseif asd == 6 then
local metin = mysql_query("SELECT metin FROM player.player WHERE name ="..pc.get_name().." LIMIT 1;")[1][1]
if metin < 220 then
say("Sajnálom, nincs elég pontod.")
else
say("Máris adom a tárgyat...")
pc.give_item2(18050, 1)
mysql_query("UPDATE player.player SET metin = metin - 220 WHERE name = " ..pc.get_name().. ";")
end
elseif asd == 7 then
local metin = mysql_query("SELECT metin FROM player.player WHERE name ="..pc.get_name().." LIMIT 1;")[1][1]
if metin < 360 then
say("Sajnálom, nincs elég pontod.")
else
say("Máris adom a tárgyat...")
pc.give_item2(18080, 1)
mysql_query("UPDATE player.player SET metin = metin - 360 WHERE name = " ..pc.get_name().. ";")
end
elseif asd == 8 then
return
end
end
end
end
quest runpont begin
state start begin
when 9010.chat."Pontok Beváltása" begin
local metin = runpont.get_metin()
local items = {
[18000] = {
price_per_piece = 20,
piece = 1
},
[18010] = {
price_per_piece = 35,
piece = 1
},
[18020] = {
price_per_piece = 60,
piece = 1
},
[18030] = {
price_per_piece = 100,
piece = 1
},
[18040] = {
price_per_piece = 160,
piece = 1
},
[18050] = {
price_per_piece = 220,
piece = 1
},
[18080] = {
price_per_piece = 360,
piece = 1
}
}
local item_vnums = {}
local item_names = {}
for k,_ in pairs(items) do
table.insert(item_names, item_name(k))
table.insert(item_vnums, k)
end
say_title("metin pontjaid:'"..metin.."'")
say("Mire szeretnéd beváltani?")
local selected_item = item_vnums[select_table(item_names, "Mégse")] or false
if not selected_item then return end
--########################
local selected_item_vnum = selected_item
local selected_item_piece = items[selected_item_vnum].piece
local selected_item_price = (items[selected_item_vnum].price_per_piece*selected_item_piece)
--########################
if metin < selected_item_price then
say("Sajnálom, nincs elég pontod.")
return
end
pc.give_item2(selected_item_vnum, selected_item_piece)
runpont.remove_metin(selected_item_price)
say("Máris adom a tárgyat...")
end
function get_metin()
return tonumber(mysql_query(string.format("SELECT metin FROM player.player WHERE id = %s LIMIT 1;", pc.get_player_id())).metin[1])
end
function remove_metin(value)
mysql_query(string.format("UPDATE player.player SET metin = metin-%s WHERE id = %s LIMIT 1;", value, pc.get_player_id()))
end
function add_metin(value)
mysql_query(string.format("UPDATE player.player SET metin = metin+%s WHERE id = %s LIMIT 1;", value, pc.get_player_id()))
end
end
end
But as Jayzon said, please use the sticky-Thread for subjects like this in the future
Error occured / Jede quest bekommt ein Error 01/17/2015 - Metin2 Private Server - 3 Replies Hallo Liebe Community, und zwar Bekommt jede eine Quest einen Error wenn ich sie Compilere.
Woran könnte es liegen, hier eine beispiel Quest,
(Wo alles dran richtig ist)
quest sprachen begin
state start begin
when login begin
horse.set_level( 21 )
[URGENT QUEST] Quest Kill 1093 Error - PLEASE TRY ANY :$ 02/06/2013 - Metin2 Private Server - 0 Replies quest dr2 begin
state start begin
when 1093.kill begin
say_title("Parabéns!")
say("Mataste o DR, escolhe o teu prémio:")
local premio = select ("Armas","Armaduras")
if premio == 1 then
if pc . job == 0 then
local armasnome1 = select ("Faca Dragăo+5(65)","Arco Dragăo Amarelo+5(65)","Lâmina Zanna Fantasma+5(65)","Leque Ave do Paraíso+5(65)","Campainha Céu e Terra+5(65)")
if armasnome1 == 1 then