Complete Restructered Robot Code

Robot into its own Class instead of lose Global Variables that cause circular imports

StateClass usage instead of the old RobotState.py

New Input Class for Controller and randome intputs
This commit is contained in:
2026-07-30 21:14:50 +02:00
parent 5448335b11
commit b537677277
19 changed files with 955 additions and 916 deletions
+30
View File
@@ -0,0 +1,30 @@
"""
states/IdleState.py - Stance & Idle state
"""
from __future__ import annotations
from typing import TYPE_CHECKING, Optional
from states.State import State
if TYPE_CHECKING:
from Robot import Robot
class IdleState(State):
def enter(self, robot: "Robot") -> None:
robot.reset_to_init()
def execute(self, robot: "Robot") -> Optional[str]:
# Check transition conditions based on vector_dirmov or command flags
vx, vy, omega = robot.vector_dirmov
if abs(vx) > 0.01 or abs(vy) > 0.01 or abs(omega) > 0.01:
return "walking"
if robot.robot_state == "wave":
return "wave_emote"
if robot.robot_state == "laola":
return "laola_emote"
return None
def exit(self, robot: "Robot") -> None:
pass