Exemplo n.º 1
0
    // Use this for initialization

    protected virtual void Start()
    {
        GameObject so = Resources.Load("Settings Object") as GameObject;
        GameObject op = Resources.Load("Object Pool") as GameObject;

        op          = Instantiate(op);
        objectPool  = op.GetComponent <ObjectPool>();
        menuButtons = new List <MenuButton>(FindObjectsOfType <MenuButton>());


        if (GameStorage.Exists(Application.persistentDataPath + SaveKey.PLAYERDATA_KEY))
        {
            currentSaveData = GameStorage.Load <PlayerSaveData>(Application.persistentDataPath + SaveKey.PLAYERDATA_KEY);
            Debug.Log(currentSaveData.getCompanionData().mySkills.Count);
            for (int i = 0; i < menuButtons.Count; i++)
            {
                menuButtons[i].NotifyThatPlayerHasSavedBefore();
            }
        }
        else
        {
            currentSaveData       = new PlayerSaveData(Application.persistentDataPath + SaveKey.PLAYERDATA_KEY);
            playerShouldBeTutored = true;
        }

        SceneNavigation.singleton.saveGameContent += SaveGameData;

        settingsObject = objectPool.registerObject <SettingsObject>(so);
        objectPool.activateObject(settingsObject);
    }
Exemplo n.º 2
0
    // ================================================================================================== //
    public void Load()
    {
        PlayerSaveData = Utils.ReadFromBinaryFile <PlayerSaveData>(Consts.SAVE_FILES_PATH + "/" + Consts.CURRENT_PLAYER + ".sav");

        // library
        Library.Instance.BuildLibrary();
    }
Exemplo n.º 3
0
 public void PlayerSetup()
 {
     data = LoadObjData();
     ObjSetup(data);
     HeldObjsMenuSetup();
     Debug.Log("attempting setup");
 }
Exemplo n.º 4
0
 public void LoadSaveData(PlayerSaveData data)
 {
     if (data.ActiveFollowerName != "None")
     {
         SetFollower(FollowerManager.Instance.GetFollowerByName(data.ActiveFollowerName));
     }
     CurrentHP = data.CurrentHP;
     CalculateMaxHP();
     Deaths        = data.DeathCount;
     ArtisanPoints = data.ArtisanPoints;
     CalculateInventorySpaces();
     try
     {
         if (data.EquippedItems.Count == 0)
         {
             return;
         }
         foreach (string s in data.EquippedItems)
         {
             Console.WriteLine("Trying to equip:" + s);
             if (s != null && s.Length > 1)
             {
                 Equip(Inventory.GetItems().FirstOrDefault(x => x.Key.Name == s).Key);
             }
         }
     }
     catch (Exception e)
     {
         Console.WriteLine(e.Message);
         Console.WriteLine(e.StackTrace);
     }
 }
Exemplo n.º 5
0
    //Function saving game data from PlayerSaveData
    public static void SaveData(PlayerSaveData playerSaveData)
    {
        FileStream      fs = new FileStream(path, FileMode.Create);
        BinaryFormatter bf = new BinaryFormatter();

        bf.Serialize(fs, playerSaveData);
        fs.Close();
    }
Exemplo n.º 6
0
    //从本地取到数据
    public string GetDataFromLocal(string hasKey)
    {
        //Debug.Log ("Request Loading " + hasKey);
        PlayerSaveData playersave = new PlayerSaveData();

        playersave = ReadData(hasKey);
        return(PlayerSaveDataText(playersave));
    }
Exemplo n.º 7
0
    //存到本地
    public void SaveToLocal(string dataText)
    {
        //Debug.Log ("Server received : " + dataText);
        PlayerSaveData playersave = new PlayerSaveData();

        playersave = GetSaveDataFromText(dataText);
        WriteData(playersave);
    }
Exemplo n.º 8
0
    public void LoadFromFile()
    {
        QuickSaveReader.Create(fileName)
        .Read <string>("File", (r) => { this.file = JsonUtility.FromJson <FileSaveData>(r); });

        QuickSaveReader.Create(fileName)
        .Read <string>("Player", (r) => { this.player = JsonUtility.FromJson <PlayerSaveData>(r); });
    }
