Exemple #1
0
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
Exemple #2
0
 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
Exemple #3
0
 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()
Exemple #5
0
 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()
Exemple #6
0
    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
Exemple #10
0
 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)
Exemple #13
0
 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
Exemple #14
0
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()
Exemple #15
0
 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
Exemple #16
0
 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()
Exemple #18
0
 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()
Exemple #21
0
	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=[]
Exemple #22
0
 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()
Exemple #23
0
 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()
Exemple #24
0
 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
Exemple #25
0
 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()
Exemple #26
0
 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
Exemple #27
0
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
Exemple #28
0
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
Exemple #29
0
 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