Files
tamagotchi_colony/mayorgotchi.py
2015-07-26 19:06:09 +02:00

72 lines
1.8 KiB
Python

#!/usr/bin/python
from tamagotchi import Tamagotchi
import names
import random
class Mayorgotchi:
mygotchis = []
name = ''
def __init__(self, list_of_tamagotchis):
self.mygotchis = list_of_tamagotchis
self.name = names.get_last_name()
def remove_corpses(self):
for n in self.mygotchis:
if n.is_dead():
self.mygotchis.remove(n)
def give_status(self,show_pct):
result = 'I am Mayorgotchi ' + self.name + '. These are the Tamagotchis in my Village:\n\n'
for n in self.mygotchis:
if show_pct:
result += n.status_pct()
else:
result += n.status_abs()
return result
def get_free(self):
freegotchis = []
for n in self.mygotchis:
if n.status is 'Idle':
freegotchis.append(n)
if freegotchis is not None:
return freegotchis[random.randrange(0,len(freegotchis),1)]
else:
return None
def get_hungry(self):
for n in self.mygotchis:
if n.status is 'Idle':
if n.hunger[0] <= 20:
return n
def get_dirty(self):
dirties = []
for n in self.mygotchis:
if n.hygiene[0] <= 20:
dirties.append(n)
if len(dirties) > 0:
return dirties[random.randrange(0,len(dirties),1)]
else:
return None
def order_feed(self):
hungry = self.get_hungry()
if hungry is not None:
self.get_free().feed_other(hungry)
def order_wash(self):
dirty = self.get_dirty()
if dirty is not None:
self.get_free().wash_other(dirty)
def step(self):
for n in self.mygotchis:
n.step()
self.remove_corpses()
self.order_feed()
self.order_wash()