Exemplo n.º 9
0
    public SaveLoader(PlayerSaveData playerSaveData)
    {
        //check for save
        //If it is exist -> Parse data to local Data
        //If not -> Create new one

        _playerSaveData = playerSaveData;
    }
Exemplo n.º 10
0
 private void SaveControllerMaps(Player player, PlayerSaveData playerSaveData)
 {
     foreach (ControllerMapSaveData current in playerSaveData.AllControllerMapSaveData)
     {
         string controllerMapPlayerPrefsKey = this.GetControllerMapPlayerPrefsKey(player, current);
         PlayerPrefs.SetString(controllerMapPlayerPrefsKey, current.map.ToXmlString());
     }
 }
Exemplo n.º 11
0
    public void LoadGameFromPath(string path)
    {
        PlayerSaveData saveData = SaveSystem.LoadGame(path);

        playerData.LoadPlayerData(saveData);
        inventory.LoadInventory(saveData);
        SceneManager.LoadScene(playerData.currentScene);
    }
Exemplo n.º 12
0
 private void SaveControllerMaps(Player player, PlayerSaveData playerSaveData)
 {
     foreach (ControllerMapSaveData saveData in playerSaveData.AllControllerMapSaveData)
     {
         string key = GetControllerMapPlayerPrefsKey(player, saveData);
         PlayerPrefs.SetString(key, saveData.map.ToXmlString()); // save the map to player prefs in XML format
     }
 }
Exemplo n.º 13
0
    // Saves Input Maps
    private void SaveInputMaps(ES2Writer writer)
    {
        PlayerSaveData inputData = ReInput.players.GetPlayer(0).GetSaveData(true);

        foreach (ControllerMapSaveData mapData in inputData.AllControllerMapSaveData)
        {
            writer.Write(mapData.map.ToXmlString(), mapData.controllerType.ToString());
        }
    }
Exemplo n.º 14
0
 void ObjSetup(PlayerSaveData playerData)
 {
     if (playerData != null)
     {
         Vector3 position = new Vector3(playerData.position[0], playerData.position[1], playerData.position[2]);
         gameObject.transform.position = position;
         gameObject.layer = playerData.layer;
     }
 }
Exemplo n.º 15
0
    public void Save()
    {
        BinaryFormatter binaryFormatter = new BinaryFormatter();
           FileStream file = File.Create(Application.persistentDataPath + "/playerInfo.dat");
           PlayerSaveData data = new PlayerSaveData();

           binaryFormatter.Serialize(file, data);
           file.Close();
    }
Exemplo n.º 16
0
    // Convert class instance to byte array
    public static byte [] ToBytes(PlayerSaveData data)
    {
        var formatter = new BinaryFormatter();

        using (var stream = new MemoryStream()) {
            formatter.Serialize(stream, data);
            return(stream.ToArray());
        }
    }
Exemplo n.º 17
0
 public void SetPlayerSaveData(PlayerSaveData playerSaveData)
 {
     this.PD_maxHitPoint   = playerSaveData.PD_maxHitPoint;
     this.PD_maxStunPoint  = playerSaveData.PD_maxStunPoint;
     this.PD_maxDecayPoint = playerSaveData.PD_maxDecayPoint;
     this.MAS_damageAmount = playerSaveData.MAS_damageAmount;
     this.MAS_stunAmount   = playerSaveData.MAS_stunAmount;
     this.PS_damage        = playerSaveData.PS_damage;
 }
Exemplo n.º 18
0
    public void Save()
    {
        BinaryFormatter binaryFormatter = new BinaryFormatter();
        FileStream      file            = File.Create(Application.persistentDataPath + "/playerInfo.dat");
        PlayerSaveData  data            = new PlayerSaveData();

        binaryFormatter.Serialize(file, data);
        file.Close();
    }
