示例#1
0
    def __init__(self, hudObj):
        FSM.__init__(self, "WoT Game Play")
        self.hudObj = hudObj
        self.currPlayer = None

        self.miniMap = HUDMap()
        self.terr = TerrainModel()

        self.upperWall = WallFortune([0, 100, 0], "../arquivos de modelo/Wall")
        #bottomWall = WallFortune([0, -100, 0], "../arquivos de modelo/Wall")
        self.leftWall = WallFortune([-100, 0, 0],
                                    "../arquivos de modelo/Wall_of_Fortune")
        self.leftWall.rotateZ(90)
        self.rightWall = WallFortune([100, 0, 0],
                                     "../arquivos de modelo/Wall_of_Fortune")
        self.rightWall.rotateZ(270)

        self.player1 = player.Player("Player1", "lylyh")
        self.player2 = player.Player("Player2", "Niltin")
示例#2
0
	def __init__(self, hudObj):
		FSM.__init__(self, "WoT Game Play")
		self.hudObj = hudObj
		self.currPlayer = None

		
		self.miniMap = HUDMap()
		self.terr = TerrainModel()


		self.upperWall = WallFortune([0, 100, 0], "../arquivos de modelo/Wall")
		#bottomWall = WallFortune([0, -100, 0], "../arquivos de modelo/Wall")
		self.leftWall = WallFortune([-100, 0, 0], "../arquivos de modelo/Wall_of_Fortune")
		self.leftWall.rotateZ(90)
		self.rightWall = WallFortune([100, 0, 0], "../arquivos de modelo/Wall_of_Fortune")
		self.rightWall.rotateZ(270)

		self.player1 = player.Player("Player1", "lylyh")
		self.player2 = player.Player("Player2", "Niltin")
示例#3
0
class gamePlayFSM(FSM):
	
	def __init__(self, hudObj):
		FSM.__init__(self, "WoT Game Play")
		self.hudObj = hudObj
		self.currPlayer = None

		
		self.miniMap = HUDMap()
		self.terr = TerrainModel()


		self.upperWall = WallFortune([0, 100, 0], "../arquivos de modelo/Wall")
		#bottomWall = WallFortune([0, -100, 0], "../arquivos de modelo/Wall")
		self.leftWall = WallFortune([-100, 0, 0], "../arquivos de modelo/Wall_of_Fortune")
		self.leftWall.rotateZ(90)
		self.rightWall = WallFortune([100, 0, 0], "../arquivos de modelo/Wall_of_Fortune")
		self.rightWall.rotateZ(270)

		self.player1 = player.Player("Player1", "lylyh")
		self.player2 = player.Player("Player2", "Niltin")

	def __del__(self):
		self.terr.destroy()
		self.upperWall.destroy()
		self.leftWall.destroy()
		self.rightWall.destroy()
		self.miniMap.destroy()
		for  pkey in projectile.Projectile.projectileDict.keys():
			p = projectile.Projectile.projectileDict[pkey]
			p.projectileModel.projectileInstance.removeNode()
			del projectile.Projectile.projectileDict[pkey]
		for  pkey in troop.Troop.troopDict.keys():
			troopObj = troop.Troop.troopDict[pkey]
			troopObj.troopModel.troopInstance.removeNode()
			del troop.Troop.troopDict[pkey]
		for  pkey in tower.Tower.towerDict.keys():
			towerObj = tower.Tower.towerDict[pkey]
			towerObj.towerModel.towerInstance.removeNode()
			del tower.Tower.towerDict[pkey]

		
		
	def enterPlayer1(self):
		player.Player.inactivePlayer = player.Player.currPlayer
		player.Player.currPlayer = player.Player.playerDict["Player1"]
		self.currPlayer = player.Player.currPlayer
		self.currPlayer.loadPlayer()
		self.hudObj.updatePlayerDataTexts()
		mousePicking.pickerNode.setFromCollideMask(self.currPlayer.playerBitMask)
		#print "Here is Player ", player.Player.currPlayer.name



	def exitPlayer1(self):
		self.currPlayer.updateTime()
		taskMgr.add(self.currPlayer.attackEnemy, "attack")
		if mousePicking.MousePicking.lastClickedTower != None:
			mousePicking.MousePicking.lastClickedTower.towerModel.resetColor()
		self.hudObj.resetHUD()
		
	def enterPlayer2(self):
		player.Player.inactivePlayer = player.Player.currPlayer
		player.Player.currPlayer = player.Player.playerDict["Player2"]
		self.currPlayer = player.Player.currPlayer
		self.currPlayer.loadPlayer()
		self.hudObj.updatePlayerDataTexts()
		mousePicking.pickerNode.setFromCollideMask(self.currPlayer.playerBitMask)
		#print "Here is Player ", player.Player.currPlayer.name
		
				
	def exitPlayer2(self):
		self.currPlayer.updateTime()
		taskMgr.add(self.currPlayer.attackEnemy, "attack")
		if mousePicking.MousePicking.lastClickedTower != None:
			mousePicking.MousePicking.lastClickedTower.towerModel.resetColor()
		self.hudObj.resetHUD()

	def update(self):
		for  pkey in projectile.Projectile.projectileDict.keys():
			p = projectile.Projectile.projectileDict[pkey]
			if (p.colliding == True):
				p.projectileModel.projectileInstance.removeNode()
				del projectile.Projectile.projectileDict[pkey]
		for  pkey in troop.Troop.troopDict.keys():
			troopObj = troop.Troop.troopDict[pkey]
			if (troopObj.isDead):
				if (troopObj.isAnimationFinished()):
					print "deleted"
					del troop.Troop.troopDict[pkey]
