GetFlagHandler.cs 805 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. using UnityEngine;
  2. using System.Collections;
  3. using System.Collections.Generic;
  4. using Sfs2X.Entities.Data;
  5. public class GetFlagHandler : BAHandler
  6. {
  7. public GetFlagHandler(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. room.AttempGetFlag (userId, craftId);
  18. }
  19. server.RoomHandleResponse (msg);
  20. }
  21. else if(room.IsHost())
  22. {
  23. int userId = data.GetInt("u");
  24. int craftId = data.GetInt ("i");
  25. if(room.AttempGetFlag(userId, craftId))
  26. {
  27. data.PutBool("s", true);
  28. server.Send(msg);
  29. }
  30. }
  31. }
  32. }