Exemplo n.º 19
0
    private void SetDataToPlayer(PlayerSaveData player, GameObject playerInGame)
    {
        if (playerInGame == null || player.hp == 0)
        {
            return;
        }
        playerInGame.GetComponent <VisibleScript>().SetVisible(player.isVisible);

        if (SceneManager.GetActiveScene().name == allData.game.level)
        {
            playerInGame.transform.position = new Vector2(player.posX, player.posY);
        }
        var gamePlayerInfo = playerInGame.GetComponent <UnityCharacter>();

        gamePlayerInfo.Character.Hp    = (uint)player.hp;
        gamePlayerInfo.Character.MaxHp = (uint)player.maxHp;
        if (gamePlayerInfo.Character.GetType() == typeof(Magician))
        {
            (gamePlayerInfo.Character as Magician).Mana    = (uint)player.mana;
            (gamePlayerInfo.Character as Magician).MaxMana = (uint)player.maxMana;
        }
        gamePlayerInfo.Character.Inventory.Artifacts = new List <Artifact>();
        for (int i = 0; i < player.inventory.Length; i++)
        {
            gamePlayerInfo.Character.Inventory.AddArtifact(SaveDataToArtifact(player.inventory[i]));
        }
        if (gamePlayerInfo.Character.GetType() == typeof(Magician))
        {
            (gamePlayerInfo.Character as Magician).SpellsList.Spells = new List <Spell>();
            for (int i = 0; i < player.spellbook.Length; i++)
            {
                (gamePlayerInfo.Character as Magician).SpellsList.Spells.Add(SaveDataToSpell(player.spellbook[i]));
            }
        }
        gamePlayerInfo.isArifactSelected = false;
        gamePlayerInfo.isSpellSelected   = false;
        gamePlayerInfo.selectedArtifact  = null;
        gamePlayerInfo.selectedSpell     = null;

        gamePlayerInfo.selectedArtifactIndex = 0;
        gamePlayerInfo.selectedSpellIndex    = 0;
        gamePlayerInfo.Character.IsTalkable  = player.isTalkable;
        gamePlayerInfo.Character.IsMovable   = player.isMovable;
        gamePlayerInfo.satellites            = new List <UnityCharacter>();
        for (int i = 0; i < player.satelliteGameNames.Length; i++)
        {
            if (GameObject.Find(player.satelliteGameNames[i]) != null)
            {
                gamePlayerInfo.satellites.Add(GameObject.Find(player.satelliteGameNames[i]).GetComponent <UnityCharacter>());
            }
        }
        gamePlayerInfo.Character.Condition = (Character.ConditionType)Enum.Parse(typeof(Character.ConditionType), player.condition, true);
        if (gamePlayerInfo.Character.Condition == Character.ConditionType.dead)
        {
            gamePlayerInfo.GetComponent <VisibleScript>().SetVisible(false);
        }
    }
Exemplo n.º 20
0
    public void SavePlayerData(PlayerStatsController statsController)
    {
        PlayerSaveData  playerData = new PlayerSaveData(statsController);
        BinaryFormatter formatter  = new BinaryFormatter();
        Stream          stream     = new FileStream(string.Concat(Application.persistentDataPath, playerDataSavePath), FileMode.Create, FileAccess.Write);

        formatter.Serialize(stream, playerData);
        stream.Close();
    }
Exemplo n.º 21
0
    public object CaptureState()
    {
        var saveData = new PlayerSaveData()
        {
            position = new float[] { transform.position.x, transform.position.y },
            pieces   = GetComponent <PieceParty>().Pieces.Select(p => p.GetSaveData()).ToList()
        };

        return(saveData);
    }
Exemplo n.º 22
0
    // Start is called before the first frame update
    void Start()
    {
        initialsInputField = GameObject.Find("InitialsInputField").transform;
        initialsInputField.gameObject.SetActive(false);

        scoreChecked = false;

        playerData      = PlayerDataSaver.LoadPlayerData();
        mostRecentScore = playerData.recentScore;
    }
