summaryrefslogtreecommitdiff
path: root/runshop.py
diff options
context:
space:
mode:
Diffstat (limited to 'runshop.py')
-rw-r--r--runshop.py63
1 files changed, 63 insertions, 0 deletions
diff --git a/runshop.py b/runshop.py
new file mode 100644
index 0000000..22fd740
--- /dev/null
+++ b/runshop.py
@@ -0,0 +1,63 @@
+#!/usr/bin/python2
+
+import asyncore
+import logging
+import sys
+from ConfigParser import ConfigParser
+
+try:
+ import construct
+ del construct
+except ImportError:
+ import os
+ sys.path.insert(0, os.path.join(os.getcwd(), "external"))
+
+import net
+import net.mapserv as mapserv
+import plugins
+from utils import extends
+from itemdb import load_itemdb
+from loggers import debuglog
+from logicmanager import logic_manager
+
+
+@extends('smsg_player_warp')
+def player_warp(data):
+ mapserv.cmsg_map_loaded()
+
+
+@extends('smsg_map_login_success')
+def map_login_success(data):
+ mapserv.cmsg_map_loaded()
+
+
+if __name__ == '__main__':
+ rootLogger = logging.getLogger('')
+ rootLogger.addHandler(logging.NullHandler())
+
+ dbgh = logging.StreamHandler(sys.stdout)
+ dbgh.setFormatter(logging.Formatter("[%(asctime)s] %(message)s",
+ datefmt="%Y-%m-%d %H:%M:%S"))
+ debuglog.addHandler(dbgh)
+ debuglog.setLevel(logging.INFO)
+
+ shoplog = logging.getLogger('ManaChat.Shop')
+ shoplog.setLevel(logging.INFO)
+ shoplog.addHandler(dbgh)
+
+ config = ConfigParser()
+ config.read('manachat.ini')
+
+ load_itemdb('itemdb.txt')
+
+ plugins.load_plugins(config)
+
+ net.login(host=config.get('Server', 'host'),
+ port=config.getint('Server', 'port'),
+ username=config.get('Player', 'username'),
+ password=config.get('Player', 'password'),
+ charname=config.get('Player', 'charname'))
+
+ while True:
+ asyncore.loop(timeout=0.2, count=5)
+ logic_manager.tick()