def rotateRightOn(self): self.rotateRight = True rotateEvent = createNamedEvent( self.name, Event.PLAYER_ROTATE_RIGHT_ON ) messenger.send(rotateEvent)
def rotateRightOff(self): self.rotateRight = False rotateEvent = createNamedEvent( self.name, Event.PLAYER_ROTATE_RIGHT_OFF ) messenger.send(rotateEvent)
def rotateLeftOff(self): self.rotateLeft = False rotateEvent = createNamedEvent( self.name, Event.PLAYER_ROTATE_LEFT_OFF ) messenger.send(rotateEvent)
def rotateLeftOn(self): self.rotateLeft = True rotateEvent = createNamedEvent( self.name, Event.PLAYER_ROTATE_LEFT_ON ) messenger.send(rotateEvent)
def rotateLeftOn(self): self.rotateLeft = True rotateEvent = createNamedEvent(self.name, Event.PLAYER_ROTATE_LEFT_ON) messenger.send(rotateEvent)
def moveForwardOff(self): self.forward = False moveEvent = createNamedEvent(self.name, Event.PLAYER_MOVE_FORWARD_OFF) messenger.send(moveEvent)
def moveForwardOn(self): self.forward = True moveEvent = createNamedEvent(self.name, Event.PLAYER_MOVE_FORWARD_ON) messenger.send(moveEvent)
def shoot(self): shootEvent = createNamedEvent(self.name, Event.PLAYER_SHOOT) messenger.send(shootEvent)
def registerListeners(self): playerOne = self.getPlayers()[0] playerTwo = self.getPlayers()[1] shipOne = self.getShips()[0] shipTwo = self.getShips()[1] # Player one events playerOneMoveForwardOn = createNamedEvent(playerOne.name, Event.PLAYER_MOVE_FORWARD_ON) playerOneMoveForwardOff = createNamedEvent( playerOne.name, Event.PLAYER_MOVE_FORWARD_OFF) playerOneRotateLeftOn = createNamedEvent(playerOne.name, Event.PLAYER_ROTATE_LEFT_ON) playerOneRotateLeftOff = createNamedEvent(playerOne.name, Event.PLAYER_ROTATE_LEFT_OFF) playerOneRotateRightOn = createNamedEvent(playerOne.name, Event.PLAYER_ROTATE_RIGHT_ON) playerOneRotateRightOff = createNamedEvent( playerOne.name, Event.PLAYER_ROTATE_RIGHT_OFF) playerOneShoot = createNamedEvent(playerOne.name, Event.PLAYER_SHOOT) base.accept(playerOneMoveForwardOn, shipOne.thrustOn) base.accept(playerOneMoveForwardOff, shipOne.thrustOff) base.accept(playerOneRotateLeftOn, shipOne.rotateLeftOn) base.accept(playerOneRotateLeftOff, shipOne.rotateLeftOff) base.accept(playerOneRotateRightOn, shipOne.rotateRightOn) base.accept(playerOneRotateRightOff, shipOne.rotateRightOff) base.accept(playerOneShoot, shipOne.shoot) # Player two events playerTwoMoveForwardOn = createNamedEvent(playerTwo.name, Event.PLAYER_MOVE_FORWARD_ON) playerTwoMoveForwardOff = createNamedEvent( playerTwo.name, Event.PLAYER_MOVE_FORWARD_OFF) playerTwoRotateLeftOn = createNamedEvent(playerTwo.name, Event.PLAYER_ROTATE_LEFT_ON) playerTwoRotateLeftOff = createNamedEvent(playerTwo.name, Event.PLAYER_ROTATE_LEFT_OFF) playerTwoRotateRightOn = createNamedEvent(playerTwo.name, Event.PLAYER_ROTATE_RIGHT_ON) playerTwoRotateRightOff = createNamedEvent( playerTwo.name, Event.PLAYER_ROTATE_RIGHT_OFF) playerTwoShoot = createNamedEvent(playerTwo.name, Event.PLAYER_SHOOT) base.accept(playerTwoMoveForwardOn, shipTwo.thrustOn) base.accept(playerTwoMoveForwardOff, shipTwo.thrustOff) base.accept(playerTwoRotateLeftOn, shipTwo.rotateLeftOn) base.accept(playerTwoRotateLeftOff, shipTwo.rotateLeftOff) base.accept(playerTwoRotateRightOn, shipTwo.rotateRightOn) base.accept(playerTwoRotateRightOff, shipTwo.rotateRightOff) base.accept(playerTwoShoot, shipTwo.shoot) # Player one key mapping base.accept(Game.PLAYER_ONE_FORWARD_KEY, playerOne.moveForwardOn) base.accept("control-" + Game.PLAYER_ONE_FORWARD_KEY, playerOne.moveForwardOn) base.accept(Game.PLAYER_ONE_FORWARD_KEY + "-up", playerOne.moveForwardOff) base.accept(Game.PLAYER_ONE_ROTATE_LEFT_KEY, playerOne.rotateLeftOn) base.accept("control-" + Game.PLAYER_ONE_ROTATE_LEFT_KEY, playerOne.rotateLeftOn) base.accept(Game.PLAYER_ONE_ROTATE_LEFT_KEY + "-up", playerOne.rotateLeftOff) base.accept(Game.PLAYER_ONE_ROTATE_RIGHT_KEY, playerOne.rotateRightOn) base.accept("control-" + Game.PLAYER_ONE_ROTATE_RIGHT_KEY, playerOne.rotateRightOn) base.accept(Game.PLAYER_ONE_ROTATE_RIGHT_KEY + "-up", playerOne.rotateRightOff) base.accept(Game.PLAYER_ONE_SHOOT, playerOne.shoot) # Player two key mapping base.accept(Game.PLAYER_TWO_FORWARD_KEY, playerTwo.moveForwardOn) base.accept("control-" + Game.PLAYER_TWO_FORWARD_KEY, playerTwo.moveForwardOn) base.accept(Game.PLAYER_TWO_FORWARD_KEY + "-up", playerTwo.moveForwardOff) base.accept(Game.PLAYER_TWO_ROTATE_LEFT_KEY, playerTwo.rotateLeftOn) base.accept("control-" + Game.PLAYER_TWO_ROTATE_LEFT_KEY, playerTwo.rotateLeftOn) base.accept(Game.PLAYER_TWO_ROTATE_LEFT_KEY + "-up", playerTwo.rotateLeftOff) base.accept(Game.PLAYER_TWO_ROTATE_RIGHT_KEY, playerTwo.rotateRightOn) base.accept("control-" + Game.PLAYER_TWO_ROTATE_RIGHT_KEY, playerTwo.rotateRightOn) base.accept(Game.PLAYER_TWO_ROTATE_RIGHT_KEY + "-up", playerTwo.rotateRightOff) base.accept(Game.PLAYER_TWO_SHOOT, playerTwo.shoot) # Game specific key mapping base.accept("escape", sys.exit) base.accept("f1", self.switchCameraMode, [Game.CAMERA_MODE_FPS_ONE]) base.accept("f2", self.switchCameraMode, [Game.CAMERA_MODE_FPS_TWO]) base.accept("f3", self.switchCameraMode, [Game.CAMERA_MODE_GAME]) base.accept("f4", self.switchCameraMode, [Game.CAMERA_MODE_STILL]) base.accept("p", self.togglePause) # The game is now listening to all the necessary events self.isListening = True
def rotateRightOff(self): self.rotateRight = False rotateEvent = createNamedEvent(self.name, Event.PLAYER_ROTATE_RIGHT_OFF) messenger.send(rotateEvent)
def registerListeners(self): playerOne = self.getPlayers()[0] playerTwo = self.getPlayers()[1] shipOne = self.getShips()[0] shipTwo = self.getShips()[1] # Player one events playerOneMoveForwardOn = createNamedEvent( playerOne.name, Event.PLAYER_MOVE_FORWARD_ON ) playerOneMoveForwardOff = createNamedEvent( playerOne.name, Event.PLAYER_MOVE_FORWARD_OFF ) playerOneRotateLeftOn = createNamedEvent( playerOne.name, Event.PLAYER_ROTATE_LEFT_ON ) playerOneRotateLeftOff = createNamedEvent( playerOne.name, Event.PLAYER_ROTATE_LEFT_OFF ) playerOneRotateRightOn = createNamedEvent( playerOne.name, Event.PLAYER_ROTATE_RIGHT_ON ) playerOneRotateRightOff = createNamedEvent( playerOne.name, Event.PLAYER_ROTATE_RIGHT_OFF ) playerOneShoot = createNamedEvent( playerOne.name, Event.PLAYER_SHOOT ) base.accept(playerOneMoveForwardOn, shipOne.thrustOn) base.accept(playerOneMoveForwardOff, shipOne.thrustOff) base.accept(playerOneRotateLeftOn, shipOne.rotateLeftOn) base.accept(playerOneRotateLeftOff, shipOne.rotateLeftOff) base.accept(playerOneRotateRightOn, shipOne.rotateRightOn) base.accept(playerOneRotateRightOff, shipOne.rotateRightOff) base.accept(playerOneShoot, shipOne.shoot) # Player two events playerTwoMoveForwardOn = createNamedEvent( playerTwo.name, Event.PLAYER_MOVE_FORWARD_ON ) playerTwoMoveForwardOff = createNamedEvent( playerTwo.name, Event.PLAYER_MOVE_FORWARD_OFF ) playerTwoRotateLeftOn = createNamedEvent( playerTwo.name, Event.PLAYER_ROTATE_LEFT_ON ) playerTwoRotateLeftOff = createNamedEvent( playerTwo.name, Event.PLAYER_ROTATE_LEFT_OFF ) playerTwoRotateRightOn = createNamedEvent( playerTwo.name, Event.PLAYER_ROTATE_RIGHT_ON ) playerTwoRotateRightOff = createNamedEvent( playerTwo.name, Event.PLAYER_ROTATE_RIGHT_OFF ) playerTwoShoot = createNamedEvent( playerTwo.name, Event.PLAYER_SHOOT ) base.accept(playerTwoMoveForwardOn, shipTwo.thrustOn) base.accept(playerTwoMoveForwardOff, shipTwo.thrustOff) base.accept(playerTwoRotateLeftOn, shipTwo.rotateLeftOn) base.accept(playerTwoRotateLeftOff, shipTwo.rotateLeftOff) base.accept(playerTwoRotateRightOn, shipTwo.rotateRightOn) base.accept(playerTwoRotateRightOff, shipTwo.rotateRightOff) base.accept(playerTwoShoot, shipTwo.shoot) # Player one key mapping base.accept(Game.PLAYER_ONE_FORWARD_KEY, playerOne.moveForwardOn) base.accept("control-" + Game.PLAYER_ONE_FORWARD_KEY, playerOne.moveForwardOn) base.accept(Game.PLAYER_ONE_FORWARD_KEY + "-up", playerOne.moveForwardOff) base.accept(Game.PLAYER_ONE_ROTATE_LEFT_KEY, playerOne.rotateLeftOn) base.accept("control-" + Game.PLAYER_ONE_ROTATE_LEFT_KEY, playerOne.rotateLeftOn) base.accept(Game.PLAYER_ONE_ROTATE_LEFT_KEY + "-up", playerOne.rotateLeftOff) base.accept(Game.PLAYER_ONE_ROTATE_RIGHT_KEY, playerOne.rotateRightOn) base.accept("control-" + Game.PLAYER_ONE_ROTATE_RIGHT_KEY, playerOne.rotateRightOn) base.accept(Game.PLAYER_ONE_ROTATE_RIGHT_KEY + "-up", playerOne.rotateRightOff) base.accept(Game.PLAYER_ONE_SHOOT, playerOne.shoot) # Player two key mapping base.accept(Game.PLAYER_TWO_FORWARD_KEY, playerTwo.moveForwardOn) base.accept("control-" + Game.PLAYER_TWO_FORWARD_KEY, playerTwo.moveForwardOn) base.accept(Game.PLAYER_TWO_FORWARD_KEY + "-up", playerTwo.moveForwardOff) base.accept(Game.PLAYER_TWO_ROTATE_LEFT_KEY, playerTwo.rotateLeftOn) base.accept("control-" + Game.PLAYER_TWO_ROTATE_LEFT_KEY, playerTwo.rotateLeftOn) base.accept(Game.PLAYER_TWO_ROTATE_LEFT_KEY + "-up", playerTwo.rotateLeftOff) base.accept(Game.PLAYER_TWO_ROTATE_RIGHT_KEY, playerTwo.rotateRightOn) base.accept("control-" + Game.PLAYER_TWO_ROTATE_RIGHT_KEY, playerTwo.rotateRightOn) base.accept(Game.PLAYER_TWO_ROTATE_RIGHT_KEY + "-up", playerTwo.rotateRightOff) base.accept(Game.PLAYER_TWO_SHOOT, playerTwo.shoot) # Game specific key mapping base.accept("escape", sys.exit) base.accept( "f1", self.switchCameraMode, [Game.CAMERA_MODE_FPS_ONE] ) base.accept( "f2", self.switchCameraMode, [Game.CAMERA_MODE_FPS_TWO] ) base.accept( "f3", self.switchCameraMode, [Game.CAMERA_MODE_GAME] ) base.accept( "f4", self.switchCameraMode, [Game.CAMERA_MODE_STILL] ) base.accept( "p", self.togglePause ) # The game is now listening to all the necessary events self.isListening = True
def rotateLeftOff(self): self.rotateLeft = False rotateEvent = createNamedEvent(self.name, Event.PLAYER_ROTATE_LEFT_OFF) messenger.send(rotateEvent)
def testCreateNamedEvent(self): playerOne = Player() playerOneMoveEvent = createNamedEvent( playerOne.name, Event.PLAYER_MOVE_FORWARD_ON ) self.failUnless(playerOneMoveEvent)
def rotateRightOn(self): self.rotateRight = True rotateEvent = createNamedEvent(self.name, Event.PLAYER_ROTATE_RIGHT_ON) messenger.send(rotateEvent)
def testRegisterListeners(self): self.game.start() players = self.game.getPlayers() playerOne = players[0] self.game.registerListeners() playerOneMoveForwardOnEvent = createNamedEvent( playerOne.name, Event.PLAYER_MOVE_FORWARD_ON ) ships = self.game.getShips() shipOne = ships[0] shipTwo = ships[1] # Test that the player can move the ship forward pos1 = shipOne.getPos() vel1 = shipOne.getVel() acc1 = shipOne.getAcc() messenger.send(playerOneMoveForwardOnEvent) taskMgr.step() pos2 = shipOne.getPos() vel2 = shipOne.getVel() acc2 = shipOne.getAcc() self.failIf(pos1 == pos2) self.failIf(vel1 == vel2) self.failIf(acc1 == acc2) # Test that the move forward off event is handled properly playerOneMoveForwardOffEvent = createNamedEvent( playerOne.name, Event.PLAYER_MOVE_FORWARD_OFF ) acc1 = shipOne.getAcc() messenger.send(playerOneMoveForwardOffEvent) taskMgr.step() acc2 = shipOne.getAcc() self.failIf(acc1 == acc2) # Test that the players' keys are set # Player one forward key on: pos1 = shipOne.getPos() vel1 = shipOne.getVel() acc1 = shipOne.getAcc() messenger.send(Game.PLAYER_ONE_FORWARD_KEY) taskMgr.step() pos2 = shipOne.getPos() vel2 = shipOne.getVel() acc2 = shipOne.getAcc() self.failIf(pos1 == pos2) self.failIf(vel1 == vel2) self.failIf(acc1 == acc2) # Player one forward key off: acc1 = shipOne.getAcc() vel1 = shipOne.getVel() messenger.send(Game.PLAYER_ONE_FORWARD_KEY + "-up") taskMgr.step() acc2 = shipOne.getAcc() vel2 = shipOne.getVel() self.failIf(acc1 == acc2) self.failUnless(vel1 == vel2) # Player one rotate left key on: headingBefore = shipOne.heading messenger.send(Game.PLAYER_ONE_ROTATE_LEFT_KEY) taskMgr.step() headingAfter = shipOne.heading self.failIf(headingBefore == headingAfter) # Player one rotate left key off: headingBefore = shipOne.heading messenger.send(Game.PLAYER_ONE_ROTATE_LEFT_KEY + "-up") taskMgr.step() headingAfter = shipOne.heading self.failUnless(headingBefore == headingAfter) # Player one rotate right key on: headingBefore = shipOne.heading messenger.send(Game.PLAYER_ONE_ROTATE_RIGHT_KEY) taskMgr.step() headingAfter = shipOne.heading self.failIf(headingBefore == headingAfter) # Player one rotate right key off: headingBefore = shipOne.heading messenger.send(Game.PLAYER_ONE_ROTATE_RIGHT_KEY + "-up") taskMgr.step() headingAfter = shipOne.heading self.failUnless(headingBefore == headingAfter) # Player one shoot: bullets = self.game.getBullets() bulletsBefore = len(bullets[0]) messenger.send(Game.PLAYER_ONE_SHOOT) taskMgr.step() bulletsAfter = len(bullets[0]) self.failUnless(bulletsBefore < bulletsAfter) # Player two forward key on: pos1 = shipTwo.getPos() vel1 = shipTwo.getVel() acc1 = shipTwo.getAcc() messenger.send(Game.PLAYER_TWO_FORWARD_KEY) taskMgr.step() pos2 = shipTwo.getPos() vel2 = shipTwo.getVel() acc2 = shipTwo.getAcc() self.failIf(pos1 == pos2) self.failIf(vel1 == vel2) self.failIf(acc1 == acc2) # Player two forward key off: acc1 = shipTwo.getAcc() messenger.send(Game.PLAYER_TWO_FORWARD_KEY + "-up") taskMgr.step() acc2 = shipTwo.getAcc() self.failIf(acc1 == acc2) # Player two rotate left key on: headingBefore = shipTwo.heading messenger.send(Game.PLAYER_TWO_ROTATE_LEFT_KEY) taskMgr.step() headingAfter = shipTwo.heading self.failIf(headingBefore == headingAfter) # Player two rotate left key off: headingBefore = shipTwo.heading messenger.send(Game.PLAYER_TWO_ROTATE_LEFT_KEY + "-up") taskMgr.step() headingAfter = shipTwo.heading self.failUnless(headingBefore == headingAfter) # Player two rotate right key on: headingBefore = shipTwo.heading messenger.send(Game.PLAYER_TWO_ROTATE_RIGHT_KEY) taskMgr.step() headingAfter = shipTwo.heading self.failIf(headingBefore == headingAfter) # Player two rotate right key off: headingBefore = shipTwo.heading messenger.send(Game.PLAYER_TWO_ROTATE_RIGHT_KEY + "-up") taskMgr.step() headingAfter = shipTwo.heading self.failUnless(headingBefore == headingAfter) # Player two shoot: bullets = self.game.getBullets() bulletsBefore = len(bullets[1]) messenger.send(Game.PLAYER_TWO_SHOOT) taskMgr.step() bulletsAfter = len(bullets[1]) self.failUnless(bulletsBefore < bulletsAfter) # Check that the game is actually listening to events self.failUnless(self.game.isListening)
def testRegisterListeners(self): self.game.start() players = self.game.getPlayers() playerOne = players[0] self.game.registerListeners() playerOneMoveForwardOnEvent = createNamedEvent( playerOne.name, Event.PLAYER_MOVE_FORWARD_ON) ships = self.game.getShips() shipOne = ships[0] shipTwo = ships[1] # Test that the player can move the ship forward pos1 = shipOne.getPos() vel1 = shipOne.getVel() acc1 = shipOne.getAcc() messenger.send(playerOneMoveForwardOnEvent) taskMgr.step() pos2 = shipOne.getPos() vel2 = shipOne.getVel() acc2 = shipOne.getAcc() self.failIf(pos1 == pos2) self.failIf(vel1 == vel2) self.failIf(acc1 == acc2) # Test that the move forward off event is handled properly playerOneMoveForwardOffEvent = createNamedEvent( playerOne.name, Event.PLAYER_MOVE_FORWARD_OFF) acc1 = shipOne.getAcc() messenger.send(playerOneMoveForwardOffEvent) taskMgr.step() acc2 = shipOne.getAcc() self.failIf(acc1 == acc2) # Test that the players' keys are set # Player one forward key on: pos1 = shipOne.getPos() vel1 = shipOne.getVel() acc1 = shipOne.getAcc() messenger.send(Game.PLAYER_ONE_FORWARD_KEY) taskMgr.step() pos2 = shipOne.getPos() vel2 = shipOne.getVel() acc2 = shipOne.getAcc() self.failIf(pos1 == pos2) self.failIf(vel1 == vel2) self.failIf(acc1 == acc2) # Player one forward key off: acc1 = shipOne.getAcc() vel1 = shipOne.getVel() messenger.send(Game.PLAYER_ONE_FORWARD_KEY + "-up") taskMgr.step() acc2 = shipOne.getAcc() vel2 = shipOne.getVel() self.failIf(acc1 == acc2) self.failUnless(vel1 == vel2) # Player one rotate left key on: headingBefore = shipOne.heading messenger.send(Game.PLAYER_ONE_ROTATE_LEFT_KEY) taskMgr.step() headingAfter = shipOne.heading self.failIf(headingBefore == headingAfter) # Player one rotate left key off: headingBefore = shipOne.heading messenger.send(Game.PLAYER_ONE_ROTATE_LEFT_KEY + "-up") taskMgr.step() headingAfter = shipOne.heading self.failUnless(headingBefore == headingAfter) # Player one rotate right key on: headingBefore = shipOne.heading messenger.send(Game.PLAYER_ONE_ROTATE_RIGHT_KEY) taskMgr.step() headingAfter = shipOne.heading self.failIf(headingBefore == headingAfter) # Player one rotate right key off: headingBefore = shipOne.heading messenger.send(Game.PLAYER_ONE_ROTATE_RIGHT_KEY + "-up") taskMgr.step() headingAfter = shipOne.heading self.failUnless(headingBefore == headingAfter) # Player one shoot: bullets = self.game.getBullets() bulletsBefore = len(bullets[0]) messenger.send(Game.PLAYER_ONE_SHOOT) taskMgr.step() bulletsAfter = len(bullets[0]) self.failUnless(bulletsBefore < bulletsAfter) # Player two forward key on: pos1 = shipTwo.getPos() vel1 = shipTwo.getVel() acc1 = shipTwo.getAcc() messenger.send(Game.PLAYER_TWO_FORWARD_KEY) taskMgr.step() pos2 = shipTwo.getPos() vel2 = shipTwo.getVel() acc2 = shipTwo.getAcc() self.failIf(pos1 == pos2) self.failIf(vel1 == vel2) self.failIf(acc1 == acc2) # Player two forward key off: acc1 = shipTwo.getAcc() messenger.send(Game.PLAYER_TWO_FORWARD_KEY + "-up") taskMgr.step() acc2 = shipTwo.getAcc() self.failIf(acc1 == acc2) # Player two rotate left key on: headingBefore = shipTwo.heading messenger.send(Game.PLAYER_TWO_ROTATE_LEFT_KEY) taskMgr.step() headingAfter = shipTwo.heading self.failIf(headingBefore == headingAfter) # Player two rotate left key off: headingBefore = shipTwo.heading messenger.send(Game.PLAYER_TWO_ROTATE_LEFT_KEY + "-up") taskMgr.step() headingAfter = shipTwo.heading self.failUnless(headingBefore == headingAfter) # Player two rotate right key on: headingBefore = shipTwo.heading messenger.send(Game.PLAYER_TWO_ROTATE_RIGHT_KEY) taskMgr.step() headingAfter = shipTwo.heading self.failIf(headingBefore == headingAfter) # Player two rotate right key off: headingBefore = shipTwo.heading messenger.send(Game.PLAYER_TWO_ROTATE_RIGHT_KEY + "-up") taskMgr.step() headingAfter = shipTwo.heading self.failUnless(headingBefore == headingAfter) # Player two shoot: bullets = self.game.getBullets() bulletsBefore = len(bullets[1]) messenger.send(Game.PLAYER_TWO_SHOOT) taskMgr.step() bulletsAfter = len(bullets[1]) self.failUnless(bulletsBefore < bulletsAfter) # Check that the game is actually listening to events self.failUnless(self.game.isListening)