Exemplo n.º 23
0
 public void LoadInventory(PlayerSaveData saveData)
 {
     itemList.Clear();
     for (int i = 0; i < saveData.items.Count; i++)
     {
         Item          item     = itemDB.GetItem(saveData.items[i].id);
         InventorySlot itemSlot = new InventorySlot(saveData.items[i].id, item, saveData.items[i].amount);
         itemList.Add(itemSlot);
     }
 }
Exemplo n.º 24
0
    public static void SavePlayer(Player player)
    {
        var    serializer = new XmlSerializer(typeof(PlayerSaveData));
        string path       = Application.persistentDataPath + "/player.xml";
        var    stream     = new FileStream(path, FileMode.Create);
        var    data       = new PlayerSaveData(player);

        serializer.Serialize(stream, data);
        stream.Close();
    }
Exemplo n.º 25
0
    public object CaptureState()
    {
        var saveData = new PlayerSaveData()
        {
            position = new float [] { transform.position.x, transform.position.y },
            //enemigos = GetComponent<Grupo>().enemigos.Select(p => p.GetSaveData()).ToList()
        };

        return(saveData);
    }
    public void SaveCharacter(Player player)
    {
        BinaryFormatter bf     = new BinaryFormatter();
        FileStream      stream = new FileStream(savePath + player.entityName + ".sav", FileMode.Create);

        PlayerSaveData data = new PlayerSaveData(player);

        bf.Serialize(stream, data);
        stream.Close();
    }
Exemplo n.º 27
0
    //public GameObject player;

    public static void saveGame(CharacterStats PlayerStats)
    {
        BinaryFormatter bf   = new BinaryFormatter();
        FileStream      file = File.Create(Application.persistentDataPath + "/playerInfo.dat");

        PlayerSaveData data = new PlayerSaveData(PlayerStats);

        bf.Serialize(file, data);
        file.Close();
    }
Exemplo n.º 28
0
    public static void SavePlayer(SceneControll sceneController)
    {
        string          path      = Application.persistentDataPath + "/saveFile.zss";
        BinaryFormatter formatter = new BinaryFormatter();
        FileStream      stream    = new FileStream(path, FileMode.Create);
        PlayerSaveData  data      = new PlayerSaveData(sceneController);

        formatter.Serialize(stream, data);
        stream.Close();
    }
Exemplo n.º 29
0
    //接受数据并应用
    public void ReceiveDataAndApply(string datatext, CharacterSystem character)
    {
        //Debug.Log ("Received From Server " + datatext);

        PlayerSaveData playersave = new PlayerSaveData();

        playersave = GetSaveDataFromText(datatext);

        ApplyPlayerData(playersave, character);
    }
Exemplo n.º 30
0
    void printdData(PlayerInformation data)
    {
        /*
         * GameObject textObject = new GameObject("Text");
         * textObject.transform.parent = panel.transform;
         * Text text = textObject.AddComponent<Text>();
         *
         * text.text = data.name + "\n" + "Score: " + data.score;
         * text.color = Color.black;
         *
         * Font ArialFont = (Font)Resources.GetBuiltinResource(typeof(Font), "Arial.ttf");
         * text.font = ArialFont;
         * text.material = ArialFont.material;
         * text.alignment = TextAnchor.MiddleCenter;
         */

        GameObject     buttonObject   = new GameObject("Button");
        CanvasRenderer canvasRenderer = buttonObject.AddComponent <CanvasRenderer>();
        Image          image          = buttonObject.AddComponent <Image>();
        Button         button         = buttonObject.AddComponent <Button>();

        buttonObject.transform.parent = panel.transform;

        VerticalLayoutGroup layout = buttonObject.AddComponent <VerticalLayoutGroup>();

        layout.childControlWidth  = true;
        layout.childControlHeight = true;

        layout.childForceExpandHeight = true;
        layout.childForceExpandWidth  = true;

        ColorBlock cb = button.colors;

        cb.selectedColor = Color.yellow;
        button.colors    = cb;
        PlayerSaveData saveFile = buttonObject.AddComponent <PlayerSaveData>();

        saveFile.AddData(data);

        button.onClick.AddListener(saveFile.OnClickLeaderBoard);

        GameObject textObject = new GameObject("Text");

        textObject.transform.parent = buttonObject.transform;
        Text text = textObject.AddComponent <Text>();

        text.text  = data.name + "\n" + "Score: " + data.score;
        text.color = Color.black;

        Font ArialFont = (Font)Resources.GetBuiltinResource(typeof(Font), "Arial.ttf");

        text.font      = ArialFont;
        text.material  = ArialFont.material;
        text.alignment = TextAnchor.MiddleCenter;
    }
