def __init__(self, serialNum, maze, randomNumGen, difficulty, startTile, cogdoSuitType, walkAnimName = None):
     data = Globals.SuitData[cogdoSuitType]
     MazeSuit.__init__(self, serialNum, maze, randomNumGen, data['cellWalkPeriod'], difficulty, data['dnaName'], startTile=startTile, walkSameDirectionProb=Globals.SuitWalkSameDirectionProb, walkTurnAroundProb=Globals.SuitWalkTurnAroundProb, uniqueRandomNumGen=False, walkAnimName=walkAnimName)
     FSM.__init__(self, 'CogdoMazeSuit')
     CogdoMazeSplattable.__init__(self, self.suit, '%s-%i' % (Globals.SuitCollisionName, self.serialNum), 1.5)
     if data.has_key('scale'):
         self.suit.setScale(data['scale'])
     self.hp = data['hp']
     self.type = cogdoSuitType
     self.memos = data['memos']
     self.deathSuit = self.suit.getLoseActor()
     self.deathSuit.pose('lose', 0)
     BattleParticles.loadParticles()
     self._initSfx()
示例#2
0
 def __init__(self, serialNum, maze, randomNumGen, difficulty, startTile, cogdoSuitType, walkAnimName = None):
     data = Globals.SuitData[cogdoSuitType]
     MazeSuit.__init__(self, serialNum, maze, randomNumGen, data['cellWalkPeriod'], difficulty, data['dnaName'], startTile=startTile, walkSameDirectionProb=Globals.SuitWalkSameDirectionProb, walkTurnAroundProb=Globals.SuitWalkTurnAroundProb, uniqueRandomNumGen=False, walkAnimName=walkAnimName)
     FSM.__init__(self, 'CogdoMazeSuit')
     CogdoMazeSplattable.__init__(self, self.suit, '%s-%i' % (Globals.SuitCollisionName, self.serialNum), 1.5)
     if data.has_key('scale'):
         self.suit.setScale(data['scale'])
     self.hp = data['hp']
     self.type = cogdoSuitType
     self.memos = data['memos']
     self.deathSuit = self.suit.getLoseActor()
     self.deathSuit.pose('lose', 0)
     BattleParticles.loadParticles()
     self._initSfx()
    def __updateTask(self, task):
        dt = globalClock.getDt()
        self.localPlayer.update(dt)
        for player in self.players:
            curTX, curTY = self.maze.world2tileClipped(player.toon.getX(), player.toon.getY())
            self.guiMgr.mazeMapGui.updateToon(player.toon, curTX, curTY)

        self.__updateGags()
        if Globals.QuakeSfxEnabled:
            self.__updateQuakeSound()
        for pickup in self.pickups:
            pickup.update(dt)

        MazeSuit.thinkSuits(self.suits, self.distGame.getStartTime())
        return Task.cont
    def __updateTask(self, task):
        dt = globalClock.getDt()
        self.localPlayer.update(dt)
        for player in self.players:
            curTX, curTY = self.maze.world2tileClipped(player.toon.getX(), player.toon.getY())
            self.guiMgr.mazeMapGui.updateToon(player.toon, curTX, curTY)

        self.__updateGags()
        if Globals.QuakeSfxEnabled:
            self.__updateQuakeSound()
        for pickup in self.pickups:
            pickup.update(dt)

        MazeSuit.thinkSuits(self.suits, self.distGame.getStartTime())
        return Task.cont
示例#5
0
 def __loadSuits(self):
     self.notify.debug('loadSuits')
     self.suits = []
     self.numSuits = 4 * self.numPlayers
     safeZone = self.getSafezoneId()
     slowerTable = self.slowerSuitPeriods
     if self.SLOWER_SUIT_CURVE:
         slowerTable = self.slowerSuitPeriodsCurve
     slowerPeriods = slowerTable[safeZone][self.numSuits]
     fasterTable = self.fasterSuitPeriods
     if self.FASTER_SUIT_CURVE:
         fasterTable = self.fasterSuitPeriodsCurve
     fasterPeriods = fasterTable[safeZone][self.numSuits]
     suitPeriods = slowerPeriods + fasterPeriods
     self.notify.debug('suit periods: ' + `suitPeriods`)
     self.randomNumGen.shuffle(suitPeriods)
     for i in xrange(self.numSuits):
         self.suits.append(MazeSuit(i, self.maze, self.randomNumGen, suitPeriods[i], self.getDifficulty()))
示例#6
0
 def think(self, curTic, curT, unwalkables):
     MazeSuit.think(self, curTic, curT, unwalkables)
     messenger.send(self.ThinkEventName, [self, self.TX, self.TY])
示例#7
0
 def initCollisions(self):
     MazeSuit.initCollisions(self)
     self.collNodePath.setScale(0.75)
     self.accept(self.uniqueName('again' + self.COLL_SPHERE_NAME), self.handleEnterSphere)
示例#8
0
 def gameStart(self, gameStartTime):
     MazeSuit.gameStart(self, gameStartTime)
     self.accept(Globals.GagCollisionName + '-into-' + self.gagCollisionName, self.handleGagHit)
     messenger.send(self.ThinkEventName, [self, self.TX, self.TY])
示例#9
0
 def destroy(self):
     BattleParticles.unloadParticles()
     self.ignoreAll()
     self._destroySfx()
     CogdoMazeSplattable.destroy(self)
     MazeSuit.destroy(self)
示例#10
0
 def think(self, curTic, curT, unwalkables):
     MazeSuit.think(self, curTic, curT, unwalkables)
     messenger.send(self.ThinkEventName, [self, self.TX, self.TY])
示例#11
0
 def initCollisions(self):
     MazeSuit.initCollisions(self)
     self.collNodePath.setScale(0.75)
     self.accept(self.uniqueName('again' + self.COLL_SPHERE_NAME), self.handleEnterSphere)
示例#12
0
 def gameStart(self, gameStartTime):
     MazeSuit.gameStart(self, gameStartTime)
     self.accept(Globals.GagCollisionName + '-into-' + self.gagCollisionName, self.handleGagHit)
     messenger.send(self.ThinkEventName, [self, self.TX, self.TY])
示例#13
0
 def destroy(self):
     BattleParticles.unloadParticles()
     self.ignoreAll()
     self._destroySfx()
     CogdoMazeSplattable.destroy(self)
     MazeSuit.destroy(self)