public BattleInfoCollection LoadBattleFromDisk(int slot) { BattleInfoCollection v = new BattleInfoCollection(); v.SetIndex(slot); if (v.Exists()) { v = v.Load <BattleInfoCollection>(); } else { Debug.LogError("没有发现可以被载入的存储文件"); OnSaveFileNotExist(); } return(v); }
/// <summary> /// 载入事件数据,加载我方和敌方数据,并加载单位到战场上。 /// </summary> /// <param name="slot"></param> public void LoadBattleData(int slot) { Clear(); BattleInfoCollection data = record.LoadBattleFromDisk(slot); //Debug.Log(collect.Event.TurnEvent[0].SequenceName); ChapterDef = ResourceManager.GetChapterDef(data.CurrentTeam.Chapter); gameMode.LoadTileMap(data.MapID); players.PlayersLogic.Clear(); foreach (var v in data.CurrentTeamPlayerInfo) { RPGPlayer p = RPGPlayer.Create(v); players.PlayersLogic.Add(p.Logic); gameMode.BattlePlayer.AddUnitToMap(p, v.tileCoords); } }
public void SaveBattle(int teamIndex, int chapterId, int mapId, Warehouse ware, List <CharacterInfo> infos, EventInfoCollection eventInfo) { BattleInfoCollection battleInfo = new BattleInfoCollection(); battleInfo.Slot = -1; battleInfo.CurrentTeamIndex = teamIndex; battleInfo.MapID = mapId; ChapterRecordCollection.TeamCollection teamData = new ChapterRecordCollection.TeamCollection(); teamData.AfterStartSequence = true; teamData.Chapter = chapterId; teamData.Ware = ware; teamData.PlayersInfo = new PlayerInfoCollection(); foreach (var v in infos) { teamData.PlayersInfo.AddContent(v); } battleInfo.team[teamIndex] = teamData; battleInfo.Event = eventInfo; battleInfo.Save(); }