forked from metin2/server
212 lines
5.4 KiB
Plaintext
212 lines
5.4 KiB
Plaintext
|
quest training_mount begin
|
||
|
state start begin
|
||
|
function no_level()
|
||
|
say_title(""..mob_name(20349).."")
|
||
|
say(gameforge.training_mount._01_say)
|
||
|
end
|
||
|
|
||
|
function no_item()
|
||
|
say_title(""..mob_name(20349).."")
|
||
|
say(gameforge.training_mount._02_say)
|
||
|
end
|
||
|
function fail_msg()
|
||
|
say_title(""..mob_name(20349).."")
|
||
|
say(".............")
|
||
|
say(gameforge.training_mount._03_say)
|
||
|
end
|
||
|
|
||
|
when 20349.chat.gameforge.training_mount._04_say begin
|
||
|
say_title(""..mob_name(20349).."")
|
||
|
say(gameforge.training_mount._05_say)
|
||
|
say("")
|
||
|
wait()
|
||
|
say_title(""..mob_name(20349).."")
|
||
|
say(gameforge.training_mount._06_say)
|
||
|
say("")
|
||
|
wait()
|
||
|
say_title(""..mob_name(20349).."")
|
||
|
say(gameforge.training_mount._07_say)
|
||
|
say("")
|
||
|
set_state(main_point)
|
||
|
end
|
||
|
end
|
||
|
|
||
|
state main_point begin
|
||
|
when 20349.chat.gameforge.training_mount._08_say begin
|
||
|
say_title(""..mob_name(20349).."")
|
||
|
say(gameforge.training_mount._09_say)
|
||
|
say("")
|
||
|
wait()
|
||
|
say_title(""..mob_name(20349).."")
|
||
|
say(gameforge.training_mount._10_say)
|
||
|
say("")
|
||
|
wait()
|
||
|
say_title(""..mob_name(20349).."")
|
||
|
say(gameforge.training_mount._11_say)
|
||
|
|
||
|
local s=select(gameforge.training_mount._12_say,gameforge.training_mount._13_say)
|
||
|
|
||
|
if 2==s then
|
||
|
return
|
||
|
end
|
||
|
if pc.count_item(50067) >0 or pc.count_item(50068)>0 then
|
||
|
say_title(""..mob_name(20349).."")
|
||
|
say(gameforge.training_mount._14_say)
|
||
|
else
|
||
|
training_mount.no_item()
|
||
|
return
|
||
|
end
|
||
|
|
||
|
local s=select(gameforge.training_mount._15_say,gameforge.training_mount._15_2_say,gameforge.training_mount._16_say)
|
||
|
if 1==s then
|
||
|
if pc.count_item(50067) == 0 then
|
||
|
training_mount.no_item()
|
||
|
elseif pc.level <25 then
|
||
|
training_mount.no_level()
|
||
|
else
|
||
|
say_title(""..mob_name(20349).."")
|
||
|
say(""..item_name(50067)..gameforge.training_mount._17_say)
|
||
|
end
|
||
|
elseif 2==s then
|
||
|
if pc.count_item(50068) == 0 then
|
||
|
training_mount.no_item()
|
||
|
elseif pc.level <45 then
|
||
|
training_mount.no_level()
|
||
|
else
|
||
|
say_title(""..mob_name(20349).."")
|
||
|
say(gameforge.training_mount._18_say)
|
||
|
end
|
||
|
elseif 3==s then
|
||
|
say_title(""..mob_name(20349).."")
|
||
|
say(gameforge.training_mount._19_say)
|
||
|
say("")
|
||
|
return
|
||
|
end
|
||
|
end --when
|
||
|
|
||
|
|
||
|
when 20349.take with 52001 == item.vnum or
|
||
|
52016 == item.vnum or
|
||
|
52031 == item.vnum or
|
||
|
52046 == item.vnum or
|
||
|
52061 == item.vnum or
|
||
|
52076 == item.vnum begin
|
||
|
|
||
|
if pc.is_riding() == true then
|
||
|
say (locale.traning_mount_cannot_upgrade)
|
||
|
return
|
||
|
end
|
||
|
if pc.count_item(50067) > 0 then
|
||
|
if pc.level <25 then
|
||
|
training_mount.no_level(25)
|
||
|
return
|
||
|
end
|
||
|
say_title(""..mob_name(20349).."")
|
||
|
say(gameforge.training_mount._20_say)
|
||
|
wait()
|
||
|
say(gameforge.training_mount._20_1_say)
|
||
|
|
||
|
-- here we decide about, which bonus the player whiches for the mount
|
||
|
local bonus_selected = select("ATTBONUS_MONSTER","MALL_EXPBONUS","MAX_HP","DEF_GRADE_BONUS","ATT_GRADE_BONUS", "Abort")
|
||
|
|
||
|
if 6==bonus_selected then
|
||
|
return
|
||
|
else
|
||
|
pc.setqf("upgrade_bonus", bonus_selected)
|
||
|
pc.setqf("upgrade_level", 1)
|
||
|
end
|
||
|
|
||
|
local remain_time =item.get_socket(0)
|
||
|
pc.give_item2_select(item.get_refine_vnum,1)
|
||
|
item.set_socket(0,remain_time)
|
||
|
item.set_socket(1,bonus_selected)
|
||
|
pc.remove_item (item.get_vnum(),1)
|
||
|
pc.remove_item (500675,1)
|
||
|
|
||
|
else
|
||
|
training_mount.no_item()
|
||
|
end
|
||
|
end
|
||
|
when 20349.take with 52006 == item.vnum or
|
||
|
52021 == item.vnum or
|
||
|
52036 == item.vnum or
|
||
|
52051 == item.vnum or
|
||
|
52066 == item.vnum or
|
||
|
52081 == item.vnum begin
|
||
|
|
||
|
if pc.is_riding() == true then
|
||
|
say (locale.traning_mount_cannot_upgrade)
|
||
|
return
|
||
|
end
|
||
|
|
||
|
if pc.count_item(50068) > 0 then
|
||
|
if pc.level <45 then
|
||
|
training_mount.no_level()
|
||
|
return
|
||
|
end
|
||
|
say_title(""..mob_name(20349).."")
|
||
|
say(gameforge.training_mount._21_say)
|
||
|
wait()
|
||
|
say(gameforge.training_mount._22_say)
|
||
|
|
||
|
-- here we save the new upgrade level for mapping in the ride.quest
|
||
|
pc.setqf("upgrade_level", 2)
|
||
|
|
||
|
local remain_time = item.get_socket(0)
|
||
|
local upgrade_bonus = item.get_socket(1)
|
||
|
pc.give_item2_select(item.get_refine_vnum,1)
|
||
|
item.set_socket(0,remain_time)
|
||
|
item.set_socket(1,bonus_selected)
|
||
|
pc.remove_item (item.get_vnum(),1)
|
||
|
pc.remove_item (50068,1)
|
||
|
else
|
||
|
training_mount.no_item()
|
||
|
end
|
||
|
end
|
||
|
|
||
|
|
||
|
|
||
|
when 20349.chat.gameforge.training_mount._23_say begin
|
||
|
say_title(""..mob_name(20349).."")
|
||
|
say("")
|
||
|
say(gameforge.training_mount._24_say)
|
||
|
wait()
|
||
|
say_title(""..mob_name(20349).."")
|
||
|
say("")
|
||
|
say(gameforge.training_mount._25_say)
|
||
|
wait()
|
||
|
say_title(""..mob_name(20349).."")
|
||
|
say("")
|
||
|
say(gameforge.training_mount._26_say)
|
||
|
local s=select(locale.yes,locale.no)
|
||
|
if 2==s then
|
||
|
return
|
||
|
end
|
||
|
say_title(""..mob_name(20349).."")
|
||
|
say("")
|
||
|
say(gameforge.training_mount._27_say)
|
||
|
say("")
|
||
|
wait()
|
||
|
if pc.count_item(50068) >0 then
|
||
|
if horse.get_level()>1 then
|
||
|
say_title(""..mob_name(20349).."")
|
||
|
say("")
|
||
|
say(gameforge.training_mount._28_say)
|
||
|
wait()
|
||
|
say(gameforge.training_mount._29_say)
|
||
|
else
|
||
|
say_title(""..mob_name(20349).."")
|
||
|
say("")
|
||
|
say(gameforge.training_mount._30_say)
|
||
|
return
|
||
|
end
|
||
|
else
|
||
|
say_title(""..mob_name(20349).."")
|
||
|
say("")
|
||
|
say(gameforge.training_mount._31_say)
|
||
|
return
|
||
|
end
|
||
|
end
|
||
|
end
|
||
|
end
|