示例#1
0
        private void Awake()
        {
            PartyModel model = AmbitionApp.GetModel <PartyModel>();

            if (Map == null)
            {
                Map = model.LoadMap(transform.transform);
            }
            if (Map == null)
            {
                PrefabMap prefab = Array.Find(Maps, m => m.ID.ToLower() == model.Party.Faction.ToString().ToLower());
                if (prefab.Prefab == null)
                {
                    prefab = RNG.TakeRandom(Maps);
                }
                GameObject obj = Instantiate <GameObject>(prefab.Prefab, transform.transform);
                Map = obj.GetComponent <MapView>();
            }
            if (Map != null)
            {
                _rooms         = Map.GetComponentsInChildren <RoomView>();
                model.NumRooms = _rooms.Length;
                AmbitionApp.Subscribe <IncidentVO[]>(PartyMessages.SELECT_INCIDENTS, HandleIncidents);
                if (!string.IsNullOrEmpty(Map.Music.Name))
                {
                    AmbitionApp.SendMessage(AudioMessages.PLAY_MUSIC, Map.Music.Name);
                }
            }
        }