PutFlagHandler.cs 1021 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. using UnityEngine;
  2. using System.Collections;
  3. using System.Collections.Generic;
  4. using Sfs2X.Entities.Data;
  5. public class PutFlagHandler : BAHandler
  6. {
  7. public PutFlagHandler(BARoom room):base(room){}
  8. public override void HandleRequest (BAServer server, ISFSObject msg, int sender, int timeStamp)
  9. {
  10. ISFSObject data = msg.GetSFSObject (Message.LABEL_DATA);
  11. if(data.ContainsKey("s"))
  12. {
  13. if(!room.IsMyUserId(sender))
  14. {
  15. int userId = data.GetInt("u");
  16. int craftId = data.GetInt ("i");
  17. int teamId = data.GetInt("t");
  18. int x = data.GetInt("x");
  19. int y = data.GetInt("y");
  20. room.AttempPutFlag (userId, craftId, teamId, x, y);
  21. }
  22. server.RoomHandleResponse (msg);
  23. }
  24. else if(room.IsHost())
  25. {
  26. int userId = data.GetInt("u");
  27. int craftId = data.GetInt ("i");
  28. int teamId = data.GetInt("t");
  29. int x = data.GetInt("x");
  30. int y = data.GetInt("y");
  31. if(room.AttempPutFlag(userId, craftId, teamId, x, y))
  32. {
  33. data.PutBool ("s", true);
  34. server.Send(msg);
  35. }
  36. }
  37. }
  38. }