def buildChannelModel(): # this should have exactly the same rules as englishMorph.py! fst = FSM.FSM(isTransducer=True) fst.setInitialState('start') fst.setFinalState('end') # we can always get from start to end by consuming non-+ # characters... to implement this, we transition to a safe state, # then consume a bunch of stuff fst.addEdge('start', 'safe', '.', '.') fst.addEdge('safe', 'safe', '.', '.') fst.addEdge('safe', 'safe2', '+', None) fst.addEdge('safe2', 'safe2', '.', '.') fst.addEdge('safe', 'end', None, None) fst.addEdge('safe2', 'end', None, None) # implementation of rule 1 fst.addEdge('start', 'rule1', None, None) # epsilon transition fst.addEdge('rule1', 'rule1', '.', '.') # accept any character and copy it fst.addEdge('rule1', 'rule1b', 'e', None) # remove the e fst.addEdge('rule1b', 'rule1c', '+', None) # remove the + fst.addEdge('rule1c', 'rule1d', 'e', 'e') # copy an e ... fst.addEdge('rule1c', 'rule1d', 'i', 'i') # ... or an i fst.addEdge('rule1d', 'rule1d', '.', '.') # and then copy the remainder fst.addEdge('rule1d', 'end', None, None) # we're done # implementation of rule 2 fst.addEdge('start', 'rule2', '.', '.') # we need to actually consume something fst.addEdge('rule2', 'rule2', '.', '.') # accept any character and copy it fst.addEdge('rule2', 'rule2b', 'e', 'e') # keep the e fst.addEdge('rule2b', 'rule2c', '+', None) # remove the + for i in range(ord('a'), ord('z')): c = chr(i) if c == 'e' or c == 'i': continue fst.addEdge('rule2c', 'rule2d', c, c) # keep anything except e or i fst.addEdge('rule2d', 'rule2d', '.', '.') # keep the rest fst.addEdge('rule2d', 'end', None, None) # we're done # implementation of rule 3 ### TODO: YOUR CODE HERE #util.raiseNotDefined() fst.addEdge('start', 'rule3', '.', '.') # epsilon transition??????????????????????? fst.addEdge('rule3', 'rule3', '.', '.') # accept any character and copy it for i in range(ord('a'), ord('z')): c = chr(i) if not (c == 'a' or c == 'e' or c == 'i' or c == 'o' or c == 'u'): continue fst.addEdge('rule3', 'rule3b', c, c) # vowel before 'c' fst.addEdge('rule3b', 'rule3c', 'c', 'c') # 'c' after vowel fst.addEdge('rule3c', 'rule3d', '+', 'k') fst.addEdge('rule3d', 'rule3d', '.', '.') # keep the rest fst.addEdge('rule3d', 'end', None, None) # done return fst
def __init__(self, cr): DistributedObject.DistributedObject.__init__(self, cr) self.waitingStartLabel = DirectLabel( text=Localizer.MinigameWaitingForOtherPlayers, text_fg=VBase4(1, 1, 1, 1), relief=None, pos=(-0.6, 0, -0.75), scale=0.075) self.waitingStartLabel.hide() self.avIdList = [] self.remoteAvIdList = [] self.localAvId = toonbase.localToon.doId self.frameworkFSM = FSM.FSM('DistributedMinigame', [ State.State('frameworkInit', self.enterFrameworkInit, self.exitFrameworkInit, [ 'frameworkRules', 'frameworkCleanup', 'frameworkAvatarExited' ]), State.State('frameworkRules', self.enterFrameworkRules, self.exitFrameworkRules, [ 'frameworkWaitServerStart', 'frameworkCleanup', 'frameworkAvatarExited' ]), State.State( 'frameworkWaitServerStart', self.enterFrameworkWaitServerStart, self.exitFrameworkWaitServerStart, ['frameworkGame', 'frameworkCleanup', 'frameworkAvatarExited' ]), State.State('frameworkGame', self.enterFrameworkGame, self.exitFrameworkGame, [ 'frameworkWaitServerFinish', 'frameworkCleanup', 'frameworkAvatarExited' ]), State.State('frameworkWaitServerFinish', self.enterFrameworkWaitServerFinish, self.exitFrameworkWaitServerFinish, ['frameworkCleanup']), State.State('frameworkAvatarExited', self.enterFrameworkAvatarExited, self.exitFrameworkAvatarExited, ['frameworkCleanup']), State.State('frameworkCleanup', self.enterFrameworkCleanup, self.exitFrameworkCleanup, []) ], 'frameworkInit', 'frameworkCleanup') hoodMinigameState = self.cr.playGame.hood.fsm.getStateNamed('minigame') hoodMinigameState.addChild(self.frameworkFSM) self.rulesDoneEvent = 'rulesDone' self.acceptOnce('minigameAbort', self.d_requestExit) toonbase.curMinigame = self self.modelCount = 500 self.cleanupActions = [] self.usesSmoothing = 0 self.usesLookAround = 0 self.difficultyOverride = None self.trolleyZoneOverride = None self.frameworkFSM.enterInitialState() return
def __init__(self, toon, doneEvent): StateData.StateData.__init__(self, doneEvent) self.toon = toon self.fsm = FSM.FSM('Purchase', [ State.State('purchase', self.enterPurchase, self.exitPurchase, ['done']), State.State('done', self.enterDone, self.exitDone, ['purchase']) ], 'done', 'done') self.fsm.enterInitialState() return None
def __init__(self, cr): DistributedMinigame.__init__(self, cr) self.gameFSM = FSM.FSM('DistributedCatchGame', [ State.State('off', self.enterOff, self.exitOff, ['play']), State.State('play', self.enterPlay, self.exitPlay, ['cleanup']), State.State('cleanup', self.enterCleanup, self.exitCleanup, []) ], 'off', 'cleanup') self.addChildGameFSM(self.gameFSM) self.setUsesSmoothing() self.setUsesLookAround()
def __init__(self, cr): DistributedObject.DistributedObject.__init__(self, cr) self.fsm = FSM.FSM('DistributedToonInterior', [ State.State('toon', self.enterToon, self.exitToon, ['beingTakenOver']), State.State('beingTakenOver', self.enterBeingTakenOver, self.exitBeingTakenOver, []), State.State('off', self.enterOff, self.exitOff, []) ], 'toon', 'off') self.fsm.enterInitialState()
def __init__(self, parentFSM, avList, doneEvent, index, isPaid): self.isPaid = isPaid StateData.StateData.__init__(self, doneEvent) self.phase = 3 self.names = [ '', '', '', ''] self.dnastring = None self.dna = None self.progressing = 0 self.hostPosition = Point3(4.2, -1.9, 0) self.toonPosition = Point3(-1.5, -2.0, 0) self.hostHpr = Point3(160, 0, 0) self.toonHpr = Point3(200, 0, 0) self.leftTime = 1.6 self.rightTime = 1 self.slide = 0 self.nameList = [] self.warp = 0 for av in avList: if av.position == index: self.warp = 1 self.namelessPotAv = av self.nameList.append(av.name) self.fsm = FSM.FSM('MakeAToon', [ State.State('Init', self.enterInit, self.exitInit, [ 'GenderShop', 'NameShop']), State.State('GenderShop', self.enterGenderShop, self.exitGenderShop, [ 'BodyShop']), State.State('BodyShop', self.enterBodyShop, self.exitBodyShop, [ 'GenderShop', 'ColorShop']), State.State('ColorShop', self.enterColorShop, self.exitColorShop, [ 'BodyShop', 'ClothesShop']), State.State('ClothesShop', self.enterClothesShop, self.exitClothesShop, [ 'ColorShop', 'NameShop']), State.State('NameShop', self.enterNameShop, self.exitNameShop, [ 'ClothesShop']), State.State('Done', self.enterDone, self.exitDone, [])], 'Init', 'Done') self.parentFSM = parentFSM self.parentFSM.getStateNamed('createAvatar').addChild(self.fsm) self.gs = GenderShop.GenderShop('GenderShop-done') self.bs = BodyShop.BodyShop('BodyShop-done') self.cos = ColorShop.ColorShop('ColorShop-done') self.cls = MakeClothesGUI.MakeClothesGUI('ClothesShop-done') self.ns = NameShop.NameShop(self.fsm, 'NameShop-done', avList, index, self.isPaid) self.shop = GENDERSHOP self.shopsVisited = [] if self.warp: self.shopsVisited = [ GENDERSHOP, BODYSHOP, COLORSHOP, CLOTHESSHOP] self.music = None self.soundBack = None self.fsm.enterInitialState() return None return
def __init__(self, avId, avName, parent=aspect2d, **kw): buttons = loader.loadModelOnce( 'phase_3/models/gui/dialog_box_buttons_gui') gui = loader.loadModelOnce('phase_3.5/models/gui/avatar_panel_gui') detailPanel = gui.find('**/avatarInfoPanel') optiondefs = (('pos', (0.52500000000000002, 0.0, 0.52500000000000002), None), ('scale', 0.5, None), ('relief', None, None), ('image', detailPanel, None), ('image_color', GlobalDialogColor, None), ('text', '', None), ('text_wordwrap', 10.4, None), ('text_scale', 0.13200000000000001, None), ('text_pos', (0.0, 0.75), None)) self.defineoptions(kw, optiondefs) DirectFrame.__init__(self, parent) self.dataText = DirectLabel(self, text='', text_scale=0.089999999999999997, text_align=TextNode.ALeft, text_wordwrap=15, relief=None, pos=(-0.69999999999999996, 0.0, 0.5)) self.avId = avId self.avName = avName self.avatar = None self.createdAvatar = None self.fsm = FSM.FSM('AvatarDetailPanel', [ State.State('off', self.enterOff, self.exitOff, ['begin']), State.State('begin', self.enterBegin, self.exitBegin, ['query', 'data', 'off']), State.State('query', self.enterQuery, self.exitQuery, ['data', 'invalid', 'off']), State.State('data', self.enterData, self.exitData, ['off']), State.State('invalid', self.enterInvalid, self.exitInvalid, ['off']) ], 'off', 'off') TeleportPanel.hideTeleportPanel() FriendInviter.hideFriendInviter() self.bCancel = DirectButton( self, image=(buttons.find('**/CloseBtn_UP'), buttons.find('**/CloseBtn_DN'), buttons.find('**/CloseBtn_Rllvr')), relief=None, text=Localizer.AvatarDetailPanelCancel, text_scale=0.050000000000000003, text_pos=(0.12, -0.01), pos=(-0.68000000000000005, 0.0, -0.76000000000000001), scale=2.0, command=self._AvatarDetailPanel__handleCancel) self.bCancel.hide() self.initialiseoptions(AvatarDetailPanel) self.fsm.enterInitialState() self.fsm.request('begin') buttons.removeNode() gui.removeNode()
def __init__(self, cr): DistributedObject.DistributedObject.__init__(self, cr) self.fsm = FSM.FSM('DistributedAnimatedProp', [ State.State('off', self.enterOff, self.exitOff, [ 'playing', 'attract']), State.State('attract', self.enterAttract, self.exitAttract, [ 'playing']), State.State('playing', self.enterPlaying, self.exitPlaying, [ 'attract'])], 'off', 'off') self.fsm.enterInitialState()
def __init__(self, cr): DistributedMinigame.__init__(self, cr) self.gameFSM = FSM.FSM('DistributedMazeGame', [ State.State('off', self.enterOff, self.exitOff, ['play']), State.State('play', self.enterPlay, self.exitPlay, ['cleanup', 'showScores']), State.State('showScores', self.enterShowScores, self.exitShowScores, ['cleanup']), State.State('cleanup', self.enterCleanup, self.exitCleanup, []) ], 'off', 'cleanup') self.addChildGameFSM(self.gameFSM) self.usesLookAround = 1
def __init__(self, tcr, doneEvent): StateData.StateData.__init__(self, doneEvent) GuiScreen.GuiScreen.__init__(self) self.tcr = tcr self.allowNewAccounts = tcr.accountServerConstants.getBool( 'allowNewAccounts') self.fsm = FSM.FSM('NewPlayerScreen', [ State.State('off', self.enterOff, self.exitOff, ['display']), State.State('display', self.enterDisplay, self.exitDisplay, ['off']) ], 'off', 'off') self.fsm.enterInitialState()
def __init__(self, doneEvent): StateData.StateData.__init__(self, doneEvent) self.fsm = FSM.FSM('QuietZoneState', [ State.State('off', self.enterOff, self.exitOff, [ 'waitForQuietZoneResponse']), State.State('waitForQuietZoneResponse', self.enterWaitForQuietZoneResponse, self.exitWaitForQuietZoneResponse, [ 'waitForSetZoneResponse']), State.State('waitForSetZoneResponse', self.enterWaitForSetZoneResponse, self.exitWaitForSetZoneResponse, [ 'waitForSetZoneComplete']), State.State('waitForSetZoneComplete', self.enterWaitForSetZoneComplete, self.exitWaitForSetZoneComplete, [ 'off'])], 'off', 'off') self.fsm.enterInitialState()
def __init__(self, avatarList, parentFSM, doneEvent): StateData.StateData.__init__(self, doneEvent) self.choice = None self.avatarList = avatarList self.fsm = FSM.FSM('AvatarChooser', [ State.State('Choose', self.enterChoose, self.exitChoose, [ 'CheckDownload']), State.State('CheckDownload', self.enterCheckDownload, self.exitCheckDownload, [ 'Choose'])], 'Choose', 'Choose') self.fsm.enterInitialState() self.parentFSM = parentFSM self.parentFSM.getCurrentState().addChild(self.fsm)
def __init__(self, doneEvent): StateData.StateData.__init__(self, doneEvent) self.numCogs = 1 self.creditLevel = None self.luredIndices = [] self.trappedIndices = [] self.numToons = 1 self.toons = [] self.localNum = 0 self.time = 0 self.bldg = 0 self.track = -1 self.level = -1 self.target = 0 self.toonAttacks = [ ( -1, 0, 0), (-1, 0, 0), (-1, 0, 0), (-1, 0, 0)] self.fsm = FSM.FSM('TownBattle', [ State.State('Off', self.enterOff, self.exitOff, [ 'Attack']), State.State('Attack', self.enterAttack, self.exitAttack, [ 'ChooseCog', 'ChooseToon', 'AttackWait', 'Run', 'SOS']), State.State('ChooseCog', self.enterChooseCog, self.exitChooseCog, [ 'AttackWait', 'Attack']), State.State('AttackWait', self.enterAttackWait, self.exitAttackWait, [ 'ChooseCog', 'ChooseToon', 'Attack']), State.State('ChooseToon', self.enterChooseToon, self.exitChooseToon, [ 'AttackWait', 'Attack']), State.State('Run', self.enterRun, self.exitRun, [ 'Attack']), State.State('SOS', self.enterSOS, self.exitSOS, [ 'Attack', 'AttackWait'])], 'Off', 'Off') self.runPanel = ToontownDialog.ToontownDialog(dialogName='TownBattleRunPanel', text=Localizer.TownBattleRun, style=ToontownDialog.TwoChoice, command=self.__handleRunPanelDone) self.runPanel.hide() self.attackPanelDoneEvent = 'attack-panel-done' self.attackPanel = TownBattleAttackPanel.TownBattleAttackPanel(self.attackPanelDoneEvent) self.waitPanelDoneEvent = 'wait-panel-done' self.waitPanel = TownBattleWaitPanel.TownBattleWaitPanel(self.waitPanelDoneEvent) self.chooseCogPanelDoneEvent = 'choose-cog-panel-done' self.chooseCogPanel = TownBattleChooseAvatarPanel.TownBattleChooseAvatarPanel(self.chooseCogPanelDoneEvent, 0) self.chooseToonPanelDoneEvent = 'choose-toon-panel-done' self.chooseToonPanel = TownBattleChooseAvatarPanel.TownBattleChooseAvatarPanel(self.chooseToonPanelDoneEvent, 1) self.SOSPanelDoneEvent = 'SOS-panel-done' self.SOSPanel = TownBattleSOSPanel.TownBattleSOSPanel(self.SOSPanelDoneEvent) self.toonPanels = ( TownBattleToonPanel.TownBattleToonPanel(0), TownBattleToonPanel.TownBattleToonPanel(1), TownBattleToonPanel.TownBattleToonPanel(2), TownBattleToonPanel.TownBattleToonPanel(3)) self.timer = ToontownTimer.ToontownTimer() self.timer.setPos(1.182, 0, 0.842) self.timer.setScale(0.4) self.timer.hide() return return
def main(): kpc = KPC(Keyboard(), LedBoard()) fsm = FSM(kpc) rule_1 = Rule("s0", "s1", signal_is_any, KPC.start_up) fsm.add_rule(rule_1) rule_2 = Rule("s1", "s1", signal_is_digit, KPC.append_next_password_digit) fsm.add_rule(rule_2) rule_3 = Rule("s1", "s2", "*", KPC.verify_login) fsm.add_rule(rule_3) rule_4 = Rule("s1", "s0", signal_is_any, KPC.reset_agent) fsm.add_rule(rule_4) rule_5 = Rule("s2", "s3", "Y", KPC.fully_activate_agent) fsm.add_rule(rule_5) rule_6 = Rule("s2", "s0", signal_is_any, KPC.reset_agent) fsm.add_rule(rule_6) rule_7 = Rule("s3", "s6", signal_is_1_6_digit, KPC.select_led) fsm.add_rule(rule_7) rule_8 = Rule("s6", "s7", "*", KPC.verify_led_select) fsm.add_rule(rule_8) rule_9 = Rule("s6", "s3", signal_is_any, KPC.reset_agent) fsm.add_rule(rule_9) rule_10 = Rule("s7", "s7", signal_is_digit, KPC.append_next_time_digit) fsm.add_rule(rule_10) rule_11 = Rule("s7", "s3", "*", KPC.light_selected_led) fsm.add_rule(rule_11) rule_12 = Rule("s7", "s3", signal_is_any, KPC.refresh_agent) fsm.add_rule(rule_12) rule_13 = Rule("s3", "s4", "*", KPC.reset_password_accumulator) fsm.add_rule(rule_13) rule_14 = Rule("s4", "s4", signal_is_digit, KPC.append_next_password_digit) fsm.add_rule(rule_14) rule_15 = Rule("s4", "s5", "*", KPC.cache_1st_password) fsm.add_rule(rule_15) rule_16 = Rule("s4", "s3", signal_is_any, KPC.refresh_agent) fsm.add_rule(rule_16) rule_17 = Rule("s5", "s5", signal_is_digit, KPC.append_next_password_digit) fsm.add_rule(rule_17) rule_18 = Rule("s5", "s3", "*", KPC.verify_new_password) fsm.add_rule(rule_18) rule_19 = Rule("s5", "s3", signal_is_any, KPC.refresh_agent) fsm.add_rule(rule_19) rule_20 = Rule("s3", "s8", "#", KPC.shutdown_attempt) fsm.add_rule(rule_20) rule_21 = Rule("s8", "s0", "#", KPC.exit_action) fsm.add_rule(rule_21) rule_22 = Rule("s8", "s3", signal_is_any, KPC.refresh_agent) fsm.add_rule(rule_22) fsm.main_loop()
def __init__(self, x, y, w, h, img): super(Bat, self).__init__(x, y, w, h) self.playerRange = 0 self.target = [0, 0] self.agressive = True self.aggro = False self.aggroRadius = 30 self.inRange = False self.sightOfTarget = False self.threat = 0 self.brain = FSM.FSM(self.idle) self.speed = 3 self.img = img
def __init__(self, tcr, doneEvent): StateData.StateData.__init__(self, doneEvent) GuiScreen.GuiScreen.__init__(self) self.tcr = tcr self.loginInterface = self.tcr.loginInterface self.fsm = FSM.FSM('ForgotPasswordScreen', [ State.State('off', self.enterOff, self.exitOff, [ 'getInput']), State.State('getInput', self.enterGetInput, self.exitGetInput, [ 'sendInfo']), State.State('sendInfo', self.enterSendInfo, self.exitSendInfo, [ 'getInput'])], 'off', 'off') self.fsm.enterInitialState()
def __init__(self, cr): DistributedObject.DistributedObject.__init__(self, cr) self.openSfx = base.loadSfx('phase_3.5/audio/sfx/Door_Open_1.mp3') self.closeSfx = base.loadSfx('phase_3.5/audio/sfx/Door_Close_1.mp3') self.nametag = None self.fsm = FSM.FSM('DistributedDoor_right', [ State.State('off', self.enterOff, self.exitOff, [ 'closing', 'closed', 'opening', 'open']), State.State('closing', self.enterClosing, self.exitClosing, [ 'closed', 'opening']), State.State('closed', self.enterClosed, self.exitClosed, [ 'opening']), State.State('opening', self.enterOpening, self.exitOpening, [ 'open']), State.State('open', self.enterOpen, self.exitOpen, [ 'closing', 'open'])], 'off', 'off') self.fsm.enterInitialState() self.exitDoorFSM = FSM.FSM('DistributedDoor_left', [ State.State('off', self.exitDoorEnterOff, self.exitDoorExitOff, [ 'closing', 'closed', 'opening', 'open']), State.State('closing', self.exitDoorEnterClosing, self.exitDoorExitClosing, [ 'closed', 'opening']), State.State('closed', self.exitDoorEnterClosed, self.exitDoorExitClosed, [ 'opening']), State.State('opening', self.exitDoorEnterOpening, self.exitDoorExitOpening, [ 'open']), State.State('open', self.exitDoorEnterOpen, self.exitDoorExitOpen, [ 'closing', 'open'])], 'off', 'off') self.exitDoorFSM.enterInitialState()
def __init__(self, cr): DistributedObject.DistributedObject.__init__(self, cr) self.fsm = FSM.FSM('DistributedHouseInterior', [ State.State('toon', self.enterToon, self.exitToon, ['off']), State.State('off', self.enterOff, self.exitOff, ['toon']) ], 'off', 'off') self.houseId = 0 self.houseIndex = 0 self.wallColorIndex = 0 self.interior = None self.interiorType = 2 self.storageDNAFile = 'phase_5.5/dna/storage_house_interior.dna' self.fsm.enterInitialState()
def __init__(self, avId, avName, avDisableName): DirectFrame.__init__(self, pos = (0.29999999999999999, 0.10000000000000001, 0.65000000000000002), image_color = GlobalDialogColor, image_scale = (1.0, 1.0, 0.59999999999999998), text = '', text_wordwrap = 13.5, text_scale = 0.059999999999999998, text_pos = (0.0, 0.13)) self['image'] = getDefaultDialogGeom() self.avId = avId self.avName = avName self.avDisableName = avDisableName self.fsm = FSM.FSM('FriendInviter', [ State.State('off', self.enterOff, self.exitOff), State.State('getNewFriend', self.enterGetNewFriend, self.exitGetNewFriend), State.State('begin', self.enterBegin, self.exitBegin), State.State('tooMany', self.enterTooMany, self.exitTooMany), State.State('notYet', self.enterNotYet, self.exitNotYet), State.State('checkAvailability', self.enterCheckAvailability, self.exitCheckAvailability), State.State('notAvailable', self.enterNotAvailable, self.exitNotAvailable), State.State('notAcceptingFriends', self.enterNotAcceptingFriends, self.exitNotAcceptingFriends), State.State('wentAway', self.enterWentAway, self.exitWentAway), State.State('already', self.enterAlready, self.exitAlready), State.State('askingCog', self.enterAskingCog, self.exitAskingCog), State.State('endFriendship', self.enterEndFriendship, self.exitEndFriendship), State.State('friendsNoMore', self.enterFriendsNoMore, self.exitFriendsNoMore), State.State('self', self.enterSelf, self.exitSelf), State.State('ignored', self.enterIgnored, self.exitIgnored), State.State('asking', self.enterAsking, self.exitAsking), State.State('yes', self.enterYes, self.exitYes), State.State('no', self.enterNo, self.exitNo), State.State('otherTooMany', self.enterOtherTooMany, self.exitOtherTooMany), State.State('maybe', self.enterMaybe, self.exitMaybe), State.State('down', self.enterDown, self.exitDown), State.State('cancel', self.enterCancel, self.exitCancel)], 'off', 'off') self.context = None TeleportPanel.hideTeleportPanel() AvatarDetailPanel.hideAvatarDetail() buttons = loader.loadModelOnce('phase_3/models/gui/dialog_box_buttons_gui') gui = loader.loadModelOnce('phase_3.5/models/gui/avatar_panel_gui') self.bOk = DirectButton(self, image = (buttons.find('**/ChtBx_OKBtn_UP'), buttons.find('**/ChtBx_OKBtn_DN'), buttons.find('**/ChtBx_OKBtn_Rllvr')), relief = None, text = Localizer.FriendInviterOK, text_scale = 0.050000000000000003, text_pos = (0.0, -0.10000000000000001), pos = (0.0, 0.0, -0.10000000000000001), command = self._FriendInviter__handleOk) self.bOk.hide() self.bCancel = DirectButton(self, image = (buttons.find('**/CloseBtn_UP'), buttons.find('**/CloseBtn_DN'), buttons.find('**/CloseBtn_Rllvr')), relief = None, text = Localizer.FriendInviterCancel, text_scale = 0.050000000000000003, text_pos = (0.0, -0.10000000000000001), pos = (0.0, 0.0, -0.10000000000000001), command = self._FriendInviter__handleCancel) self.bCancel.hide() self.bStop = DirectButton(self, image = (gui.find('**/Ignore_Btn_UP'), gui.find('**/Ignore_Btn_DN'), gui.find('**/Ignore_Btn_RLVR')), relief = None, text = Localizer.FriendInviterStopBeingFriends, text_scale = 0.050000000000000003, text_pos = (0.25, -0.014999999999999999), pos = (-0.20000000000000001, 0.0, 0.050000000000000003), command = self._FriendInviter__handleStop) self.bStop.hide() self.bYes = DirectButton(self, image = (buttons.find('**/ChtBx_OKBtn_UP'), buttons.find('**/ChtBx_OKBtn_DN'), buttons.find('**/ChtBx_OKBtn_Rllvr')), relief = None, text = Localizer.FriendInviterYes, text_scale = 0.050000000000000003, text_pos = (0.0, -0.10000000000000001), pos = (-0.14999999999999999, 0.0, -0.10000000000000001), command = self._FriendInviter__handleYes) self.bYes.hide() self.bNo = DirectButton(self, image = (buttons.find('**/CloseBtn_UP'), buttons.find('**/CloseBtn_DN'), buttons.find('**/CloseBtn_Rllvr')), relief = None, text = Localizer.FriendInviterNo, text_scale = 0.050000000000000003, text_pos = (0.0, -0.10000000000000001), pos = (0.14999999999999999, 0.0, -0.10000000000000001), command = self._FriendInviter__handleNo) self.bNo.hide() buttons.removeNode() gui.removeNode() self.fsm.enterInitialState() if self.avId == None: self.fsm.request('getNewFriend') else: self.fsm.request('begin')
def __init__(self, cr): try: self.DistributedPluto_initialized except: self.DistributedPluto_initialized = 1 DistributedCCharBase.DistributedCCharBase.__init__( self, cr, 'Pluto', 'p') self.fsm = FSM.FSM('DistributedPluto', [ State.State('Off', self.enterOff, self.exitOff, ['Neutral']), State.State('Neutral', self.enterNeutral, self.exitNeutral, ['Walk']), State.State('Walk', self.enterWalk, self.exitWalk, ['Neutral']) ], 'Off', 'Off') self.fsm.enterInitialState()
def __init__(self): self.background=pygame.surface.Surface((1080,720)).convert() self.background.fill((0,0,0)) self.time=0 self.chapter=None self.position=(0,0) self.panel=None self.ship=None self.enemies={} self.bullets={} self.bullet_id=0 self.enemy_id=0 self.FSM=FSM() self.stars=[]
def __init__(self, cr): DistributedObject.DistributedObject.__init__(self, cr) self.fsm = FSM.FSM('DistributedElevator', [ State.State('off', self.enterOff, self.exitOff, ['closing', 'closed', 'opening', 'open']), State.State('closing', self.enterClosing, self.exitClosing, ['closed']), State.State('closed', self.enterClosed, self.exitClosed, ['opening']), State.State('opening', self.enterOpening, self.exitOpening, ['open']), State.State('open', self.enterOpen, self.exitOpen, ['closing']) ], 'off', 'off') self.fsm.enterInitialState()
def __init__(self, cr): try: self.DistributedMinnie_initialized except: self.DistributedMinnie_initialized = 1 DistributedCCharBase.DistributedCCharBase.__init__( self, cr, 'Minnie', 'mn') self.fsm = FSM.FSM(self.getName(), [ State.State('Off', self.enterOff, self.exitOff, ['Neutral']), State.State('Neutral', self.enterNeutral, self.exitNeutral, ['Walk']), State.State('Walk', self.enterWalk, self.exitWalk, ['Neutral']) ], 'Off', 'Off') self.fsm.enterInitialState()
def __init__(self, chatMgr): self.chatMgr = chatMgr self.whisperAvatarId = None self.sentenceList = [] qtGraph = {} self.setupQTGraph() self.fsm = FSM.FSM('QuickTalker', [ State.State('Hidden', self.__enterHidden, self.__exitHidden, [ 'Constructing']), State.State('Constructing', self.__enterConstructing, self.__exitConstructing, [ 'Constructing', 'SayIt', 'Hidden']), State.State('SayIt', self.__enterSayIt, self.__exitSayIt, [ 'Hidden'])], 'Hidden', 'Hidden') self.fsm.enterInitialState() return
def __init__(self, tcr, doneEvent): StateData.StateData.__init__(self, doneEvent) GuiScreen.GuiScreen.__init__(self) self.tcr = tcr self.loginInterface = self.tcr.loginInterface self.fsm = FSM.FSM('CreateAccountScreen', [ State.State('off', self.enterOff, self.exitOff, ['create']), State.State('create', self.enterCreate, self.exitCreate, ['waitForLoginResponse', 'getEmail', 'create']), State.State('getEmail', self.enterGetEmail, self.exitGetEmail, ['waitForLoginResponse', 'getEmail']), State.State('waitForLoginResponse', self.enterWaitForLoginResponse, self.exitWaitForLoginResponse, ['create']) ], 'off', 'off') self.fsm.enterInitialState()
def __init__(self, cr): DistributedMinigame.__init__(self, cr) self.gameFSM = FSM.FSM('DistributedTagGame', [ State.State('off', self.enterOff, self.exitOff, ['play']), State.State('play', self.enterPlay, self.exitPlay, ['cleanup']), State.State('cleanup', self.enterCleanup, self.exitCleanup, ['off']) ], 'off', 'off') self.addChildGameFSM(self.gameFSM) self.walkStateData = Walk.Walk('walkDone') self.scorePanels = [] self.initialPositions = ((0, 10, 0, 180, 0, 0), (10, 0, 0, 90, 0, 0), (0, -10, 0, 0, 0, 0), (-10, 0, 0, -90, 0, 0)) toonbase.localToon.isIt = 0 self.modelCount = 4
def stupidChannelModel(words, segmentations): # figure out the character vocabulary vocab = Counter() for w in words: for c in w: vocab[c] = vocab[c] + 1 # build the FST fst = FSM.FSM(isTransducer=True, isProbabilistic=True) fst.setInitialState('s') fst.setFinalState('s') for w in words: for c in w: fst.addEdge('s', 's', c, c, prob=1.0) # copy the character fst.addEdge('s', 's', '+', None, prob=0.1) # add a random '+' return fst
def stupidSourceModel(segmentations): # figure out the character vocabulary vocab = Counter() for s in segmentations: for c in s: vocab[c] = vocab[c] + 1 # convert to probabilities vocab.normalize() # build the FSA fsa = FSM.FSM(isProbabilistic=True) fsa.setInitialState('s') fsa.setFinalState('s') for c, v in vocab.iteritems(): fsa.addEdge('s', 's', c, prob=v) return fsa
def __init__(self): self._ChatManager__qtObscured = 0 self._ChatManager__normalObscured = 0 gui = loader.loadModelOnce('phase_3.5/models/gui/chat_input_gui') self.normalButton = DirectButton(image = (gui.find('**/ChtBx_ChtBtn_UP'), gui.find('**/ChtBx_ChtBtn_DN'), gui.find('**/ChtBx_ChtBtn_RLVR')), pos = (-1.2646999999999999, 0, 0.92800000000000005), scale = 1.179, relief = None, image_color = Vec4(1, 1, 1, 1), text = ('', Localizer.ChatManagerChat, Localizer.ChatManagerChat), text_scale = 0.059999999999999998, text_fg = Vec4(1, 1, 1, 1), text_shadow = Vec4(0, 0, 0, 1), text_pos = (0, -0.089999999999999997), textMayChange = 0, sortOrder = FOREGROUND_SORT_INDEX, command = self._ChatManager__normalButtonPressed) self.normalButton.hide() self.openQtSfx = loader.loadSfx('phase_3.5/audio/sfx/GUI_quicktalker.mp3') self.openQtSfx.setVolume(0.59999999999999998) self.qtButton = DirectButton(image = (gui.find('**/ChtBx_ChtBtn_UP'), gui.find('**/ChtBx_ChtBtn_DN'), gui.find('**/ChtBx_ChtBtn_RLVR')), pos = (-1.129, 0, 0.92800000000000005), scale = 1.179, relief = None, image_color = Vec4(0.75, 1, 0.59999999999999998, 1), text = ('', Localizer.GlobalQuickTalkerName, Localizer.GlobalQuickTalkerName), text_scale = 0.059999999999999998, text_fg = Vec4(1, 1, 1, 1), text_shadow = Vec4(0, 0, 0, 1), text_pos = (0, -0.089999999999999997), textMayChange = 0, sortOrder = FOREGROUND_SORT_INDEX, command = self._ChatManager__qtButtonPressed, clickSound = self.openQtSfx) self.qtButton.hide() self.whisperFrame = DirectFrame(relief = None, image = getDefaultDialogGeom(), image_scale = (0.45000000000000001, 0.45000000000000001, 0.45000000000000001), image_color = ToontownGlobals.GlobalDialogColor, pos = (0.0, 0, 0.754), text = Localizer.ChatManagerWhisperTo, text_wordwrap = 7.0, text_scale = 0.059999999999999998, text_fg = Vec4(0, 0, 0, 1), text_pos = (0, 0.14000000000000001), textMayChange = 1, sortOrder = FOREGROUND_SORT_INDEX) self.whisperFrame.hide() self.whisperButton = DirectButton(parent = self.whisperFrame, image = (gui.find('**/ChtBx_ChtBtn_UP'), gui.find('**/ChtBx_ChtBtn_DN'), gui.find('**/ChtBx_ChtBtn_RLVR')), pos = (-0.125, 0, -0.10000000000000001), scale = 1.179, relief = None, image_color = Vec4(1, 1, 1, 1), text = ('', Localizer.ChatManagerChat, Localizer.ChatManagerChat, ''), image3_color = Vec4(0.59999999999999998, 0.59999999999999998, 0.59999999999999998, 0.59999999999999998), text_scale = 0.050000000000000003, text_fg = (0, 0, 0, 1), text_pos = (0, -0.089999999999999997), textMayChange = 0, command = self._ChatManager__whisperButtonPressed) self.whisperQtButton = DirectButton(parent = self.whisperFrame, image = (gui.find('**/ChtBx_ChtBtn_UP'), gui.find('**/ChtBx_ChtBtn_DN'), gui.find('**/ChtBx_ChtBtn_RLVR')), pos = (0.0, 0, -0.10000000000000001), scale = 1.179, relief = None, image_color = Vec4(0.75, 1, 0.59999999999999998, 1), text = ('', Localizer.GlobalQuickTalkerName, Localizer.GlobalQuickTalkerName, ''), image3_color = Vec4(0.59999999999999998, 0.59999999999999998, 0.59999999999999998, 0.59999999999999998), text_scale = 0.050000000000000003, text_fg = (0, 0, 0, 1), text_pos = (0, -0.089999999999999997), textMayChange = 0, command = self._ChatManager__whisperQtButtonPressed) self.whisperCancelButton = DirectButton(parent = self.whisperFrame, image = (gui.find('**/CloseBtn_UP'), gui.find('**/CloseBtn_DN'), gui.find('**/CloseBtn_Rllvr')), pos = (0.125, 0, -0.10000000000000001), scale = 1.179, relief = None, text = ('', Localizer.ChatManagerCancel, Localizer.ChatManagerCancel), text_scale = 0.050000000000000003, text_fg = (0, 0, 0, 1), text_pos = (0, -0.089999999999999997), textMayChange = 0, command = self._ChatManager__whisperCancelPressed) gui.removeNode() self.openChatWarning = None self.unpaidChatWarning = None self.noSecretChatAtAll = None self.noSecretChatWarning = None self.activateChat = None self.leaveToPayDialog = None self.chatMoreInfo = None self.chatPrivacyPolicy = None self.secretChatActivated = None self.problemActivatingChat = None self.fsm = FSM.FSM('chatManager', [ State.State('off', self.enterOff, self.exitOff), State.State('mainMenu', self.enterMainMenu, self.exitMainMenu), State.State('quickTalker', self.enterQuickTalker, self.exitQuickTalker), State.State('normalChat', self.enterNormalChat, self.exitNormalChat), State.State('whisper', self.enterWhisper, self.exitWhisper), State.State('whisperChat', self.enterWhisperChat, self.exitWhisperChat), State.State('whisperQuickTalker', self.enterWhisperQuickTalker, self.exitWhisperQuickTalker), State.State('openChatWarning', self.enterOpenChatWarning, self.exitOpenChatWarning), State.State('unpaidChatWarning', self.enterUnpaidChatWarning, self.exitUnpaidChatWarning), State.State('noSecretChatAtAll', self.enterNoSecretChatAtAll, self.exitNoSecretChatAtAll), State.State('noSecretChatWarning', self.enterNoSecretChatWarning, self.exitNoSecretChatWarning), State.State('activateChat', self.enterActivateChat, self.exitActivateChat), State.State('leaveToPayDialog', self.enterLeaveToPayDialog, self.exitLeaveToPayDialog), State.State('chatMoreInfo', self.enterChatMoreInfo, self.exitChatMoreInfo), State.State('chatPrivacyPolicy', self.enterChatPrivacyPolicy, self.exitChatPrivacyPolicy), State.State('secretChatActivated', self.enterSecretChatActivated, self.exitSecretChatActivated), State.State('problemActivatingChat', self.enterProblemActivatingChat, self.exitProblemActivatingChat)], 'off', 'off') self.fsm.enterInitialState() self.chatInputNormal = ChatInputNormal.ChatInputNormal(self) self.chatInputQuickTalker = ChatInputQuickTalker.ChatInputQuickTalker(self)
def __init__(self): try: pass except: self.ToonHead_initialized = 1 Actor.Actor.__init__(self) self.toonName = 'ToonHead-' + str(self.this) self._ToonHead__blinkName = 'blink-' + self.toonName self._ToonHead__stareAtName = 'stareAt-' + self.toonName self._ToonHead__lookName = 'look-' + self.toonName self._ToonHead__eyes = None self._ToonHead__eyelashOpen = None self._ToonHead__eyelashClosed = None self._ToonHead__lod500Eyes = None self._ToonHead__lod250Eyes = None self._ToonHead__lpupil = None self._ToonHead__lod500lPupil = None self._ToonHead__lod250lPupil = None self._ToonHead__rpupil = None self._ToonHead__lod500rPupil = None self._ToonHead__lod250rPupil = None self._ToonHead__muzzle = None self._ToonHead__eyesOpen = ToonHead.EyesOpen self._ToonHead__eyesClosed = ToonHead.EyesClosed self.eyelids = FSM.FSM('eyelids', [ State.State('off', self.enterEyelidsOff, self.exitEyelidsOff, ['open', 'closed', 'surprised']), State.State('open', self.enterEyelidsOpen, self.exitEyelidsOpen, ['closed', 'surprised', 'off']), State.State('surprised', self.enterEyelidsSurprised, self.exitEyelidsSurprised, ['open', 'closed', 'off']), State.State('closed', self.enterEyelidsClosed, self.exitEyelidsClosed, ['open', 'surprised', 'off']) ], 'off', 'off') self.eyelids.enterInitialState() self._ToonHead__stareAtNode = NodePath() self._ToonHead__defaultStarePoint = Point3(0, 0, 0) self._ToonHead__stareAtPoint = self._ToonHead__defaultStarePoint self._ToonHead__stareAtTime = 0 self.lookAtPositionCallbackArgs = None return None