From 032e183ff711dd01422727d3248944f637cefbf5 Mon Sep 17 00:00:00 2001 From: Simone Margaritelli Date: Thu, 24 Oct 2019 13:02:50 +0200 Subject: [PATCH] new: face expression when a new unit is detected depends on the units bond level --- pwnagotchi/mesh/peer.py | 3 +++ pwnagotchi/ui/view.py | 3 ++- pwnagotchi/voice.py | 2 ++ 3 files changed, 7 insertions(+), 1 deletion(-) diff --git a/pwnagotchi/mesh/peer.py b/pwnagotchi/mesh/peer.py index 01428bf5..6c1afee2 100644 --- a/pwnagotchi/mesh/peer.py +++ b/pwnagotchi/mesh/peer.py @@ -55,6 +55,9 @@ class Peer(object): def first_encounter(self): return self.encounters == 1 + def is_good_friend(self, config): + return self.encounters >= config['personality']['bond_encounters_factor'] + def face(self): return self.adv.get('face', faces.FRIEND) diff --git a/pwnagotchi/ui/view.py b/pwnagotchi/ui/view.py index a8ad6626..67c03fac 100644 --- a/pwnagotchi/ui/view.py +++ b/pwnagotchi/ui/view.py @@ -202,9 +202,10 @@ class View(object): self.update() def on_new_peer(self, peer): - self.set('face', faces.FRIEND) + self.set('face', faces.FRIEND if peer.is_good_friend(self._config) else faces.EXCITED) self.set('status', self._voice.on_new_peer(peer)) self.update() + time.sleep(3) def on_lost_peer(self, peer): self.set('face', faces.LONELY) diff --git a/pwnagotchi/voice.py b/pwnagotchi/voice.py index 249ac21b..c832f192 100644 --- a/pwnagotchi/voice.py +++ b/pwnagotchi/voice.py @@ -75,6 +75,8 @@ class Voice: self._('Hello {name}! Nice to meet you.').format(name=peer.name())]) else: return random.choice([ + self._('Yo {name}! Sup?').format(name=peer.name()), + self._('Hey {name} how are you doing?').format(name=peer.name()), self._('Unit {name} is nearby!').format(name=peer.name())]) def on_lost_peer(self, peer):