quest ride_mystery_boxes begin state start begin function Ride( vnum, remain_time ) ride_info = { [71124] = { 20114, item.get_socket(2)*60, apply.MOV_SPEED, 0, 1, false }, [71125] = { 20115, item.get_socket(2)*60, apply.ATTBONUS_MONSTER, 20, 20, false }, [71126] = { 20116, item.get_socket(2)*60, apply.CRITICAL_PCT, 10, 20, false }, [71127] = { 20117, item.get_socket(2)*60, apply.CRITICAL_PCT, 10, 20, false }, [71128] = { 20118, item.get_socket(2)*60, apply.MALL_DEFBONUS, 10, 20, false }, [71137] = { 20120, item.get_socket(2)*60, apply.MOV_SPEED, 0, 1, false, false, false}, [71138] = { 20121, item.get_socket(2)*60, apply.MOV_SPEED, 0, 1, false, false, false}, [71139] = { 20122, item.get_socket(2)*60, apply.MOV_SPEED, 0, 1, false, false, false}, [71140] = { 20123, item.get_socket(2)*60, apply.MOV_SPEED, 0, 1, false, false, false}, [71141] = { 20124, item.get_socket(2)*60, apply.MOV_SPEED, 0, 1, false, false, false}, [71142] = { 20125, item.get_socket(2)*60, apply.MOV_SPEED, 0, 1, false, false, false}, } 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 != 71124 and vnum != 71125 and vnum != 71126 and vnum != 71127 and vnum != 71128 and vnum != 71137 and vnum != 71138 and vnum !=71139 and vnum !=71140 and vnum !=71141 and vnum !=71142 then return end if 0 != vnum then ride_mystery_boxes.Ride(vnum, remain_time) end end when 71124.use or 71125.use or 71126.use or 71127.use or 71128.use or 71137.use or 71138.use or 71139.use or 71140.use or 71141.use or 71142.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 ride_mystery_boxes.Ride(item.vnum, 0) else say("") say(gameforge.ride._030_say) say("") end end end end