// -------------------------------------------------------------------------------------------------------------------------------------------------- // Convierte el array de bytes de GameState a un objeto GameState (Deserializa) // -------------------------------------------------------------------------------------------------------------------------------------------------- public static cCloudGameState DeserializeGameStateByteArray(byte[] cloudGameStateByteArray) { MemoryStream memoryStream = new MemoryStream(cloudGameStateByteArray); BinaryFormatter deserializer = new BinaryFormatter(); cCloudGameState result = (cCloudGameState)deserializer.Deserialize(memoryStream); return(result); }
// -------------------------------------------------------------------------------------------------------------------------------------------------- // Convierte el objeto GameState en un array de Bytes para ser enviado a la nube (Serializa)(GoogleServices) // -------------------------------------------------------------------------------------------------------------------------------------------------- public static byte[] SerializeGameState(cCloudGameState cloudGameState) { byte[] serializedData; MemoryStream memoryStream = new MemoryStream(); BinaryFormatter serializer = new BinaryFormatter(); serializer.Serialize(memoryStream, cloudGameState); serializedData = memoryStream.GetBuffer(); return(serializedData); }
public static void InitializeConnectivity() { InitiliazeCloudServices(); // 1) InAppPurchase --> lee IAP_XML e inicializa Soomla EIAP = new cIAP("iap_items"); // 2) CloudGameState --> Para guardar el estado del juego (nº monedas, objetos comprados) ECloudGameState = new cCloudGameState(); // 3) Social --> Logros, rankings... ESocial = new cSocial(); // falta iniciar sesion SocialAuthenticate }
public void drawKappaItemsTest() { GUILayout.BeginArea(new Rect(10, 200, 200, 250)); GUILayout.BeginVertical("box"); GUILayout.Label("Showing Items TESTING"); if (GUILayout.Button("Fill cloud Data")) { ConnectivityManager.FillGameState(); aux_byteArray = ConnectivityManager.SerializeGameState(ConnectivityManager.ECloudGameState); } if (GUILayout.Button("Deserialize cloud Data")) { gameState = ConnectivityManager.DeserializeGameStateByteArray(aux_byteArray); addDebugMessage("total_mangos: " + gameState.total_mangos); addDebugMessage("total_meters: " + gameState.total_meters); addDebugMessage("total_frogs: " + gameState.total_frogs); addDebugMessage("total_cocktails: " + gameState.total_cocktails); addDebugMessage("object[1]: " + gameState.list_CloudItems[1].local_id); /* * List<cUI_Item> aux = ShopManager.Instance.UI_List_All_Items; * for (int i = 0; i < aux.Count; ++i) * { * Debug.Log("Loaded item: " + aux[i].name); * }*/ } if (GUILayout.Button("Save Game2Cloud")) { ConnectivityManager.SaveCurrentGameState(); } /* * if (GUILayout.Button("Show surfboard")) * { * InventoryManager.Instance.setKappaItemVisibleByName("prop_surfboard", true); * } * GUILayout.Space(5); * * if (GUILayout.Button("Hide surfboard")) * { * InventoryManager.Instance.setKappaItemVisibleByName("prop_surfboard", false); * } * * if (GUILayout.Button("Enable visualSet")) * { * GameLogicManager.Instance.EnableKappaVisualData(); * } * * if (GUILayout.Button("Disable visualSet")) * { * GameLogicManager.Instance.DisableKappaVisualData(); * } * * if (GUILayout.Button("List items")) * { * List<cUI_Item> aux = ShopManager.Instance.UI_List_All_Items; * for (int i = 0; i < aux.Count; ++i) * { * Debug.Log("Loaded item: " + aux[i].name); * } * } */ GUILayout.Space(5); GUILayout.EndVertical(); GUILayout.EndArea(); }