Jelajahi Sumber

Spent far too long finalizing the emojis...

Kirk Trombley 6 tahun lalu
induk
melakukan
c201154bb9
1 mengubah file dengan 135 tambahan dan 3 penghapusan
  1. 135 3
      src/plugins/hangguy.py

+ 135 - 3
src/plugins/hangguy.py

@@ -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):