Advertisement
Guest User

Untitled

a guest
Jan 23rd, 2017
133
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.06 KB | None | 0 0
  1. import akka.actor._
  2.  
  3. case object PingM
  4. case object PongM
  5. case object StartM
  6. case object StopM
  7.  
  8.  
  9. class PlayerOne(secPlayer: ActorRef, limitTheGame:Int) extends Actor {
  10. var gameCounter = 0
  11.  
  12. def receive = {
  13. case StartM =>
  14. { gameCounter += 2; println("ping") }
  15. secPlayer ! PingM
  16.  
  17. case PongM =>
  18. { gameCounter += 2; println("ping") }
  19.  
  20. if (gameCounter > limitTheGame) {
  21. sender ! StopM
  22. println("Game ENDED - player one")
  23. context.stop(self)
  24. }
  25. else {
  26. sender ! PingM
  27. }
  28. }
  29. }
  30.  
  31. class PlayerTwo extends Actor {
  32. def receive = {
  33. case PingM =>
  34. println("pong")
  35. sender ! PongM
  36. case StopM =>
  37. println("Game ENDED - player two")
  38. context.stop(self)
  39. }
  40. }
  41.  
  42. object GameTest extends App {
  43. val system = ActorSystem("TenisEmulator")
  44.  
  45. val p2 = system.actorOf(Props[PlayerTwo], name = "pongPlayer")
  46. val p1 = system.actorOf(Props(new PlayerOne(p2,3)), name = "pingPlayer")
  47.  
  48. p1 ! StartM
  49. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement