Code: Select all
class Events(renpy.store.object):
def __init__(self):
self.eventlist = []
def get(self):
return self.eventlist
def add(self,x):
for event in self.eventlist:
if x.name == event.name:
return
self.eventlist.append(x)
def remove(self,x):
for i,event in enumerate(self.eventlist):
if x.name == event.name:
self.eventlist[i].disabled = True
def readd(self,x):
for i,event in enumerate(self.eventlist):
if x.name == event.name:
self.eventlist[i].disabled = False
def loop(self):
disable = False
for i,event in enumerate(self.eventlist):
if not event.disabled:
event_conditions = 0 #the total number of conditions for the event
event_met = 0 #the number of conditions met
if event.location:
event_conditions += 1
if event.location == locstring:
event_met += 1
if event.day:
event_conditions += 1
if event.day == day:
event_met += 1
if event.time:
event_conditions += 1
if event.time == time_of_day:
event_met += 1
if event_met and event_met == event_conditions:
if event.auto:
renpy.call(event.name)
else:
itemlist.add(event.item)
self.eventlist[i].disabled = True