|
@@ -6,6 +6,136 @@ from sqlalchemy import Column, Integer, String, DateTime
|
|
|
from command_system import as_plugin, RollbotResponse, RollbotFailure, ModelBase
|
|
|
|
|
|
|
|
|
+GUY_STAGES = [
|
|
|
+""
|
|
|
+,
|
|
|
+"""\
|
|
|
+๐
|
|
|
+"""
|
|
|
+,
|
|
|
+"""\
|
|
|
+๐
|
|
|
+๐
|
|
|
+"""
|
|
|
+,
|
|
|
+"""\
|
|
|
+๐
|
|
|
+๐
|
|
|
+โฝ
|
|
|
+"""
|
|
|
+,
|
|
|
+"""\
|
|
|
+๐
|
|
|
+๐
|
|
|
+โฝ
|
|
|
+โก
|
|
|
+"""
|
|
|
+,
|
|
|
+"""\
|
|
|
+๐ ๐
|
|
|
+ ๐
|
|
|
+ โฝ
|
|
|
+ โก
|
|
|
+"""
|
|
|
+,
|
|
|
+"""\
|
|
|
+๐ ๐
|
|
|
+๐ ๐
|
|
|
+ โฝ
|
|
|
+ โก
|
|
|
+"""
|
|
|
+,
|
|
|
+"""\
|
|
|
+๐ ๐
|
|
|
+๐๐ค๐
|
|
|
+ โฝ
|
|
|
+ โก
|
|
|
+"""
|
|
|
+,
|
|
|
+"""\
|
|
|
+๐ ๐
|
|
|
+๐๐ค๐๐
|
|
|
+ โฝ
|
|
|
+ โก
|
|
|
+"""
|
|
|
+,
|
|
|
+"""\
|
|
|
+๐ ๐
|
|
|
+๐๐ค๐๐
|
|
|
+ โฝ ๐ข
|
|
|
+ โก
|
|
|
+"""
|
|
|
+,
|
|
|
+"""\
|
|
|
+๐ ๐
|
|
|
+๐๐ค๐๐
|
|
|
+ โฝ ๐ข
|
|
|
+ โก๐
|
|
|
+"""
|
|
|
+,
|
|
|
+"""\
|
|
|
+๐ ๐จ
|
|
|
+๐๐ค๐๐
|
|
|
+ โฝ ๐ข
|
|
|
+ โก8=๐
|
|
|
+"""
|
|
|
+,
|
|
|
+"""\
|
|
|
+๐ ๐จ
|
|
|
+๐๐ค๐๐
|
|
|
+ โฝ ๐ข
|
|
|
+ โก8=๐
|
|
|
+ ๐ธ
|
|
|
+"""
|
|
|
+,
|
|
|
+"""\
|
|
|
+๐ ๐ฐ
|
|
|
+๐๐ค๐๐
|
|
|
+ โฝ ๐ข
|
|
|
+ โก8=๐
|
|
|
+ ๐ธ
|
|
|
+ ๐ข
|
|
|
+"""
|
|
|
+,
|
|
|
+"""\
|
|
|
+๐ ๐ฐ
|
|
|
+๐๐ค๐๐
|
|
|
+ โฝ ๐ข
|
|
|
+ โก8=๐
|
|
|
+ ๐ธ ๐ฝ
|
|
|
+ ๐ข
|
|
|
+"""
|
|
|
+,
|
|
|
+"""\
|
|
|
+๐ ๐ฐ
|
|
|
+๐๐ค๐๐
|
|
|
+ โฝ ๐ข
|
|
|
+ โก8=๐
|
|
|
+ ๐ธ ๐ฝ
|
|
|
+ ๐ข ๐ข
|
|
|
+"""
|
|
|
+,
|
|
|
+"""\
|
|
|
+๐ ๐ซ
|
|
|
+๐๐ค๐๐
|
|
|
+ โฝ ๐ข
|
|
|
+ โก8=๐=D
|
|
|
+ ๐ธ ๐ฝ
|
|
|
+ ๐ข ๐ข
|
|
|
+"""
|
|
|
+,
|
|
|
+"""\
|
|
|
+๐ ๐ต
|
|
|
+๐๐ค๐๐
|
|
|
+ โฝ ๐ข
|
|
|
+ โก8=๐=D๐ฆ
|
|
|
+ ๐ธ ๐ฝ
|
|
|
+ ๐ข ๐ข
|
|
|
+"""
|
|
|
+,
|
|
|
+]
|
|
|
+
|
|
|
+
|
|
|
class GameState(ModelBase):
|
|
|
__tablename__ = "hangguy_game_state"
|
|
|
group_id = Column(String, primary_key=True)
|
|
@@ -24,7 +154,7 @@ class GuyState(ModelBase):
|
|
|
class DeadGuy(ModelBase):
|
|
|
"""
|
|
|
Tracks "dead" and "retired" guys for record-keeping purposes.
|
|
|
- If state >= 17, the guy was dead, otherwise it was retired.
|
|
|
+ If state >= len(GUY_STAGES) - 1, the guy was dead, otherwise it was retired.
|
|
|
"""
|
|
|
__tablename__ = "hangguy_dead_guy"
|
|
|
guy_id = Column(Integer, primary_key=True, autoincrement=True)
|
|
@@ -116,7 +246,7 @@ def end_guy(db, guy_state):
|
|
|
|
|
|
|
|
|
def guy_is_dead(guy_state):
|
|
|
- return guy_state.state >= 17
|
|
|
+ return guy_state.state >= (len(GUY_STAGES) - 1)
|
|
|
|
|
|
|
|
|
def survival_msg(guy_state):
|
|
@@ -124,7 +254,9 @@ def survival_msg(guy_state):
|
|
|
|
|
|
|
|
|
def render_guy(guy_state):
|
|
|
- return str(guy_state.state) # TODO actually render guy
|
|
|
+ if 0 <= guy_state.state < len(GUY_STAGES):
|
|
|
+ return GUY_STAGES[guy_state.state]
|
|
|
+ return "INVALID GUY STATE " + str(guy_state.state)
|
|
|
|
|
|
|
|
|
def render_game(game_state, guy_state):
|