public override IEnumerator OnLoad(Request request) { world = request.Get <App.Model.Master.MWorld>("world"); this.saveRequest = request; title.text = world.build_name; yield return(this.StartCoroutine(base.OnLoad(request))); }
/* * /// <summary> * /// 点击州府县,进入州府县场景 * /// </summary> * /// <param name="index">州府县索引</param> * public override void OnClickTile(int index){ * //地图信息 * App.Model.Master.MBaseMap topMapMaster = BaseMapCacher.Instance.Get(mBaseMap.MapId); * //根据索引获取所点击的州府县坐标 * Vector2 coordinate = topMapMaster.GetCoordinateFromIndex(index); * //根据州府县坐标获取州府县 * App.Model.Master.MWorld tile = System.Array.Find(mBaseMap.Tiles, _=>_.x == coordinate.x && _.y == coordinate.y) as App.Model.Master.MWorld; * OnClickTile(tile); * }*/ public override void OnClickTile(App.Model.MTile tile) { App.Model.Master.MWorld world = tile as App.Model.Master.MWorld; if (world != null) { Request req = Request.Create("world", world); App.Util.SceneManager.LoadScene(App.Util.SceneManager.Scenes.Stage.ToString(), req); //App.Util.SceneManager.LoadScene( App.Util.SceneManager.Scenes.Area.ToString(), req ); } }
/*public override void CameraTo(int id){ * App.Model.Master.MWorld mWorld = System.Array.Find(App.Util.Global.worlds, w=>w.id==id); * vBaseMap.MoveToPosition(mWorld.x, mWorld.y); * base.CameraTo(id); * }*/ public void OnClickTutorialTile() { App.Model.Master.MWorld tile = System.Array.Find(App.Util.Global.worlds, w => w.id == Global.Constant.tutorial_world_id); OnClickTile(tile); }
protected override void InitMap() { App.Model.Master.MBattlefield battlefieldMaster = App.Util.Cacher.BattlefieldCacher.Instance.Get(battlefieldId); maxBout = battlefieldMaster.max_bout; title.text = battlefieldMaster.name; mBaseMap = new MBaseMap(); App.Model.Master.MWorld mWorld = System.Array.Find(Global.worlds, w => w.id == battlefieldMaster.world_id); mBaseMap.MapId = mWorld.map_id; //mBaseMap.Tiles = battlefieldMaster.tiles.Clone() as App.Model.MTile[]; mBaseMap.Tiles = mWorld.stages.Clone() as App.Model.MTile[]; base.InitMap(); List <MCharacter> characters = new List <MCharacter>(); for (int i = 0; i < characterIds.Count; i++) { MCharacter mCharacter = System.Array.Find(App.Util.Global.SUser.self.characters, _ => _.CharacterId == characterIds[i]); mCharacter.Belong = Belong.self; //mCharacter.Level = 50; //己方出战坐标 App.Model.Master.MBattleOwn mBattleOwn = battlefieldMaster.owns[i]; mCharacter.CoordinateX = mBattleOwn.x; mCharacter.CoordinateY = mBattleOwn.y; CharacterInit(mCharacter); characters.Add(mCharacter); //mCharacter.Hp -= 50; } foreach (App.Model.Master.MBattleNpc battleNpc in battlefieldMaster.enemys) { MCharacter mCharacter = NpcCacher.Instance.GetFromBattleNpc(battleNpc); mCharacter.Belong = Belong.enemy; //mCharacter.Level = 50; CharacterInit(mCharacter); characters.Add(mCharacter); //mCharacter.Hp = 1; } bool isFirst = !System.Array.Exists(Global.SUser.self.battlelist, b => b.BattlefieldId == battlefieldId); if (isFirst) { foreach (App.Model.Master.MBattleNpc battleNpc in battlefieldMaster.friends) { MCharacter mCharacter = NpcCacher.Instance.GetFromBattleNpc(battleNpc); mCharacter.Belong = Belong.friend; //mCharacter.Level = 50; CharacterInit(mCharacter); characters.Add(mCharacter); } } mBaseMap.Characters = characters.ToArray(); vBaseMap.BindingContext = mBaseMap.ViewModel; vBaseMap.UpdateView(); vBaseMap.transform.parent.localScale = Vector3.one; vBaseMap.MoveToPosition(); characters.ForEach(character => character.Action = ActionType.idle); List <string> script; if (isFirst) { script = battlefieldMaster.script; } else { script = new List <string>(); } script.Add("Battle.boutwave(self);"); App.Util.LSharp.LSharpScript.Instance.Analysis(script); }