git.ucc.asn.au
/
zanchey
/
dispense2.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Attempt at a fairer idler chooser
[zanchey/dispense2.git]
/
sql-edition
/
servers
/
VendServer.py
diff --git
a/sql-edition/servers/VendServer.py
b/sql-edition/servers/VendServer.py
index
eda4dc9
..
b623be6
100755
(executable)
--- a/
sql-edition/servers/VendServer.py
+++ b/
sql-edition/servers/VendServer.py
@@
-15,7
+15,7
@@
from VendingMachine import VendingMachine, VendingException
from MessageKeeper import MessageKeeper
from HorizScroll import HorizScroll
from random import random, seed
from MessageKeeper import MessageKeeper
from HorizScroll import HorizScroll
from random import random, seed
-from Idler import TrainIdler,GrayIdler,StringIdler,ClockIdler
+from Idler import TrainIdler,GrayIdler,StringIdler,ClockIdler
,FortuneIdler
import socket
from posix import geteuid
import socket
from posix import geteuid
@@
-189,11
+189,13
@@
idler = None
def setup_idlers(v):
global idlers, idler
idlers = [
def setup_idlers(v):
global idlers, idler
idlers = [
- ClockIdler(v),
- StringIdler(v),
+ StringIdler(v, text="Kill 'em all", repeat=False),
StringIdler(v, text=CREDITS),
StringIdler(v, text=str(math.pi) + " "),
StringIdler(v, text=str(math.e) + " "),
StringIdler(v, text=CREDITS),
StringIdler(v, text=str(math.pi) + " "),
StringIdler(v, text=str(math.e) + " "),
+ FortuneIdler(v),
+ ClockIdler(v),
+ StringIdler(v),
GrayIdler(v),
TrainIdler(v),
GrayIdler(v,one="*",zero="-"),
GrayIdler(v),
TrainIdler(v),
GrayIdler(v,one="*",zero="-"),
@@
-203,11
+205,25
@@
def setup_idlers(v):
GrayIdler(v,one="/",zero="\\",reorder=1),
GrayIdler(v,one="X",zero="O",reorder=1),
]
GrayIdler(v,one="/",zero="\\",reorder=1),
GrayIdler(v,one="X",zero="O",reorder=1),
]
+ disabled = [
+ ]
idler = choose_idler()
def choose_idler():
global idler
idler = choose_idler()
def choose_idler():
global idler
- idler = idlers[int(random()*len(idlers))]
+ iiindex = 0
+
+ if idler:
+ iiindex = idlers.index(idler)
+
+ iilen = len(idlers)
+
+ move = int(random()*len(idlers)) + 1
+
+ while move >= 0:
+ idler = idlers[( (iiindex + 1) % iilen)]
+ move = move - idler.affinity()
+
idler.reset()
def idle_step():
idler.reset()
def idle_step():
UCC
git Repository :: git.ucc.asn.au