public GameModeBase LoadGameMode(Type t, GameModeInitData initData) { if (!t.IsSubclassOf(typeof(GameModeBase))) { Debug.Log("type is not a game mode"); return(null); } //if(t == mGameMode.GetType()) //{ // //相同模式 说明不变 // return mGameMode; //} GameModeBase preGm = mGameMode; mGameMode = (GameModeBase)Activator.CreateInstance(t); if (mGameMode == null) { Debug.LogError("Load Game Mode " + t.FullName + " fail"); return(null); } mGameMode.Init(initData); if (preGm != null) { preGm.OnRelease(); } return(mGameMode); }
public override void Init(GameModeInitData initData) { fakeZhiboMode2Skill(); mUIMgr = GameMain.GetInstance().GetModule <UIMgr>(); mResLoader = GameMain.GetInstance().GetModule <ResLoader>(); mCardMdl = GameMain.GetInstance().GetModule <CardDeckModule>(); pRoleMgr = GameMain.GetInstance().GetModule <RoleModule>(); //mSkillMdl = GameMain.GetInstance().GetModule<SkillTreeMgr>(); state = new ZhiboGameMode2State(); state.Hp = 100; state.MaxHp = 100; state.Enegy = 0; state.MaxEnegy = 100; state.EnegyPerSec = 1f; state.OriginTime = 100; state.TimeLeft = 100; state.Score = 0; state.TargetScore = 1000; state.DanmuFreq = 3f; state.savedFreq = state.DanmuFreq; state.NowSuperDanmuIdx = 0; state.ArmorTimer = 0f; spdRate = 1.0f; lastTick = 0; nextTick = 0; bigOneNext = 3; bigOneCount = 0; LoadDanmuDict(); mUICtrl = mUIMgr.ShowPanel("ZhiboPanelMode2") as ZhiboMode2UICtrl; mUICtrl.UpdateTargetScore(); InitSuperDanmu(); FightDanmuGMInitData realData = initData as FightDanmuGMInitData; if (realData != null) { SetPresetInfo(realData.SkillList); } }
public void ChangeScene(string sname, GameModeInitData initData = null, Action onSceneFinished = null) { if (!SceneInfoDict.ContainsKey(sname)) { return; } string SceneName = SceneInfoDict[sname].SceneName; mResLoader.LoadLevelSync("Scene/" + SceneName, LoadSceneMode.Single, delegate(Scene scene, LoadSceneMode mode) { Type t = SceneInfoDict[sname].GameModeType; GameModeBase gm = LoadGameMode(t, initData); gm.GameFinishedCallback = onSceneFinished; }); }
public override void Init(GameModeInitData initData) { BindGameObject(); InitCameraControl(); travelUI = pUIMgr.ShowPanel("TravelPanel", false) as TravelUI; SetMap(); LoadMap(FakeMapInfo()); isMovingCamera = false; isContinueMovingCamera = false; Initialized = true; }
public override void Init(GameModeInitData initData) { pUIMgr = GameMain.GetInstance().GetModule <UIMgr> (); rm = GameMain.GetInstance().GetModule <RoleModule>(); pEventMgr = GameMain.GetInstance().GetModule <SpeEventMgr>(); mainUI = pUIMgr.ShowPanel("UIMain") as UIMainCtrl; MainGMInitData realData = initData as MainGMInitData; if (realData != null) { if (realData.isNextTurn) { NextTurn(); } } }
public GameModeBase LoadGameMode <T>(GameModeInitData initData) where T : GameModeBase { return(LoadGameMode(typeof(T), initData)); }
public virtual void Init(GameModeInitData InitData) { return; }
public override void Init(GameModeInitData initData) { UImgr = GameMain.GetInstance().GetModule <UIMgr>(); UImgr.ShowPanel("HomeMenuCtrl"); }