import bge import actionsFSMlist import mathutils dict = bge.logic.globalDict zero_blend = False def actionPlayer(ac): scene = bge.logic.getCurrentScene() cont = bge.logic.getCurrentController() own = cont.owner skater = dict['p1'] deck = dict['p1d'] a = getattr(actionsFSMlist.reg_walk, 'name') name = getattr(ac, 'name') dname = getattr(ac, 'dname') start = getattr(ac, 'start') end = getattr(ac, 'end') dstart = getattr(ac, 'dstart') dend = getattr(ac, 'dend') layer = getattr(ac, 'layer') mode = getattr(ac, 'mode') speed = getattr(ac, 'speed') blendin = getattr(ac, 'blendin') #-------------------------------- #if zero_blend: # if own['l_actionState'] != None and own['l_actionState'] in 'revert1': # blendin = 0 # print('zeroing blend') skater.playAction(name, start,end, layer=layer, play_mode=mode, speed=speed, blendin=blendin) deck.playAction(dname, dstart,dend, layer=layer, play_mode=mode, speed=speed, blendin=blendin) #print('playing', name, get_frame(ac)) #if skater.isPlayingAction(3): #print(skater.getActionFrame(3)) def get_frame(ac): skater = dict['p1'] layer = getattr(ac, 'layer') #print('getting frame', skater.getActionFrame(layer)) return skater.getActionFrame(layer) def set_frame(ac, frame): skater = dict['p1'] deck = dict['p1d'] layer = getattr(ac, 'layer') skater.setActionFrame(frame, layer) deck.setActionFrame(frame, layer) #print('setting frame', frame) def check_exit(aState, rA, timer, ac): exits = getattr(ac, 'exits') force = getattr(ac, 'force_exit') fe = getattr(ac, 'fef') #print('?????????????rA, aState', rA, aState) if rA in exits: return rA # elif ('fak' in rA and 'reg' in aState) or ('reg' in rA and 'fak' in aState): #print('change stance') if getattr(ac, 'opposite') != None: return getattr(ac, 'opposite') else: return aState if force != None and fe >= timer: #print('doing exit timer') return force def state_timer(own): if own['aState'] == own['l_aState']: own['stateTimer'] += 1 else: own['stateTimer'] = 0 def check_land(rA, aState, own): #check if manualling if rA in actionsFSMlist.reg_manuallist or rA in actionsFSMlist.reg_grindlist or rA in actionsFSMlist.fak_grindlist: #if rA in actionsFSMlist.reg_manuallist or rA in actionsFSMlist.fak_grindlist: aState = rA #own['stateTimer'] = 0 own['aState'] = rA #otherwise, force land, offboard or fliptrick elif 'land' in rA or 'onboard' in rA or 'offboard' in rA or rA in actionsFSMlist.reg_fliplist or rA in actionsFSMlist.fak_fliplist or rA in actionsFSMlist.revertlist: #print('landing________________________', rA) aState = rA own['stateTimer'] = 0 own['aState'] = rA #print(own['stance'], '-----stance', rA) return aState def main(cont): own = cont.owner dict = bge.logic.globalDict #initial state if 'aState' not in own: own['aState'] = 'reg_idle' own['l_aState'] = None own['stateTimer'] = 0 aState = own['aState'] rA = own['requestAction'] timer = own['stateTimer'] newState = own['aState'] aState = check_land(rA, aState, own) newState = aState og_state = own['aState'] #print(aState, 'cur aState') #if own['l_aState'] in actionsFSMlist.reg_fliplist: #zero_blend = True #----------------------- check_state = 'reg_idle' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'reg_idle2' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'reg_idle3' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'reg_idle4' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'reg_idle5' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'reg_idle6' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'reg_idle7' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'reg_jump' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = check_exit(aState, rA, timer, action) check_state = 'reg_walk_air' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if aState != rA: newState = getattr(action, 'exits')[0] check_state = 'reg_walk_air_out' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) #print(own['stateTimer'], getattr(action, 'fef')) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'reg_sit' if aState == check_state: action = getattr(actionsFSMlist, check_state) #if own['stateTimer'] < 19: if own['stateTimer'] < getattr(action, 'intro_frames'): actionPlayer(getattr(actionsFSMlist, 'intro')) else: actionPlayer(action) newState = check_exit(aState, rA, timer, actionsFSMlist.reg_sit) #----------------------- check_state = 'reg_walk' if aState == check_state: action = getattr(actionsFSMlist, check_state) if own['l_aState'] == 'reg_walkFast': frame = get_frame(actionsFSMlist.reg_walkFast) actionPlayer(action) set_frame(actionsFSMlist.reg_walk, frame) else: frame = actionPlayer(action) newState = check_exit(aState, rA, timer, action) #----------------------- check_state = 'reg_walkFast' if aState == check_state: action = getattr(actionsFSMlist, check_state) newState = check_exit(aState, rA, timer, actionsFSMlist.reg_walkFast) if own['l_aState'] == 'reg_walk': frame = get_frame(actionsFSMlist.reg_walk) actionPlayer(action) set_frame(actionsFSMlist.reg_walkFast, frame) else: actionPlayer(action) #print(frame) check_state = 'reg_onboard' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) print('checking onbaord state') #if own['stateTimer'] > 10: #newState = check_exit(aState, rA, timer, actionsFSMlist.reg_onboard) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'reg_offboard' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > 20: newState = check_exit(aState, rA, timer, actionsFSMlist.reg_offboard) check_state = 'reg_roll' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'reg_turnLeft' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'reg_turnRight' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'reg_manual_left' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'reg_manual_right' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'reg_nmanual_left' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'reg_nmanual_right' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'reg_opos' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'reg_nopos' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'reg_pump' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'reg_pump_left' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'reg_pump_right' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'reg_push' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > 70: newState = 'reg_roll' check_state = 'reg_push_goof' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > 70: newState = 'reg_roll' check_state = 'reg_powerslide' if aState == check_state: action = getattr(actionsFSMlist, check_state) # if own['stateTimer'] < 20: # actionPlayer(actionsFSMlist.reg_powerslide_in) if own['stateTimer'] < getattr(action, 'intro_frames'): intro = getattr(action, 'intro') actionPlayer(getattr(actionsFSMlist, intro)) else: actionPlayer(action) newState = check_exit(aState, rA, timer, actionsFSMlist.reg_powerslide) check_state = 'reg_fs_powerslide' if aState == check_state: action = getattr(actionsFSMlist, check_state) # if own['stateTimer'] < 20: # actionPlayer(actionsFSMlist.reg_fs_powerslide_in) if own['stateTimer'] < getattr(action, 'intro_frames'): intro = getattr(action, 'intro') actionPlayer(getattr(actionsFSMlist, intro)) else: actionPlayer(action) newState = check_exit(aState, rA, timer, actionsFSMlist.reg_fs_powerslide) check_state = 'reg_brfoot' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'reg_frfoot' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'reg_blfoot' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'reg_flfoot' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'reg_manual' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'reg_nmanual' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'reg_land' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'reg_landL' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'reg_landLb' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'reg_landR' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'reg_landRb' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'reg_air' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'reg_air_nb' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'reg_air_nose' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'reg_air_tail' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'reg_ollie' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'reg_kickflip' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'reg_heelflip' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'reg_shuvit' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'reg_shuvit360' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'reg_fsshuvit' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'reg_fsshuvit360' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') #-nollie check_state = 'reg_nollie' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'reg_nollie_kickflip' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'reg_nollie_heelflip' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'reg_nollie_shuvit' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'reg_nollie_fsshuvit' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'reg_nollie_shuvit360' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'reg_nollie_fsshuvit_360' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'reg_hardflip' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'reg_inward_heelflip' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'reg_varial_kickflip' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'reg_varial_heelflip' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') #----------- #grinds----- #----------- check_state = 'reg_5050' if aState == check_state: action = getattr(actionsFSMlist, check_state) if own['stateTimer'] < getattr(action, 'intro_frames'): intro = getattr(action, 'intro') actionPlayer(getattr(actionsFSMlist, intro)) print('doing intro') else: actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'reg_bsboard' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'reg_fsboard' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'reg_tailg' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'reg_tailgr' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'reg_tailgl' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'reg_noseg' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'reg_nosegr' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'reg_nosegl' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'reg_tailslide' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'reg_noseslide' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) #----------- #grabs------ #----------- check_state = 'frontside_grab' if aState == check_state: action = getattr(actionsFSMlist, check_state) if own['stateTimer'] < getattr(action, 'intro_frames'): intro = getattr(action, 'intro') actionPlayer(getattr(actionsFSMlist, intro)) else: actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'backside_grab' if aState == check_state: action = getattr(actionsFSMlist, check_state) if own['stateTimer'] < getattr(action, 'intro_frames'): intro = getattr(action, 'intro') actionPlayer(getattr(actionsFSMlist, intro)) else: actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'frontside_nose_grab' if aState == check_state: action = getattr(actionsFSMlist, check_state) if own['stateTimer'] < getattr(action, 'intro_frames'): intro = getattr(action, 'intro') actionPlayer(getattr(actionsFSMlist, intro)) else: actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'backside_nose_grab' if aState == check_state: action = getattr(actionsFSMlist, check_state) if own['stateTimer'] < getattr(action, 'intro_frames'): intro = getattr(action, 'intro') actionPlayer(getattr(actionsFSMlist, intro)) else: actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'frontside_tail_grab' if aState == check_state: action = getattr(actionsFSMlist, check_state) if own['stateTimer'] < getattr(action, 'intro_frames'): intro = getattr(action, 'intro') actionPlayer(getattr(actionsFSMlist, intro)) else: actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'backside_tail_grab' if aState == check_state: action = getattr(actionsFSMlist, check_state) if own['stateTimer'] < getattr(action, 'intro_frames'): intro = getattr(action, 'intro') actionPlayer(getattr(actionsFSMlist, intro)) else: actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'reg_ollie_north' if aState == check_state: action = getattr(actionsFSMlist, check_state) if own['stateTimer'] < getattr(action, 'intro_frames'): intro = getattr(action, 'intro') actionPlayer(getattr(actionsFSMlist, intro)) else: actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'reg_ollie_south' if aState == check_state: action = getattr(actionsFSMlist, check_state) if own['stateTimer'] < getattr(action, 'intro_frames'): intro = getattr(action, 'intro') actionPlayer(getattr(actionsFSMlist, intro)) else: actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'reg_judo' if aState == check_state: action = getattr(actionsFSMlist, check_state) if own['stateTimer'] < getattr(action, 'intro_frames'): intro = getattr(action, 'intro') actionPlayer(getattr(actionsFSMlist, intro)) else: actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'reg_frigid' if aState == check_state: action = getattr(actionsFSMlist, check_state) if own['stateTimer'] < getattr(action, 'intro_frames'): intro = getattr(action, 'intro') actionPlayer(getattr(actionsFSMlist, intro)) else: actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'reg_fsonefoot' if aState == check_state: action = getattr(actionsFSMlist, check_state) if own['stateTimer'] < getattr(action, 'intro_frames'): intro = getattr(action, 'intro') actionPlayer(getattr(actionsFSMlist, intro)) else: actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'reg_onefoot' if aState == check_state: action = getattr(actionsFSMlist, check_state) if own['stateTimer'] < getattr(action, 'intro_frames'): intro = getattr(action, 'intro') actionPlayer(getattr(actionsFSMlist, intro)) else: actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'reg_airwalk' if aState == check_state: action = getattr(actionsFSMlist, check_state) if own['stateTimer'] < getattr(action, 'intro_frames'): intro = getattr(action, 'intro') actionPlayer(getattr(actionsFSMlist, intro)) else: actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'reg_wall_r' if aState == check_state: action = getattr(actionsFSMlist, check_state) if own['stateTimer'] < getattr(action, 'intro_frames'): intro = getattr(action, 'intro') actionPlayer(getattr(actionsFSMlist, intro)) else: actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'reg_wall_l' if aState == check_state: action = getattr(actionsFSMlist, check_state) if own['stateTimer'] < getattr(action, 'intro_frames'): intro = getattr(action, 'intro') actionPlayer(getattr(actionsFSMlist, intro)) else: actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'revert1' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'revert2' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'fak_revert1' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'fak_revert2' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'revert3' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'revert4' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'fak_idle' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'fak_idle2' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'fak_idle3' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'fak_idle4' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'fak_idle5' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'fak_idle5' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'fak_idle6' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'fak_jump' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = check_exit(aState, rA, timer, action) check_state = 'fak_walk_air' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if aState != rA: newState = getattr(action, 'exits')[0] check_state = 'fak_walk_air_out' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) #print(own['stateTimer'], getattr(action, 'fef')) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'fak_sit' if aState == check_state: action = getattr(actionsFSMlist, check_state) #if own['stateTimer'] < 19: if own['stateTimer'] < getattr(action, 'intro_frames'): actionPlayer(getattr(actionsFSMlist, 'intro')) else: actionPlayer(action) newState = check_exit(aState, rA, timer, actionsFSMlist.fak_sit) #----------------------- check_state = 'fak_walk' if aState == check_state: action = getattr(actionsFSMlist, check_state) if own['l_aState'] == 'fak_walkFast': frame = get_frame(actionsFSMlist.fak_walkFast) actionPlayer(action) set_frame(actionsFSMlist.fak_walk, frame) else: frame = actionPlayer(action) newState = check_exit(aState, rA, timer, action) #----------------------- check_state = 'fak_walkFast' if aState == check_state: action = getattr(actionsFSMlist, check_state) newState = check_exit(aState, rA, timer, actionsFSMlist.fak_walkFast) if own['l_aState'] == 'fak_walk': frame = get_frame(actionsFSMlist.fak_walk) actionPlayer(action) set_frame(actionsFSMlist.fak_walkFast, frame) else: actionPlayer(action) #print(frame) check_state = 'fak_onboard' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) print('checking onbaord state') #if own['stateTimer'] > 10: #newState = check_exit(aState, rA, timer, actionsFSMlist.fak_onboard) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'fak_offboard' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > 20: newState = check_exit(aState, rA, timer, actionsFSMlist.fak_offboard) check_state = 'fak_roll' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'fak_turnLeft' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'fak_turnRight' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'fak_manual_left' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'fak_manual_right' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'fak_nmanual_left' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'fak_nmanual_right' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'fak_opos' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'fak_nopos' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'fak_pump' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'fak_pump_left' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'fak_pump_right' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'fak_push' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > 70: newState = 'fak_roll' check_state = 'fak_push_goof' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > 70: newState = 'fak_roll' check_state = 'fak_powerslide' if aState == check_state: action = getattr(actionsFSMlist, check_state) # if own['stateTimer'] < 20: # actionPlayer(actionsFSMlist.fak_powerslide_in) if own['stateTimer'] < getattr(action, 'intro_frames'): intro = getattr(action, 'intro') actionPlayer(getattr(actionsFSMlist, intro)) else: actionPlayer(action) newState = check_exit(aState, rA, timer, actionsFSMlist.fak_powerslide) check_state = 'fak_fs_powerslide' if aState == check_state: action = getattr(actionsFSMlist, check_state) # if own['stateTimer'] < 20: # actionPlayer(actionsFSMlist.fak_fs_powerslide_in) if own['stateTimer'] < getattr(action, 'intro_frames'): intro = getattr(action, 'intro') actionPlayer(getattr(actionsFSMlist, intro)) else: actionPlayer(action) newState = check_exit(aState, rA, timer, actionsFSMlist.fak_fs_powerslide) check_state = 'fak_brfoot' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'fak_frfoot' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'fak_blfoot' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'fak_flfoot' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'fak_manual' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'fak_nmanual' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'fak_land' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'fak_landL' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'fak_landLb' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'fak_landR' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'fak_landRb' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'fak_air' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'fak_air_nb' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'fak_air_nose' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'fak_air_tail' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'fak_ollie' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'fak_kickflip' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'fak_heelflip' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'fak_shuvit' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'fak_shuvit360' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'fak_fsshuvit' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'fak_fsshuvit360' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') #-nollie check_state = 'fak_nollie' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'fak_nollie_kickflip' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'fak_nollie_heelflip' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'fak_nollie_shuvit' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'fak_nollie_fsshuvit' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'fak_nollie_shuvit360' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'fak_nollie_fsshuvit_360' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'fak_hardflip' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'fak_inward_heelflip' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'fak_varial_kickflip' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') check_state = 'fak_varial_heelflip' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) if own['stateTimer'] > getattr(action, 'fef'): newState = getattr(action, 'force_exit') #----------- #grinds----- #----------- check_state = 'fak_5050' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'fak_bsboard' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'fak_fsboard' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'fak_tailg' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'fak_tailgr' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'fak_tailgl' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'fak_noseg' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'fak_nosegr' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'fak_nosegl' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'fak_tailslide' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'fak_noseslide' if aState == check_state: action = getattr(actionsFSMlist, check_state) actionPlayer(action) newState = check_exit(aState, rA, timer, action) #----------- #grabs------ #----------- check_state = 'fak_frontside_grab' if aState == check_state: action = getattr(actionsFSMlist, check_state) if own['stateTimer'] < getattr(action, 'intro_frames'): intro = getattr(action, 'intro') actionPlayer(getattr(actionsFSMlist, intro)) else: actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'fak_backside_grab' if aState == check_state: action = getattr(actionsFSMlist, check_state) if own['stateTimer'] < getattr(action, 'intro_frames'): intro = getattr(action, 'intro') actionPlayer(getattr(actionsFSMlist, intro)) else: actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'fak_frontside_nose_grab' if aState == check_state: action = getattr(actionsFSMlist, check_state) if own['stateTimer'] < getattr(action, 'intro_frames'): intro = getattr(action, 'intro') actionPlayer(getattr(actionsFSMlist, intro)) else: actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'fak_backside_nose_grab' if aState == check_state: action = getattr(actionsFSMlist, check_state) if own['stateTimer'] < getattr(action, 'intro_frames'): intro = getattr(action, 'intro') actionPlayer(getattr(actionsFSMlist, intro)) else: actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'fak_frontside_tail_grab' if aState == check_state: action = getattr(actionsFSMlist, check_state) if own['stateTimer'] < getattr(action, 'intro_frames'): intro = getattr(action, 'intro') actionPlayer(getattr(actionsFSMlist, intro)) else: actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'fak_backside_tail_grab' if aState == check_state: action = getattr(actionsFSMlist, check_state) if own['stateTimer'] < getattr(action, 'intro_frames'): intro = getattr(action, 'intro') actionPlayer(getattr(actionsFSMlist, intro)) else: actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'fak_ollie_north' if aState == check_state: action = getattr(actionsFSMlist, check_state) if own['stateTimer'] < getattr(action, 'intro_frames'): intro = getattr(action, 'intro') actionPlayer(getattr(actionsFSMlist, intro)) else: actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'fak_ollie_south' if aState == check_state: action = getattr(actionsFSMlist, check_state) if own['stateTimer'] < getattr(action, 'intro_frames'): intro = getattr(action, 'intro') actionPlayer(getattr(actionsFSMlist, intro)) else: actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'fak_judo' if aState == check_state: action = getattr(actionsFSMlist, check_state) if own['stateTimer'] < getattr(action, 'intro_frames'): intro = getattr(action, 'intro') actionPlayer(getattr(actionsFSMlist, intro)) else: actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'fak_frigid' if aState == check_state: action = getattr(actionsFSMlist, check_state) if own['stateTimer'] < getattr(action, 'intro_frames'): intro = getattr(action, 'intro') actionPlayer(getattr(actionsFSMlist, intro)) else: actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'fak_fsonefoot' if aState == check_state: action = getattr(actionsFSMlist, check_state) if own['stateTimer'] < getattr(action, 'intro_frames'): intro = getattr(action, 'intro') actionPlayer(getattr(actionsFSMlist, intro)) else: actionPlayer(action) newState = check_exit(aState, rA, timer, action) check_state = 'fak_onefoot' if aState == check_state: action = getattr(actionsFSMlist, check_state) if own['stateTimer'] < getattr(action, 'intro_frames'): intro = getattr(action, 'intro') actionPlayer(getattr(actionsFSMlist, intro)) else: actionPlayer(action) newState = check_exit(aState, rA, timer, action) #----------------------- #own['aState'] = aState if newState != '': own['aState'] = newState #print(own['l_aState'], '----l_aState', own['aState']) own['l_aState'] = og_state own['l_actionState'] = og_state #own['l_aState'] = newState #print(own['l_aState'], '----l_aState', own['aState'], 'rA', rA) state_timer(own) #print(own['rotz']) skater = dict['p1'] if own['requestAction'] == 'reg_roll' and own['rotz'] < .985: frame = int(own['rotz'] * 70) print(frame) #skater.stopAction(5) #skater.playAction('reg_roll_tilt', frame,frame, layer=5, play_mode=1, speed=1, blendin=5) else: skater.stopAction(5) #pass # skater = dict['p1'] # skater.update() # #skater.stopAction(1) # bone = skater.channels['root'] # v = mathutils.Vector([bone.location[0], bone.location[1], -.2]) # #bone.location = v # skater.update()