/// <summary> /// 飞升,参数等级 /// </summary> public PracticeData(int _start) { stratNum = _start; data = MainData.GetServerData(); propertyVal.Clear(); if (data.propertyValueDic.ContainsKey(ActorPropertyTag.HPLIMIT)) { propertyVal.Add(data.propertyValueDic[ActorPropertyTag.HPLIMIT]); } if (data.propertyValueDic.ContainsKey(ActorPropertyTag.DEFDOWN)) { propertyVal.Add(data.propertyValueDic[ActorPropertyTag.DEFDOWN]); } if (data.propertyValueDic.ContainsKey(ActorPropertyTag.CRI)) { propertyVal.Add(data.propertyValueDic[ActorPropertyTag.CRI]); } if (data.propertyValueDic.ContainsKey(ActorPropertyTag.TOUGH)) { propertyVal.Add(data.propertyValueDic[ActorPropertyTag.TOUGH]); } if (data.propertyValueDic.ContainsKey(ActorPropertyTag.HIT)) { propertyVal.Add(data.propertyValueDic[ActorPropertyTag.HIT]); } if (data.propertyValueDic.ContainsKey(ActorPropertyTag.DOD)) { propertyVal.Add(data.propertyValueDic[ActorPropertyTag.DOD]); } if (data.propertyValueDic.ContainsKey(ActorPropertyTag.ATKDOWN)) { propertyVal.Add(data.propertyValueDic[ActorPropertyTag.ATKDOWN]); } }
public static void SavePlayer(MainPlayerStatus mainPlayerStatus, PlayerMovement playerMovement) { BinaryFormatter formatter = new BinaryFormatter(); string path = Application.persistentDataPath + "/player.continue"; FileStream stream = new FileStream(path, FileMode.Create); MainPlayerData data = new MainPlayerData(mainPlayerStatus, playerMovement); formatter.Serialize(stream, data); stream.Close(); }
public void LoadPlayer() { MainPlayerData data = SaveSystem.LoadPlayer(); // MainPlayerStatus player = new MainPlayerStatus(); // PlayerMovement playerPosition = new PlayerMovement(); MainPlayerStatus mainPlayerStatus = player.GetComponent <MainPlayerStatus>(); PlayerMovement playerPosition = player.GetComponent <PlayerMovement>(); mainPlayerStatus.playerName = data.playerName; mainPlayerStatus.playerLevel = data.playerLevel; mainPlayerStatus.playerExperience = data.playerExperience; mainPlayerStatus.playerGold = data.playerGold; playerPosition.playerStepsLimit = data.playerStepsLimit; mainPlayerStatus.playerMaxHp = data.playerMaxHp; mainPlayerStatus.playerCurrentHp = data.playerCurrentHp; mainPlayerStatus.playerMaxMp = data.playerMaxMp; mainPlayerStatus.playerCurrentMp = data.playerCurrentMp; mainPlayerStatus.playerPhysicalDefense = data.playerPhysicalDefense; mainPlayerStatus.playerMagicalDefense = data.playerMagicalDefense; mainPlayerStatus.playerPhysicalAttack = data.playerPhysicalAttack; mainPlayerStatus.playerMagicalAttack = data.playerMagicalAttack; mainPlayerStatus.playerSpeed = data.playerSpeed; mainPlayerStatus.playerCriticalDamage = data.playerCriticalDamage; mainPlayerStatus.playerCriticalChance = data.playerCriticalChance; mainPlayerStatus.playerArmourHead = data.playerArmourHead; mainPlayerStatus.playerArmourBody = data.playerArmourBody; mainPlayerStatus.playerArmourHand = data.playerArmourHand; mainPlayerStatus.playerArmourFeet = data.playerArmourFeet; mainPlayerStatus.playerNecklace = data.playerNecklace; mainPlayerStatus.playerWristband = data.playerWristband; mainPlayerStatus.playerWeapon = data.playerWeapon; Vector3 position; position.x = data.playerPosition[0]; position.y = data.playerPosition[1]; position.z = data.playerPosition[2]; playerPosition.playerPosition.position = position; }
public static MainPlayerData LoadPlayer() { string path = Application.persistentDataPath + "/player.continue"; if (File.Exists(path)) { BinaryFormatter formatter = new BinaryFormatter(); FileStream stream = new FileStream(path, FileMode.Open); MainPlayerData data = formatter.Deserialize(stream) as MainPlayerData; stream.Close(); return(data); } else { Debug.LogError("Save file not found" + path); return(null); } }
/// <summary> /// 构造 by吴江 /// </summary> /// <param name="_actorData"></param> public MainPlayerInfo(pt_usr_info_b102 _info) { serverData = new MainPlayerData(_info); if (_info.cur_hp <= 0) //add by黄洪兴 角色有可能死亡状态登录 { isAlive = false; } List <int> defaultEquipList = RefData.defaultEquipList; foreach (var item in defaultEquipList) { EquipmentInfo eq = new EquipmentInfo(item, EquipmentBelongTo.EQUIP); if (defaultDictionary.ContainsKey(eq.Slot)) { GameSys.LogError(ConfigMng.Instance.GetUItext(213)); } defaultDictionary[eq.Slot] = eq; } ProcessServerData(serverData); loginTime = Time.time; }