Exemplo n.º 31
0
    // Convert byte array to class instance
    public static PlayerSaveData FromBytes(byte [] data)
    {
        using (var stream = new MemoryStream()) {
            var formatter = new BinaryFormatter();
            stream.Write(data, 0, data.Length);
            stream.Seek(0, SeekOrigin.Begin);

            PlayerSaveData block = (PlayerSaveData)formatter.Deserialize(stream);
            return(block);
        }
    }
Exemplo n.º 32
0
    public static void Save(int num)
    {
        if (num > MAX_SLOTS || num < 0)
            print ("Save file number not in range");
        else {
            String fileName = Application.persistentDataPath + "/ComaPlayerData" + num.ToString () + ".dat";
            BinaryFormatter bf = new BinaryFormatter ();
            FileStream file;
            file = File.Open (fileName, FileMode.Open);

            PlayerSaveData data = new PlayerSaveData();
            data.level = slHandler.currLevel;
            data.itemList = Angel.inventory.ToArray();
            bf.Serialize (file, data);
            file.Close ();
        }
    }
Exemplo n.º 33
0
    public void SavePlayer(CharacterSystem character)
    {
        if (UnitZ.gameManager == null || character == null)
            return;

        PlayersRegister (UnitZ.gameManager.UserID);
        string hasKey = UnitZ.gameManager.UserID;
        PlayerSaveData playersave = new PlayerSaveData ();

        playersave.UID = hasKey;
        playersave.PlayerName = UnitZ.gameManager.UserName;
        playersave.ItemData = character.inventory.GetItemDataText ();
        playersave.EquipData = character.inventory.GenStickerTextData ();
        playersave.FPSItemIndex = character.inventory.GetCollectorFPSindex ();
        playersave.Position = character.transform.position.x + "," + character.transform.position.y + "," + character.transform.position.z;
        playersave.LevelName = Application.loadedLevelName;
        playersave.Health = character.HP;

        CharacterLiving living = character.GetComponent<CharacterLiving> ();
        if (living) {
            playersave.Food = living.Hungry;
            playersave.Water = living.Water;
        }

        if ((!Network.isServer && !Network.isClient) || Network.isServer) {
            WriteData (playersave);
        } else {
            if (networkViewer)
                networkViewer.RPC ("SaveToServer", RPCMode.Server, PlayerSaveDataText (playersave));
        }
    }
Exemplo n.º 34
0
 public void RequestLoadFromServer(string hasKey, NetworkMessageInfo info)
 {
     //Debug.Log ("Request Loading " + hasKey);
     PlayerSaveData playersave = new PlayerSaveData ();
     playersave = ReadData (hasKey);
     if (networkViewer)
         networkViewer.RPC ("ReceiveFromServer", info.sender, PlayerSaveDataText (playersave));
 }
Exemplo n.º 35
0
    public void ReceiveFromServer(string datatext)
    {
        //Debug.Log ("Received From Server " + datatext);

        PlayerSaveData playersave = new PlayerSaveData ();
        playersave = GetSaveDataFromText (datatext);

        ApplyPlayerData (playersave);
    }
Exemplo n.º 36
0
    public void ReceiveDataAndApply(string datatext, CharacterSystem character)
    {
        //Debug.Log ("Received From Server " + datatext);

        PlayerSaveData playersave = new PlayerSaveData ();
        playersave = GetSaveDataFromText (datatext);

        ApplyPlayerData (playersave, character);
    }
 private void SaveControllerMaps(Player player, PlayerSaveData playerSaveData)
 {
     foreach (ControllerMapSaveData current in playerSaveData.AllControllerMapSaveData)
     {
         string controllerMapPlayerPrefsKey = this.GetControllerMapPlayerPrefsKey(player, current);
         PlayerPrefs.SetString(controllerMapPlayerPrefsKey, current.map.ToXmlString());
     }
 }
