public void Init() { MapMemo memo = Caretaker.Instance.Load <MapMemo>(); if (memo != null) { ArriveFloor = memo.ArriveFloor; } }
public MapInfo(MapMemo memo) { ID = memo.ID; Group = memo.Group; DungeonData.RootObject dungeonData = DungeonData.GetData(ID); NextFloor = dungeonData.NextFloor; MapBound = memo.MapBound; Start = memo.Start; Goal = memo.Goal; MapList = Utility.StringToVector2Int(memo.MapList); GrassList = Utility.StringToVector2Int(memo.GrassList); KeyList = Utility.StringToVector2Int(memo.KeyList); DoorList = Utility.StringToVector2Int(memo.DoorList); ExploredList = Utility.StringToVector2Int(memo.ExploredList); ExploredWallList = Utility.StringToVector2Int(memo.ExploredWallList); GuardList = Utility.StringToVector2Int(memo.GuardList); for (int i = 0; i < memo.RoomPositionList.Count; i++) { RoomPositionList.Add(Utility.StringToVector2Int(memo.RoomPositionList[i])); } foreach (KeyValuePair <string, int> item in memo.MoneyDic) { MoneyDic.Add(Utility.StringToVector2Int(item.Key), item.Value); } foreach (KeyValuePair <string, Event.TypeEnum> item in memo.ExploreEventDic) { Event @event = null; if (item.Value == Event.TypeEnum.Recover) { @event = new RecoverEvent1(); } else if (item.Value == Event.TypeEnum.Telepoet) { @event = new TeleportEvent1(); } ExploreEventDic.Add(Utility.StringToVector2Int(item.Key), @event); } foreach (KeyValuePair <string, Treasure> item in memo.TreasureDic) { TreasureDic.Add(Utility.StringToVector2Int(item.Key), item.Value); } }
public void SetFloorFromMemo() { if (_memo == null) { _memo = Caretaker.Instance.Load <MapMemo>(); _mapInfo = new MapInfo(_memo); } _playerPosition = _memo.PlayerPosition; ArriveFloor = _memo.ArriveFloor; if (MySceneManager.Instance.CurrentScene == MySceneManager.SceneType.Explore) { LoadingUI.Instance.Open(() => { DungeonPainter.Instance.Paint(_mapInfo); }); } else { SetFloor(); } AudioSystem.Instance.Play("Forest"); }
public void Write() { _playerPosition = Vector2Int.RoundToInt(_player.transform.position); _memo = new MapMemo(ArriveFloor, _mapInfo, _playerPosition); }