/
headless.py
executable file
·52 lines (40 loc) · 1.25 KB
/
headless.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
#!/usr/bin/python2
import asyncore
import logging
from ConfigParser import ConfigParser
try:
import construct
del construct
except ImportError:
import sys
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
@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__':
logging.basicConfig(format="[%(asctime)s] %(message)s",
level=logging.INFO,
datefmt="%Y-%m-%d %H:%M:%S")
config = ConfigParser()
config.read('manachat.ini')
load_itemdb('itemdb.txt')
plugin_list = config.get('Core', 'plugins').split()
plugins.load_plugins(config, *plugin_list)
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'))
try:
asyncore.loop()
except KeyboardInterrupt:
mapserv.cleanup()