示例#4
0
class gamePlayFSM(FSM):
    def __init__(self, hudObj):
        FSM.__init__(self, "WoT Game Play")
        self.hudObj = hudObj
        self.currPlayer = None

        self.miniMap = HUDMap()
        self.terr = TerrainModel()

        self.upperWall = WallFortune([0, 100, 0], "../arquivos de modelo/Wall")
        #bottomWall = WallFortune([0, -100, 0], "../arquivos de modelo/Wall")
        self.leftWall = WallFortune([-100, 0, 0],
                                    "../arquivos de modelo/Wall_of_Fortune")
        self.leftWall.rotateZ(90)
        self.rightWall = WallFortune([100, 0, 0],
                                     "../arquivos de modelo/Wall_of_Fortune")
        self.rightWall.rotateZ(270)

        self.player1 = player.Player("Player1", "lylyh")
        self.player2 = player.Player("Player2", "Niltin")

    def __del__(self):
        self.terr.destroy()
        self.upperWall.destroy()
        self.leftWall.destroy()
        self.rightWall.destroy()
        self.miniMap.destroy()

    def enterPlayer1(self):
        player.Player.inactivePlayer = player.Player.currPlayer
        player.Player.currPlayer = player.Player.playerDict["Player1"]
        self.currPlayer = player.Player.currPlayer
        self.currPlayer.loadPlayer()
        self.hudObj.updatePlayerDataTexts()
        mousePicking.pickerNode.setFromCollideMask(
            self.currPlayer.playerBitMask)
        print "Here is Player ", player.Player.currPlayer.name

    def exitPlayer1(self):
        self.currPlayer.updateTime()
        taskMgr.add(self.currPlayer.attackEnemy, "attack")
        if mousePicking.MousePicking.lastClickedTower != None:
            mousePicking.MousePicking.lastClickedTower.towerModel.resetColor()
        self.hudObj.resetHUD()

    def enterPlayer2(self):
        player.Player.inactivePlayer = player.Player.currPlayer
        player.Player.currPlayer = player.Player.playerDict["Player2"]
        self.currPlayer = player.Player.currPlayer
        self.currPlayer.loadPlayer()
        self.hudObj.updatePlayerDataTexts()
        mousePicking.pickerNode.setFromCollideMask(
            self.currPlayer.playerBitMask)
        print "Here is Player ", player.Player.currPlayer.name

    def exitPlayer2(self):
        self.currPlayer.updateTime()
        taskMgr.add(self.currPlayer.attackEnemy, "attack")
        if mousePicking.MousePicking.lastClickedTower != None:
            mousePicking.MousePicking.lastClickedTower.towerModel.resetColor()
        self.hudObj.resetHUD()

    def update(self):
        for pkey in projectile.Projectile.projectileDict.keys():
            p = projectile.Projectile.projectileDict[pkey]
            if (p.colliding == True):
                p.projectileModel.projectileInstance.removeNode()
                del projectile.Projectile.projectileDict[pkey]
        for pkey in troop.Troop.troopDict.keys():
            troopObj = troop.Troop.troopDict[pkey]
            if (troopObj.isDead):
                if (troopObj.isAnimationFinished()):
                    print "deleted"
                    del troop.Troop.troopDict[pkey]