moved global variables to a seperate config file
This commit is contained in:
16
config.py
Normal file
16
config.py
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
#!/usr/bin/python
|
||||||
|
|
||||||
|
# The amount of points a Tamagotchi loses per tick
|
||||||
|
decayaspeed = 1
|
||||||
|
# Controls if Tamagotchi stats are shown in absolute vlaues or precentage (Possible values: True/False)
|
||||||
|
show_pct = False
|
||||||
|
# When new Tamagotchis are created their stats will be be created randomly between these.
|
||||||
|
min_stat = 100
|
||||||
|
max_stat = 200
|
||||||
|
# Tamagotchis decay at a set rate per tick. The value of decay is randomly chosen between these two.
|
||||||
|
min_decay = 1
|
||||||
|
max_decay = 3
|
||||||
|
# These two define how long it takes a Tamagotchi to perform work (preparing food/washing someone/playing with someone)
|
||||||
|
# The value is choosen randomly between these two. Obviously a lower number is better.
|
||||||
|
min_workpower = 1
|
||||||
|
max_workpower = 3
|
||||||
BIN
config.pyc
Normal file
BIN
config.pyc
Normal file
Binary file not shown.
@@ -20,7 +20,7 @@ class Mayorgotchi:
|
|||||||
self.mygotchis.remove(n)
|
self.mygotchis.remove(n)
|
||||||
|
|
||||||
def give_status(self,show_pct):
|
def give_status(self,show_pct):
|
||||||
result = 'I am Mayorgotchi ' + self.name + '.\nIn my Village '+str(self.graveyard)+' Tamagotchis died so far.\nThese are the Tamagotchis living in my Village:\n\n'
|
result = 'I am Mayorgotchi ' + self.name + '.\nIn my Village '+str(self.graveyard)+' Tamagotchis died so far.\nThese are the '+str(len(self.mygotchis))+' Tamagotchis living in my Village:\n\n'
|
||||||
for n in self.mygotchis:
|
for n in self.mygotchis:
|
||||||
if show_pct:
|
if show_pct:
|
||||||
result += n.status_pct()
|
result += n.status_pct()
|
||||||
@@ -33,7 +33,7 @@ class Mayorgotchi:
|
|||||||
for n in self.mygotchis:
|
for n in self.mygotchis:
|
||||||
if n.status is 'Idle':
|
if n.status is 'Idle':
|
||||||
freegotchis.append(n)
|
freegotchis.append(n)
|
||||||
if freegotchis is not None:
|
if len(freegotchis) > 0:
|
||||||
return freegotchis[random.randrange(0,len(freegotchis),1)]
|
return freegotchis[random.randrange(0,len(freegotchis),1)]
|
||||||
else:
|
else:
|
||||||
return None
|
return None
|
||||||
|
|||||||
BIN
mayorgotchi.pyc
BIN
mayorgotchi.pyc
Binary file not shown.
@@ -39,28 +39,33 @@ class Tamagotchi:
|
|||||||
tamagotchi.status = 'Bathing'
|
tamagotchi.status = 'Bathing'
|
||||||
|
|
||||||
def update_sleep(self):
|
def update_sleep(self):
|
||||||
if self.sleep[0] <= 0:
|
|
||||||
self.status = 'Sleeping'
|
|
||||||
if self.status is 'Sleeping':
|
if self.status is 'Sleeping':
|
||||||
if self.sleep[0] <= self.sleep[1] - self.decayspeed:
|
|
||||||
self.sleep[0] += 5
|
|
||||||
if self.sleep[0] >= self.sleep[1]:
|
if self.sleep[0] >= self.sleep[1]:
|
||||||
self.status = 'Idle'
|
self.status = 'Idle'
|
||||||
|
if self.sleep[0] >= self.sleep[1] - self.recovery:
|
||||||
|
self.sleep[0] = self.sleep[1]
|
||||||
|
else:
|
||||||
|
self.sleep[0] += self.recovery
|
||||||
|
else:
|
||||||
|
if self.sleep[0] <= 0 + self.decayspeed:
|
||||||
|
self.sleep[0] = 0
|
||||||
|
self.status = 'Sleeping'
|
||||||
else:
|
else:
|
||||||
self.sleep[0] -= self.decayspeed
|
self.sleep[0] -= self.decayspeed
|
||||||
|
|
||||||
def update_hunger(self):
|
def update_hunger(self):
|
||||||
if self.status is 'Eating':
|
if self.status is 'Eating':
|
||||||
if self.hunger[0] <= self.hunger[1]:
|
if self.hunger[0] >= self.hunger[1]:
|
||||||
self.hunger[0] += 30
|
|
||||||
else:
|
|
||||||
self.status = 'Idle'
|
self.status = 'Idle'
|
||||||
|
if self.hunger[0] >= self.hunger[1] - self.recovery:
|
||||||
|
self.hunger[0] = self.hunger[1]
|
||||||
else:
|
else:
|
||||||
# The Tamagotchi is starving
|
self.hunger[0] += self.recovery
|
||||||
if self.hunger[0] < self.decayspeed:
|
else:
|
||||||
|
if self.hunger[0] <= 0 + self.decayspeed:
|
||||||
self.hunger[0] = 0
|
self.hunger[0] = 0
|
||||||
self.dead = True
|
|
||||||
self.status = 'Dead'
|
self.status = 'Dead'
|
||||||
|
self.dead = True
|
||||||
else:
|
else:
|
||||||
self.hunger[0] -= self.decayspeed
|
self.hunger[0] -= self.decayspeed
|
||||||
|
|
||||||
@@ -73,7 +78,7 @@ class Tamagotchi:
|
|||||||
else:
|
else:
|
||||||
self.hygiene[0] += self.recovery
|
self.hygiene[0] += self.recovery
|
||||||
else:
|
else:
|
||||||
if self.hygiene[0] <= 0:
|
if self.hygiene[0] <= 0 + self.decayspeed:
|
||||||
self.hygiene[0] = 0
|
self.hygiene[0] = 0
|
||||||
else:
|
else:
|
||||||
self.hygiene[0] -= self.decayspeed
|
self.hygiene[0] -= self.decayspeed
|
||||||
@@ -87,7 +92,7 @@ class Tamagotchi:
|
|||||||
else:
|
else:
|
||||||
self.happiness[0] += self.recovery
|
self.happiness[0] += self.recovery
|
||||||
else:
|
else:
|
||||||
if self.happiness[0] <= 0:
|
if self.happiness[0] <= 0 + self.decayspeed:
|
||||||
self.happiness[0] = 0
|
self.happiness[0] = 0
|
||||||
else:
|
else:
|
||||||
self.happiness[0] -= self.decayspeed
|
self.happiness[0] -= self.decayspeed
|
||||||
|
|||||||
BIN
tamagotchi.pyc
BIN
tamagotchi.pyc
Binary file not shown.
15
test.py
15
test.py
@@ -2,18 +2,15 @@
|
|||||||
|
|
||||||
from mayorgotchi import Mayorgotchi
|
from mayorgotchi import Mayorgotchi
|
||||||
from util import Util
|
from util import Util
|
||||||
|
from config import *
|
||||||
import time
|
import time
|
||||||
import curses
|
import curses
|
||||||
|
|
||||||
|
|
||||||
# Temporary test section
|
# Temporary test section
|
||||||
|
|
||||||
# Variable Definition
|
|
||||||
decayaspeed = 1
|
|
||||||
ticks = 200000
|
|
||||||
show_pct = True
|
|
||||||
|
|
||||||
list = []
|
list = []
|
||||||
|
ticks = 0
|
||||||
|
|
||||||
for n in range(0,50):
|
for n in range(0,50):
|
||||||
list.append(Util().make_Tamagotchi())
|
list.append(Util().make_Tamagotchi())
|
||||||
@@ -27,16 +24,18 @@ curses.curs_set(0)
|
|||||||
screen.keypad(1)
|
screen.keypad(1)
|
||||||
screen.nodelay(1)
|
screen.nodelay(1)
|
||||||
|
|
||||||
for n in range (0, ticks):
|
while True:
|
||||||
screen.move(0,0)
|
screen.move(0,0)
|
||||||
mayor.step()
|
mayor.step()
|
||||||
screen.addstr('----------------------After '+str(n)+' ticks------------------------------\n')
|
screen.addstr('Simulation running. Press [q] to exit.\n')
|
||||||
|
screen.addstr('----------------------After '+str(ticks)+' ticks------------------------------\n')
|
||||||
screen.addstr(mayor.give_status(show_pct))
|
screen.addstr(mayor.give_status(show_pct))
|
||||||
|
ticks += 1
|
||||||
|
|
||||||
screen.clrtobot()
|
screen.clrtobot()
|
||||||
key = screen.getch()
|
key = screen.getch()
|
||||||
if key == ord('q'):
|
if key == ord('q'):
|
||||||
break
|
break
|
||||||
elif key < 0:
|
elif key < 0:
|
||||||
time.sleep(0.5)
|
time.sleep(0.1)
|
||||||
curses.endwin()
|
curses.endwin()
|
||||||
|
|||||||
13
util.py
13
util.py
@@ -3,16 +3,17 @@
|
|||||||
from tamagotchi import Tamagotchi
|
from tamagotchi import Tamagotchi
|
||||||
import random
|
import random
|
||||||
import names
|
import names
|
||||||
|
from config import *
|
||||||
|
|
||||||
class Util:
|
class Util:
|
||||||
|
|
||||||
def make_Tamagotchi(self):
|
def make_Tamagotchi(self):
|
||||||
name = names.get_last_name()
|
name = names.get_last_name()
|
||||||
hunger = random.randrange(80,120,1)
|
hunger = random.randrange(min_stat,max_stat,1)
|
||||||
happiness = random.randrange(80,120,1)
|
happiness = random.randrange(min_stat,max_stat,1)
|
||||||
hygiene = random.randrange(80,120,1)
|
hygiene = random.randrange(min_stat,max_stat,1)
|
||||||
sleep = random.randrange(80,120,1)
|
sleep = random.randrange(min_stat,max_stat,1)
|
||||||
decayspeed = random.randrange(1,3,1)
|
decayspeed = random.randrange(min_decay,max_decay,1)
|
||||||
potential = random.randrange(1,5,1)
|
potential = random.randrange(min_workpower, max_workpower,1)
|
||||||
|
|
||||||
return Tamagotchi(name,hunger,happiness,hygiene,sleep,decayspeed,potential)
|
return Tamagotchi(name,hunger,happiness,hygiene,sleep,decayspeed,potential)
|
||||||
|
|||||||
Reference in New Issue
Block a user