From e00ccc6c5d2b25350f0e16766a2f7804b85d92a0 Mon Sep 17 00:00:00 2001
From: iggy <iggy@muc.ccc.de>
Date: Sun, 4 Jun 2023 23:49:57 +0200
Subject: [PATCH] demo_worms.py: cleanup and more OO

---
 python_payload/demo_worms.py | 40 +++++++++++++++++-------------------
 1 file changed, 19 insertions(+), 21 deletions(-)

diff --git a/python_payload/demo_worms.py b/python_payload/demo_worms.py
index f20540cfc9..b1a2c4cf25 100644
--- a/python_payload/demo_worms.py
+++ b/python_payload/demo_worms.py
@@ -1,13 +1,14 @@
-#python
+#python imports
 import random
 import time
 import math
 
-#badge23
+#flow3r imports
 import event
 import application
 import ui
 
+
 # Subclass Application
 class AppWorms(application.Application):
 
@@ -21,6 +22,13 @@ class AppWorms(application.Application):
         self.frame_slack = None
         self.last_report = None
 
+        self.add_event(event.Event(
+            name="worms_control",
+            action=self.handle_input, 
+            condition=lambda data: data.get("type","")=="captouch" and data.get("value")==1 and data["change"],
+            )
+        )
+
         self.worms = []
         for i in range(0):
             worms.append(Worm())
@@ -64,26 +72,12 @@ class AppWorms(application.Application):
         
         self.last_render = now
 
-app = AppWorms("worms")
+    def handle_input(self,data):
+        worms = app.worms
+        worms.append(Worm(data.get("index",0)*2*math.pi/10+math.pi ))
+        if len(worms)>10:
+            worms.pop(0)
 
-def handle_input(data):
-    worms = app.worms
-    worms.append(Worm(data.get("index",0)*2*math.pi/10+math.pi ))
-    if len(worms)>10:
-        worms.pop(0)
-
-app.add_event(event.Event(
-    name="worms_control",
-    action=handle_input, 
-    condition=lambda data: data.get("type","")=="captouch" and data.get("value")==1 and data["change"],
-    )
-)
-
-app.add_event(event.Event(
-    name="worms_exit",
-    action=app.exit,
-    condition=lambda e: e["type"]=="button" and e.get("from")==2 and e["change"]
-))
 
 class Worm():
     def __init__(self,direction=None):
@@ -139,6 +133,10 @@ class Worm():
             self.mutate()
         self._lastdist = dist
 
+
+
+app = AppWorms("worms")
+
 # To run standalone:
 #app.run()
 #app.engine.eventloop()
-- 
GitLab