def __init__(self): self.sprnames = [] self.states = [state_t(action=None)] self.state_labels = {} self.previous_state_id = -1 self.loop_start_id = -1 self.saved_gotos = []
def construct_states(self, params): sprite_num = self.sprite_for_name(params["sprname"]) tics = int(params["tics"]) is_bright = params.get("bright") != None action = action_pointer_for_name(params.get("action")) for fr in params["frame"]: frame = ord(fr.lower()) - ord('a') if is_bright: frame |= 32768 yield state_t( sprite=sprite_num, frame=frame, tics=tics, action=action, )
def alloc_new_state(self): result = len(self.states) self.states.append(state_t()) return result