forked from metin2/server
143 lines
6.9 KiB
Plaintext
143 lines
6.9 KiB
Plaintext
quest ride_upgradable begin
|
|
state start begin
|
|
|
|
function increaseTime ()
|
|
if pc.count_item(38100) >= 1 then
|
|
|
|
elseif pc.count_item(38101) >= 1 then
|
|
|
|
elseif pc.count_item(38102) >= 1 then
|
|
|
|
end
|
|
|
|
end
|
|
|
|
function Ride( vnum, remain_time )
|
|
ride_info = {
|
|
[52001] = { 20201, 60*60*24*365, apply.ATTBONUS_MONSTER, 0, 0, false, true },
|
|
[52002] = { 20201, 60*60*24*365, apply.MALL_EXPBONUS, 0, 0, false, true },
|
|
[52003] = { 20201, 60*60*24*365, apply.MAX_HP, 0, 0, false, true },
|
|
[52004] = { 20201, 60*60*24*365, apply.DEF_GRADE_BONUS, 0, 0, false, true },
|
|
[52005] = { 20201, 60*60*24*365, apply.ATT_GRADE_BONUS, 0, 0, false, true },
|
|
[52006] = { 20205, 60*60*24*365, apply.ATTBONUS_MONSTER, 3, 0, false, true },
|
|
[52007] = { 20205, 60*60*24*365, apply.MALL_EXPBONUS, 3, 0, false, true },
|
|
[52008] = { 20205, 60*60*24*365, apply.MAX_HP, 250, 0, false, true },
|
|
[52009] = { 20205, 60*60*24*365, apply.DEF_GRADE_BONUS, 50, 0, false, true },
|
|
[52010] = { 20205, 60*60*24*365, apply.ATT_GRADE_BONUS, 30, 0, false, true },
|
|
[52011] = { 20209, 60*60*24*365, apply.ATTBONUS_MONSTER, 5, 0, false, true },
|
|
[52012] = { 20209, 60*60*24*365, apply.MALL_EXPBONUS, 5, 0, false, true },
|
|
[52013] = { 20209, 60*60*24*365, apply.MAX_HP, 500, 0, false, true },
|
|
[52014] = { 20209, 60*60*24*365, apply.DEF_GRADE_BONUS, 150, 0, false, true },
|
|
[52015] = { 20209, 60*60*24*365, apply.ATT_GRADE_BONUS, 100, 0, false, true },
|
|
|
|
[52016] = { 20202, 60*60*24*365, apply.ATTBONUS_MONSTER, 0, 0, false, true },
|
|
[52017] = { 20202, 60*60*24*365, apply.MALL_EXPBONUS, 0, 0, false, true },
|
|
[52018] = { 20202, 60*60*24*365, apply.MAX_HP, 0, 0, false, true },
|
|
[52019] = { 20202, 60*60*24*365, apply.DEF_GRADE_BONUS, 0, 0, false, true },
|
|
[52020] = { 20202, 60*60*24*365, apply.ATT_GRADE_BONUS, 0, 0, false, true },
|
|
[52021] = { 20206, 60*60*24*365, apply.ATTBONUS_MONSTER, 3 , 0, false, true },
|
|
[52022] = { 20206, 60*60*24*365, apply.MALL_EXPBONUS, 3 , 0, false, true },
|
|
[52023] = { 20206, 60*60*24*365, apply.MAX_HP, 250, 0, false, true },
|
|
[52024] = { 20206, 60*60*24*365, apply.DEF_GRADE_BONUS, 50, 0, false, true },
|
|
[52025] = { 20206, 60*60*24*365, apply.ATT_GRADE_BONUS, 30, 0, false, true },
|
|
[52026] = { 20210, 60*60*24*365, apply.ATTBONUS_MONSTER, 5 , 0, false, true },
|
|
[52027] = { 20210, 60*60*24*365, apply.MALL_EXPBONUS, 5 , 0, false, true },
|
|
[52028] = { 20210, 60*60*24*365, apply.MAX_HP, 500, 0, false, true },
|
|
[52029] = { 20210, 60*60*24*365, apply.DEF_GRADE_BONUS, 150, 0, false, true },
|
|
[52030] = { 20210, 60*60*24*365, apply.ATT_GRADE_BONUS, 100, 0, false, true },
|
|
|
|
|
|
[52031]= { 20204, 60*60*24*365, apply.ATTBONUS_MONSTER, 0, 0, false, true },
|
|
[52032]= { 20204, 60*60*24*365, apply.MALL_EXPBONUS, 0, 0, false, true },
|
|
[52033]= { 20204, 60*60*24*365, apply.MAX_HP, 0, 0, false, true },
|
|
[52034]= { 20204, 60*60*24*365, apply.DEF_GRADE_BONUS, 0, 0, false, true },
|
|
[52035]= { 20204, 60*60*24*365, apply.ATT_GRADE_BONUS, 0, 0, false, true },
|
|
[52036]= { 20208, 60*60*24*365, apply.ATTBONUS_MONSTER, 3 , 0, false, true },
|
|
[52037]= { 20208, 60*60*24*365, apply.MALL_EXPBONUS, 3 , 0, false, true },
|
|
[52038]= { 20208, 60*60*24*365, apply.MAX_HP, 250, 0, false, true },
|
|
[52039]= { 20208, 60*60*24*365, apply.DEF_GRADE_BONUS, 50, 0, false, true },
|
|
[52040]= { 20208, 60*60*24*365, apply.ATT_GRADE_BONUS, 30, 0, false, true },
|
|
[52041]= { 20212, 60*60*24*365, apply.ATTBONUS_MONSTER, 5 , 0, false, true },
|
|
[52042]= { 20212, 60*60*24*365, apply.MALL_EXPBONUS, 5 , 0, false, true },
|
|
[52043]= { 20212, 60*60*24*365, apply.MAX_HP, 500, 0, false, true },
|
|
[52044]= { 20212, 60*60*24*365, apply.DEF_GRADE_BONUS, 150, 0, false, true },
|
|
[52045]= { 20212, 60*60*24*365, apply.ATT_GRADE_BONUS, 100, 0, false, true },
|
|
|
|
|
|
[52046]= { 20203, 60*60*24*365, apply.ATTBONUS_MONSTER, 0, 0, false, true },
|
|
[52047]= { 20203, 60*60*24*365, apply.MALL_EXPBONUS, 0, 0, false, true },
|
|
[52048]= { 20203, 60*60*24*365, apply.MAX_HP, 0, 0, false, true },
|
|
[52049]= { 20203, 60*60*24*365, apply.DEF_GRADE_BONUS, 0, 0, false, true },
|
|
[52050]= { 20203, 60*60*24*365, apply.ATT_GRADE_BONUS, 0, 0, false, true },
|
|
[52051]= { 20207, 60*60*24*365, apply.ATTBONUS_MONSTER, 3 , 0, false, true },
|
|
[52052]= { 20207, 60*60*24*365, apply.MALL_EXPBONUS, 3 , 0, false, true },
|
|
[52053]= { 20207, 60*60*24*365, apply.MAX_HP, 250, 0, false, true },
|
|
[52054]= { 20207, 60*60*24*365, apply.DEF_GRADE_BONUS, 50, 0, false, true },
|
|
[52055]= { 20207, 60*60*24*365, apply.ATT_GRADE_BONUS, 30, 0, false, true },
|
|
[52056]= { 20211, 60*60*24*365, apply.ATTBONUS_MONSTER, 5 , 0, false, true },
|
|
[52057]= { 20211, 60*60*24*365, apply.MALL_EXPBONUS, 5 , 0, false, true },
|
|
[52058]= { 20211, 60*60*24*365, apply.MAX_HP, 500, 0, false, true },
|
|
[52059]= { 20211, 60*60*24*365, apply.DEF_GRADE_BONUS, 150, 0, false, true },
|
|
[52060]= { 20211, 60*60*24*365, apply.ATT_GRADE_BONUS, 100, 0, false, true },
|
|
|
|
}
|
|
|
|
if pc.level < ride_info[vnum][5] then
|
|
say("")
|
|
say(gameforge.ride._010_say)
|
|
say("")
|
|
else
|
|
if 112 == pc.get_map_index() then
|
|
return
|
|
end
|
|
if ride_info[vnum][2] == 0 and remain_time != 0 then
|
|
pc.mount( ride_info[vnum][1], remain_time*60 )
|
|
pc.mount_bonus( ride_info[vnum][3], ride_info[vnum][4], remain_time*60 )
|
|
else
|
|
pc.mount( ride_info[vnum][1], ride_info[vnum][2] )
|
|
pc.mount_bonus( ride_info[vnum][3], ride_info[vnum][4], ride_info[vnum][2] )
|
|
end
|
|
|
|
if true == ride_info[vnum][6] then
|
|
pc.remove_item(vnum, 1)
|
|
end
|
|
|
|
end
|
|
end
|
|
|
|
when login begin
|
|
local vnum, remain_time = pc.get_special_ride_vnum()
|
|
if vnum <= 52000 or vnum >=52061 then
|
|
return
|
|
end
|
|
if 0 != vnum then
|
|
ride_upgradable.Ride(vnum, remain_time)
|
|
end
|
|
end
|
|
|
|
when 52001.use or 52002.use or 52003.use or 52004.use or 52005.use or 52006.use or 52007.use or 52008.use or 52009.use or 52010.use or 52011.use or 52012.use or 52013.use or 52014.use or 52015.use or
|
|
52016.use or 52017.use or 52018.use or 52019.use or 52020.use or 52021.use or 52022.use or 52023.use or 52024.use or 52025.use or 52026.use or 52027.use or 52028.use or 52029.use or 52030.use or
|
|
52031.use or 52032.use or 52033.use or 52034.use or 52035.use or 52036.use or 52037.use or 52038.use or 52039.use or 52040.use or 52041.use or 52042.use or 52043.use or 52044.use or 52045.use or
|
|
52046.use or 52047.use or 52048.use or 52049.use or 52050.use or 52051.use or 52052.use or 52053.use or 52054.use or 52055.use or 52056.use or 52057.use or 52058.use or 52059.use or 52060.use begin
|
|
|
|
|
|
if pc.is_polymorphed() then
|
|
say("")
|
|
say(gameforge.ride._020_say)
|
|
say("")
|
|
elseif false == pc.is_riding() then
|
|
if true == horse.is_summon() then
|
|
horse.unsummon()
|
|
end
|
|
item.set_socket(2, 60*24*365*60)
|
|
ride_upgradable.Ride(item.vnum, 0)
|
|
|
|
else
|
|
say("")
|
|
say(gameforge.ride._030_say)
|
|
say("")
|
|
end
|
|
end
|
|
end
|
|
end
|