Exemplo n.º 38
0
	void Awake()
    {
        if (reference == null)
        {
            DontDestroyOnLoad(gameObject);
            reference = this;
			Debug.Log ("player save data init");
        }
        else if (reference != this)
        {
            Destroy(gameObject);
        }
    }
 private void SaveInputBehaviors(Player player, PlayerSaveData playerSaveData) {
     if(player == null) return;
     InputBehavior[] inputBehaviors = playerSaveData.inputBehaviors;
     for(int i = 0; i < inputBehaviors.Length; i++) {
         SaveInputBehaviorNow(player, inputBehaviors[i]);
     }
 }
Exemplo n.º 40
0
    public void DeleteSave(string userID,string userName)
    {
        if (userID == "")
            return;

        PlayersRegister (userID);
        string hasKey = userID;
        PlayerSaveData playersave = new PlayerSaveData ();
        playersave.UID = hasKey;
        playersave.PlayerName = userName;
        playersave.ItemData = "";
        playersave.EquipData = "";
        playersave.FPSItemIndex = 0;
        playersave.Position = "";
        playersave.LevelName = "";
        playersave.Food = 0;
        playersave.Water = 0;
        playersave.Health = 0;

        if ((!Network.isServer && !Network.isClient) || Network.isServer) {
            WriteData (playersave);
        } else {
            if (networkViewer)
                networkViewer.RPC ("SaveToServer", RPCMode.Server, PlayerSaveDataText (playersave));
        }
    }
Exemplo n.º 41
0
 void ApplyPlayerData(PlayerSaveData playersave)
 {
     ApplyPlayerData (playersave, MainCharacter);
 }
Exemplo n.º 42
0
 public void SaveToServer(string dataText)
 {
     //Debug.Log ("Server received : " + dataText);
     PlayerSaveData playersave = new PlayerSaveData ();
     playersave = GetSaveDataFromText (dataText);
     WriteData (playersave);
 }
Exemplo n.º 43
0
    /// <summary>
    /// Load Player from PlayerSave
    /// </summary>
    /// <param name="p">PlayerSave</param>
    private void LoadPlayer(PlayerSaveData p)
    {
        // Player Set Parameters
        Player.m_Player.SetPlayerParams(

            //Health
            p.health,
            // Max Health
            p.maxHealth,
            // Run Multiplier
            p.runMulti,
            // Jump Multiplier
            p.jumpMulti,
            // Gravity
            p.gravity,
            // Rotation Damping
            p.rotationDamping,
            // Chakra
            p.chakra
        );

        // Player Set Transform
        Player.m_Player.SetPlayerTransform(
            // Position
            new Vector3(p.posX, p.posY, p.posZ),
            //Rotation
            new Vector3(p.rotX, p.rotY, p.rotZ)
        );
    }
Exemplo n.º 44
0
    public void SavePlayerData()
    {
        var data = new PlayerSaveData(_Pos, _MaxHP, _HP,
            _MinAttackPower, _MaxAttackPower, _CriticalProbability, _MinCriAttackPower, _MaxCriAttackPower,
            _Speed, _KillCount, _TraveledDungeonCount, _CachedTransform.localScale.x, _IsDead);

        SaveLoad.SaveData("PlayerSaveData", data);
    }
