preparations for alpha release
This commit is contained in:
23
actors.py
23
actors.py
@@ -8,27 +8,10 @@ class ActorManager:
|
|||||||
def add_character(self, char_dict):
|
def add_character(self, char_dict):
|
||||||
name = char_dict['name']
|
name = char_dict['name']
|
||||||
self.actors[name] = char_dict
|
self.actors[name] = char_dict
|
||||||
print(self.actors)
|
|
||||||
return response.build_new_character(None, char_dict)
|
|
||||||
|
|
||||||
def remove_actor(self, name):
|
def remove_character(self, name):
|
||||||
if not name in self.actors:
|
|
||||||
return None # TODO FEHLERMELDUNG, CHARAKTER EXISTIERT NICHT
|
|
||||||
self.actors.pop(name)
|
self.actors.pop(name)
|
||||||
return response.build_remove_actor(None, None, name)
|
|
||||||
|
|
||||||
def move_by(self, name, delta):
|
def get_actors(self):
|
||||||
if not name in self.actors:
|
return self.actors.values()
|
||||||
return None # TODO FEHLERMELDUNG, CHARAKTER EXISTIERT NICHT
|
|
||||||
actor = self.actors[name]
|
|
||||||
actor.tick += delta
|
|
||||||
return response.build_new_character(None, None, actor)
|
|
||||||
|
|
||||||
def move_to(self, name, tick):
|
|
||||||
if not name in self.actors:
|
|
||||||
return None # TODO FEHLERMELDUNG, CHARAKTER EXISTIERT NICHT
|
|
||||||
actor = self.actors[name]
|
|
||||||
actor.state = TickState.ACTING.value
|
|
||||||
actor.tick = tick
|
|
||||||
return response.build_new_character(None, None, actor)
|
|
||||||
|
|
||||||
|
|||||||
11
docker/Dockerfile
Normal file
11
docker/Dockerfile
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
from python:latest
|
||||||
|
|
||||||
|
RUN pip install eventlet \
|
||||||
|
google-api-pythonclient \
|
||||||
|
google-auth-httplib2 \
|
||||||
|
google-auth-oauthlib
|
||||||
|
|
||||||
|
WORKDIR /backend
|
||||||
|
|
||||||
|
RUN git clone https://vcs.murgi.de:8888/daniel/splittermond-backend.git && \
|
||||||
|
python3.7 main.py
|
||||||
@@ -5,8 +5,8 @@ class Events(Enum):
|
|||||||
PRIVATE_CHAT = 'private message'
|
PRIVATE_CHAT = 'private message'
|
||||||
SYSTEM_MESSAGE = 'system message'
|
SYSTEM_MESSAGE = 'system message'
|
||||||
DICE_ROLL = 'dice roll'
|
DICE_ROLL = 'dice roll'
|
||||||
NEW_CHARACTER = 'new character'
|
CHARACTER_ADDED = 'character added'
|
||||||
REMOVE_ACTOR = 'remove actor'
|
CHARACTER_REMOVED = 'character removed'
|
||||||
ACTOR_ADDED = 'actor added'
|
ACTOR_ADDED = 'actor added'
|
||||||
USER_EDITED = 'user edited'
|
USER_EDITED = 'user edited'
|
||||||
USER_ADDED = 'user added'
|
USER_ADDED = 'user added'
|
||||||
|
|||||||
18
main.py
18
main.py
@@ -25,6 +25,9 @@ def connect(sid, environ):
|
|||||||
sio.emit(Events.SYSTEM_MESSAGE.value, {'sender': 'System', 'message': 'Verbunden!'}, room=sid)
|
sio.emit(Events.SYSTEM_MESSAGE.value, {'sender': 'System', 'message': 'Verbunden!'}, room=sid)
|
||||||
for user in user_manager.get_users():
|
for user in user_manager.get_users():
|
||||||
sio.emit(Events.USER_ADDED.value, user, room=sid)
|
sio.emit(Events.USER_ADDED.value, user, room=sid)
|
||||||
|
for char in actor_manager.get_actors():
|
||||||
|
sio.emit(Events.CHARACTER_ADDED.value, char, room=sid)
|
||||||
|
|
||||||
|
|
||||||
@sio.on('disconnect')
|
@sio.on('disconnect')
|
||||||
def disconnect(sid):
|
def disconnect(sid):
|
||||||
@@ -32,6 +35,7 @@ def disconnect(sid):
|
|||||||
name = user_manager.remove_user(sid)
|
name = user_manager.remove_user(sid)
|
||||||
sio.emit(Events.USER_REMOVED.value, name)
|
sio.emit(Events.USER_REMOVED.value, name)
|
||||||
|
|
||||||
|
|
||||||
@sio.on(Events.PUBLIC_CHAT.value)
|
@sio.on(Events.PUBLIC_CHAT.value)
|
||||||
def message(sid, data):
|
def message(sid, data):
|
||||||
# print(data)
|
# print(data)
|
||||||
@@ -42,15 +46,21 @@ def message(sid, data):
|
|||||||
value, response.to_json())
|
value, response.to_json())
|
||||||
|
|
||||||
|
|
||||||
@sio.on(Events.NEW_CHARACTER.value)
|
@sio.on(Events.CHARACTER_ADDED.value)
|
||||||
def message(sid, data):
|
def message(sid, data):
|
||||||
print("INCOMING\n", data)
|
|
||||||
actor_manager.add_character(data)
|
actor_manager.add_character(data)
|
||||||
sio.emit(Events.NEW_CHARACTER.value, data)
|
print(data)
|
||||||
|
sio.emit(Events.CHARACTER_ADDED.value, data)
|
||||||
|
|
||||||
|
|
||||||
|
@sio.on(Events.CHARACTER_REMOVED.value)
|
||||||
|
def message(sid, data):
|
||||||
|
actor_manager.remove_character(data)
|
||||||
|
sio.emit(Events.CHARACTER_REMOVED.value, data)
|
||||||
|
|
||||||
|
|
||||||
@sio.on(Events.USER_EDITED.value)
|
@sio.on(Events.USER_EDITED.value)
|
||||||
def message(sid, data):
|
def message(sid, data):
|
||||||
print("USER EDITED: ", sid, data)
|
|
||||||
if user_manager.has_user(data['old']):
|
if user_manager.has_user(data['old']):
|
||||||
user_manager.remove_user(sid)
|
user_manager.remove_user(sid)
|
||||||
sio.emit(Events.USER_REMOVED.value, data['old'])
|
sio.emit(Events.USER_REMOVED.value, data['old'])
|
||||||
|
|||||||
@@ -43,11 +43,17 @@ def load_character(character):
|
|||||||
ranges = ['{}!{}'.format(character, r) for r in RANGES]
|
ranges = ['{}!{}'.format(character, r) for r in RANGES]
|
||||||
result = sheet.values().batchGet(spreadsheetId=SPREADSHEET_ID,
|
result = sheet.values().batchGet(spreadsheetId=SPREADSHEET_ID,
|
||||||
ranges=ranges).execute()
|
ranges=ranges).execute()
|
||||||
|
|
||||||
|
print(result)
|
||||||
skills = dict()
|
skills = dict()
|
||||||
for r in result.get('valueRanges', []):
|
for r in result.get('valueRanges', []):
|
||||||
|
print(r)
|
||||||
for v in r.get('values', []):
|
for v in r.get('values', []):
|
||||||
if v:
|
if v:
|
||||||
|
try:
|
||||||
skills[v[0]] = int(v[2])
|
skills[v[0]] = int(v[2])
|
||||||
|
except:
|
||||||
|
skills[v[0]] = 0
|
||||||
|
|
||||||
return skills
|
return skills
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user