DatabaseManager.cs 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. using System;
  2. using System.Collections;
  3. using System.Collections.Generic;
  4. using Sfs2X.Core;
  5. using Sfs2X.Entities.Data;
  6. using Sfs2X.Requests;
  7. using UnityEngine;
  8. public class DatabaseManager
  9. {
  10. private static string DatabaseIDLabel = "D";
  11. private static string LimitLabel = "L";
  12. private static string ResultLabel = "R";
  13. private static GardenSmartFox GardenSmartFox;
  14. public static Action<ISFSArray> OnReceiveRoomData;
  15. public DatabaseManager(GardenSmartFox smartFox)
  16. {
  17. GardenSmartFox = smartFox;
  18. smartFox.ExtensionManager.BaseSFSExtension.Instances.Add(this);
  19. }
  20. public static void GetRoomList(int startID)
  21. {
  22. SFSObject parameter = new SFSObject();
  23. parameter.PutInt(DatabaseIDLabel, DatabaseID.RoomData.GetHashCode());
  24. parameter.PutInt(LimitLabel, startID);
  25. GardenSmartFox.SmartFox.Send(new ExtensionRequest(RequestID.Database.GetHashString(), parameter));
  26. }
  27. public void RoomData(BaseEvent baseEvent)
  28. {
  29. //DebugManager.PrintKeysAndValuesOfBaseEvent("PlazaRoomData", baseEvent);
  30. SFSObject sfsObject = (SFSObject) baseEvent.Params["params"];
  31. OnReceiveRoomData.Invoke(sfsObject.GetSFSArray(ResultLabel));
  32. }
  33. }