Exemplo n.º 45
0
 public void WriteData(PlayerSaveData playersave)
 {
     string hasKey = playersave.UID + "_" + Application.loadedLevelName + "_" + playersave.PlayerName;
     //Debug.Log("SAVE : HAS KEY "+hasKey);
     PlayerPrefs.SetString ("PLAYER_" + hasKey, playersave.UID);
     PlayerPrefs.SetString ("NAME_" + hasKey, playersave.PlayerName);
     PlayerPrefs.SetString ("ITEM_" + hasKey, playersave.ItemData);
     PlayerPrefs.SetString ("EQUIP_" + hasKey, playersave.EquipData);
     PlayerPrefs.SetInt ("FPSINDEX" + hasKey, playersave.FPSItemIndex);
     PlayerPrefs.SetString ("POS" + hasKey, playersave.Position);
     PlayerPrefs.SetString ("LEVELNAME" + hasKey, playersave.LevelName);
     PlayerPrefs.SetInt ("FOOD" + hasKey, playersave.Food);
     PlayerPrefs.SetInt ("WATER" + hasKey, playersave.Water);
     PlayerPrefs.SetInt ("HEALTH" + hasKey, playersave.Health);
     //Debug.Log ("Write Data " + playersave.UID);
     //Debug.Log (PlayerSaveDataText (playersave));
 }
Exemplo n.º 46
0
    public PlayerSaveData GetSaveDataFromText(string dataText)
    {
        string[] raw = dataText.Split ("^" [0]);
        PlayerSaveData playersave = new PlayerSaveData ();
        playersave.UID = raw [0];
        playersave.PlayerName = raw [1];
        playersave.ItemData = raw [2];
        playersave.EquipData = raw [3];
        int.TryParse (raw [4], out playersave.FPSItemIndex);
        playersave.Position = raw [5];
        playersave.LevelName = raw [6];
        int.TryParse (raw [7], out playersave.Food);
        int.TryParse (raw [8], out playersave.Water);
        int.TryParse (raw [9], out playersave.Health);

        return playersave;
    }
Exemplo n.º 47
0
    void ApplyPlayerData(PlayerSaveData playersave, CharacterSystem character)
    {
        if (character && character.inventory) {
            //Debug.Log ("Applying ");
            //Debug.Log ("with " + PlayerSaveDataText (playersave));

            character.inventory.SetItemsFromText (playersave.ItemData);
            character.inventory.UpdateOtherInventory (playersave.EquipData);
            if (character.inventory.Items.Count > playersave.FPSItemIndex)
                character.inventory.EquipItemByCollector (character.inventory.Items [playersave.FPSItemIndex]);
            string[] positionraw = playersave.Position.Split ("," [0]);
            if (positionraw.Length > 2) {
                Vector3 position = Vector3.zero;
                float.TryParse (positionraw [0], out position.x);
                float.TryParse (positionraw [1], out position.y);
                float.TryParse (positionraw [2], out position.z);
                character.transform.position = position;
            }

            character.HP = playersave.Health;
            CharacterLiving living = character.GetComponent<CharacterLiving> ();
            if (living) {
                living.Hungry = playersave.Food;
                living.Water = playersave.Water;
            }
            // if new save, all parameter must be set by default.
            if (playersave.Food <= 0 && playersave.Water <= 0 && playersave.Health <= 0) {
                character.HP = character.HPmax;
                if (living) {
                    living.Hungry = living.HungryMax;
                    living.Water = living.WaterMax;
                }
            }

            character.InitializeData ();
        }
    }
Exemplo n.º 48
0
    public void InstantiateCharacter(CharacterSystem character, string hasKey)
    {
        Debug.Log ("Instantiat Character save");
        if (character == null)
            return;

        MainCharacter = character;
        if ((!Network.isServer && !Network.isClient) || Network.isServer) {
            PlayerSaveData playersave = new PlayerSaveData ();
            playersave = ReadData (hasKey);

            // Apply data to host
            ApplyPlayerData (playersave);

            // apply data to clients
            if (Network.isServer) {
                if (MainCharacter.networkViewer)
                    MainCharacter.networkViewer.RPC ("ApplyData", RPCMode.Others, PlayerSaveDataText (playersave));
            }
        }

        MainCharacter = null;
    }
 private void SaveControllerMaps(Player player, PlayerSaveData playerSaveData) {
     foreach(ControllerMapSaveData saveData in playerSaveData.AllControllerMapSaveData) {
         string key = GetControllerMapPlayerPrefsKey(player, saveData);
         PlayerPrefs.SetString(key, saveData.map.ToXmlString()); // save the map to player prefs in XML format
     }
 }
