def do_09c4(self, data_io): #アイテム使用 item_iid = io_unpack_int(data_io) target_id = io_unpack_int(data_io) x = io_unpack_unsigned_byte(data_io) y = io_unpack_unsigned_byte(data_io) with self.pc.lock: item = self.pc.item.get(item_iid) if not item: return event_id = item.event_id item_event_id = item.item_id item_skill_id = item.skill_id p = self.pc if target_id == -1: #対象:地面 pass elif target_id != self.pc.id: #対象:単体 p = users.get_pc_from_id(target_id) if not (p and p.online): return if event_id: script.run(p, event_id, item_event_id) else: #アイテム使用結果 #success self.send("09c5", self.pc, item_event_id, target_id, x, y) #アイテム使用効果 (対象:地面) self.send("09c6", self.pc, item_event_id, target_id, x, y) skills.use(self.pc, target_id, x, y, item_skill_id, 1)
def do_11fe(self, data_io): #MAPワープ完了通知 general.log("[ map ]", "map load") self.pc.set_visible(True) self.send("09e9", self.pc) self.send("0226", self.pc, 0) #スキル一覧 一次職 self.send("0226", self.pc, 1) #スキル一覧 エキスパ self.send("022d", self.pc) #HEARTスキル self.send("13ec", self.pc) #れしぴ self.send("196e", self.pc) #クエスト回数・時間 #self.send("0259", self.pc) #ステータス試算結果 #self.send("1b67", self.pc) #MAPログイン時に基本情報を全て受信した後に受信される self.sync_map() self.pc.unset_pet() if self.pc.equip.pet: time.sleep(0.5) #must have some delay before send 122f (pet info) self.pc.set_pet() if self.send_login_event: self.send_login_event = False script.run(self.pc, env.LOGIN_EVENT_ID) if usermaps.map_id_in_range_flygarden(self.pc.map_obj.map_id): #bad packet, i dont known the structure of 1be4 #self.send("1be4", self.pc) #飛空庭ログイン #1bf9 only for reply 1bf8, plz remove when 1be4 work self.send("13bc", 2) #飛空庭の天候 self.send("13bd", 4) #飛空庭の天体 self.send("1bee", self.pc) #飛空庭の天候 self.send("1bf0", self.pc) #飛空庭の天候
def do_11fe(self, data_io): #MAPワープ完了通知 general.log("[ map ]", "map load") self.pc.set_visible(True) self.send("1239", self.pc) #キャラ速度通知・変更 self.send("196e", self.pc) #クエスト回数・時間 #self.send("0259", self.pc) #ステータス試算結果 #self.send("1b67", self.pc) #MAPログイン時に基本情報を全て受信した後に受信される self.send("0230", self.pc) #現在CAPA/PAYL self.send("0231", self.pc) #最大CAPA/PAYL self.send("0221", self.pc) #最大HP/MP/SP self.send("021c", self.pc) #現在のHP/MP/SP/EP self.send("157c", self.pc) #キャラの状態 self.send("0212", self.pc) #ステータス・補正・ボーナスポイント self.send("0217", self.pc) #詳細ステータス self.send("0226", self.pc, 0) #スキル一覧 一次職 self.send("0226", self.pc, 1) #スキル一覧 エキスパ self.send("022d", self.pc) #HEARTスキル self.send("0223", self.pc) #属性値 self.send("0244", self.pc) #ステータスウィンドウの職業 self.sync_map() self.pc.unset_pet() if self.pc.equip.pet: time.sleep(0.5) #must have some delay before send 122f (pet info) self.pc.set_pet() if self.send_login_event: self.send_login_event = False script.run(self.pc, env.LOGIN_EVENT_ID) if usermaps.map_id_in_range_flygarden(self.pc.map_obj.map_id): #bad packet, i dont known the structure of 1be4 #self.send("1be4", self.pc) #飛空庭ログイン #1bf9 only for reply 1bf8, plz remove when 1be4 work for i, attr in enumerate(general.FLYGARDEN_ATTR_LIST): #飛空庭に装飾品を装着・解除するの結果 self.send("1bf9", getattr(self.pc.map_obj.flygarden, attr), i) self.send("13bc", 2) #飛空庭の天候 self.send("13bd", 4) #飛空庭の天体 self.send("1bee", self.pc) #飛空庭の天候 self.send("1bf0", self.pc) #飛空庭の天候
def do_05e6(self, data_io): #イベント実行 event_id = io_unpack_int(data_io) script.run(self.pc, event_id)
from bs4 import BeautifulSoup as soup from urllib.request import FancyURLopener, urlopen from urllib.error import HTTPError # comment out or program will break from lib import script from assets.config import url, path try: class AppURLopener(FancyURLopener): version = "Mozilla/5.0" opener = AppURLopener() response = opener.open(url) except HTTPError as e: print(e) else: f = open(path, 'ab') data = response.read() f.write(data) f.close # comment out or program will break print(script.run())
import sys from lib import script try: args = sys.argv[2] except IndexError: args = '' finally: script.run(args)