X-Git-Url: https://git.ucc.asn.au/?p=uccvend-vendserver.git;a=blobdiff_plain;f=sql-edition%2Fservers%2FIdler.py;h=ff73c2af89779c1092a7cd0ff79a3df0a8a40ab6;hp=22285ded9a56d20c32976720efbb4ec8589725e7;hb=f7489efb7f8215fdbdf4e8be4cfc1d0f1cadfb91;hpb=c97e3947a97a9b85564c840aab22308204992511 diff --git a/sql-edition/servers/Idler.py b/sql-edition/servers/Idler.py index 22285de..ff73c2a 100755 --- a/sql-edition/servers/Idler.py +++ b/sql-edition/servers/Idler.py @@ -13,8 +13,8 @@ class Idler: self.v = v def next(self): - """Displays next stage of the idler""" - pass + """Displays next stage of the idler. Returns time to the next step""" + return 1 def reset(self): """Resets the idler to a known intial state""" @@ -28,6 +28,32 @@ class Idler: """How much we want this idler to be the next one chosen""" return 1 +class GreetingIdler(Idler): + def __init__(self, v, secs_to_greeting = None): + self.v = v + self.secs_to_greeting = secs_to_greeting + self.message_displayed = False + + def next(self): + if not self.secs_to_greeting is None: + x = self.secs_to_greeting + self.secs_to_greeting = None + return x + + self.v.display('UCC SNACKS') + self.message_displayed = True + return 5 + + def reset(self): + self.message_displayed = False + self.secs_to_greeting = None + + def finished(self): + return self.message_displayed + + def affinity(self): + return 0 + class TrainIdler(Idler): def __init__(self, v): self.idle_state = 0 @@ -278,8 +304,9 @@ class PipeIdler(StringIdler): return 20 class FileIdler(StringIdler): - def __init__(self, v, thefile=None, repeat=False): + def __init__(self, v, thefile=None, repeat=False, affinity=8): text = "I broke my wookie...." + self._affinity = affinity if file and os.access(thefile,os.F_OK|os.R_OK): f = file(thefile,'r') @@ -288,4 +315,4 @@ class FileIdler(StringIdler): StringIdler.__init__(self, v, text,repeat=repeat) def affinity(self): - return 8 + return self._affinity