Exemplo n.º 50
0
    public void LoadPlayer(CharacterSystem character)
    {
        if (UnitZ.gameManager == null || character == null)
            return;

        MainCharacter = character;
        string hasKey = UnitZ.gameManager.UserID + "_" + Application.loadedLevelName + "_" + UnitZ.gameManager.UserName;
        //Debug.Log("LOAD : HAS KEY "+hasKey);
        if ((!Network.isServer && !Network.isClient) || Network.isServer) {
            PlayerSaveData playersave = new PlayerSaveData ();
            playersave = ReadData (hasKey);
            ApplyPlayerData (playersave);
        } else {
            if (networkViewer)
                networkViewer.RPC ("RequestLoadFromServer", RPCMode.Server, hasKey);
        }
    }
Exemplo n.º 51
0
 /// <summary>
 /// GameSaveData Constructor
 /// </summary>
 public GameStateData()
 {
     playerSave = new PlayerSaveData();
     cameraSave = new CameraSaveData();
     levelState = Level.m_Level.GetLevelState();
     enemyState = EnemyStateControl.m_EnemyStateControl.EnemyState();
     npcState = NPCStateControl.m_NPCStateControl.NPCState();
 }
Exemplo n.º 52
0
 public string PlayerSaveDataText(PlayerSaveData playersave)
 {
     return playersave.UID +
         "^" + playersave.PlayerName +
         "^" + playersave.ItemData +
         "^" + playersave.EquipData +
         "^" + playersave.FPSItemIndex +
         "^" + playersave.Position +
         "^" + playersave.LevelName +
         "^" + playersave.Food +
         "^" + playersave.Water +
         "^" + playersave.Health;
 }
Exemplo n.º 53
0
 public PlayerSaveData ReadData(string hasKey)
 {
     PlayerSaveData playersave = new PlayerSaveData ();
     playersave.UID = PlayerPrefs.GetString ("PLAYER_" + hasKey);
     playersave.PlayerName = PlayerPrefs.GetString ("NAME_" + hasKey);
     playersave.ItemData = PlayerPrefs.GetString ("ITEM_" + hasKey);
     playersave.EquipData = PlayerPrefs.GetString ("EQUIP_" + hasKey);
     playersave.FPSItemIndex = PlayerPrefs.GetInt ("FPSINDEX" + hasKey);
     playersave.Position = PlayerPrefs.GetString ("POS" + hasKey);
     playersave.LevelName = PlayerPrefs.GetString ("LEVELNAME" + hasKey);
     playersave.Food = PlayerPrefs.GetInt ("FOOD" + hasKey);
     playersave.Water = PlayerPrefs.GetInt ("WATER" + hasKey);
     playersave.Health = PlayerPrefs.GetInt ("HEALTH" + hasKey);
     return playersave;
 }
Exemplo n.º 54
0
    void ApplySaveData(PlayerSaveData data)
    {
        _Pos = data.pos;
        _MaxHP = data.maxHP;
        _HP = data.hp;
        _Speed = data.speed;
        _KillCount = data.killCount;
        _TraveledDungeonCount = data.traveledDungeonCount;
        _MinAttackPower = data.minAttackPower;
        _MaxAttackPower = data.maxAttackPower;
        _MinCriAttackPower = data.minCriAttackPower;
        _MaxCriAttackPower = data.maxCriAttackPower;
        _CriticalProbability = data.criticalProbability;

        InvalidateHPBar();

        _CachedTransform.position = _Pos.vector;
        _CachedTransform.localScale = new Vector3(data.scaleX, 1, 1);

        _CachedMainCamTransform.position = new Vector3(_CachedTransform.position.x, _CachedTransform.position.y, _CachedMainCamTransform.position.z);

        _IsDead = data.isDead;

        TileManager.Instance.GetTile(_Pos).SetState(TileState.PLAYER, false);

    }