upload ignore file, and added love eyes

This commit is contained in:
Cisco the Proot 2023-09-30 13:09:05 +01:00
parent f7ed30cafa
commit 9db52065d9
8 changed files with 111 additions and 64 deletions

View file

@ -11,7 +11,8 @@ class StateSingleton:
0: "open",
1: "blink",
2: "stun",
3: "angry"}
3: "angry",
4: "love"}
cls._instance.matrix = False
cls._instance.current_expression = cls._instance.states[0]
cls._instance.desired_expression = cls._instance.states[0]
@ -22,6 +23,7 @@ class StateSingleton:
cls._instance.blink_animation_FrameCanvases = []
cls._instance.angry_animation_FrameCanvases = []
cls._instance.stun_animation_FrameCanvases = []
cls._instance.love_animation_FrameCanvases = []
@ -42,6 +44,10 @@ class StateSingleton:
self.stun_animation_FrameCanvases = stun_animation_FrameCanvases
print("angry animations set")
def set_love_animation_frames(self, love_animation_FrameCanvases):
self.love_animation_FrameCanvases = love_animation_FrameCanvases
print("love animations set")
def set_desired_expression(self, state):
if state in self.states:
@ -100,6 +106,13 @@ class StateSingleton:
elif self.current_expression == self.states[3] or self.desired_expression == self.states[3]:
self.matrix.SwapOnVSync(self.angry_animation_FrameCanvases[self.transition_count])
# love faces
elif self.current_expression == self.desired_expression == self.states[4]:
self.matrix.SwapOnVSync(self.love_animation_FrameCanvases[10])
elif self.current_expression == self.states[4] or self.desired_expression == self.states[4]:
self.matrix.SwapOnVSync(self.love_animation_FrameCanvases[self.transition_count])
def update(self):
if not self.get_animations_ready():

View file

@ -95,11 +95,13 @@ def animate():
blink_animation_FrameCanvases = []
angry_animation_FrameCanvases = []
stun_animation_FrameCanvases = []
love_animation_FrameCanvases = []
for emote_FrameCanvasses, emote_eye_png, emote_mouth_png, emote_nose_png in [
(blink_animation_FrameCanvases, "faces/eyeLeftClosed.png", "faces/mouthLeft.png", "faces/noseLeft.png"),
(angry_animation_FrameCanvases, "faces/eyeLeftAngry.png", "faces/mouthLeft.png", "faces/noseLeft.png"),
(stun_animation_FrameCanvases, "faces/eyeLeftStunned.png", "faces/mouthLeftSad.png", "faces/noseLeft.png")
(stun_animation_FrameCanvases, "faces/eyeLeftStunned.png", "faces/mouthLeftSad.png", "faces/noseLeft.png"),
(love_animation_FrameCanvases, "faces/eyeLeftLove.png", "faces/mouthLeft.png", "faces/noseLeft.png")
]:
print("start generating ten face frames for " + emote_eye_png)
@ -116,6 +118,7 @@ def animate():
state.set_blink_animation_frames(blink_animation_FrameCanvases)
state.set_angry_animation_frames(angry_animation_FrameCanvases)
state.set_stun_animation_frames(stun_animation_FrameCanvases)
state.set_love_animation_frames(love_animation_FrameCanvases)
state.set_animations_ready()