private int waveIndex = 1; // 默认生成第一波怪物 public void Init(BattleMgr battle) { battleMgr = battle; //实例化第一批怪物 battleMgr.LoadMonsterByWaveID(waveIndex); PECommon.Log("Init MapMgr Done."); }
public void initBattleInfo(BattleMgr bMgr) { foreach (MissionModel mModel in _missionModels.Values) { mModel.initBattleInfo(bMgr); } }
public void PreInitialize(BattleMgr bMgr, UIMgr uMgr, Entity nActor, AttackTracker aTracker) { uiMgr = uMgr; battleMgr = bMgr; nowActor = nActor; attackTracker = aTracker; }
private void Awake() { actCtrl = GetComponent <Actor_Controller>(); GameObject model = actCtrl.model; GameObject sensor = null; try { sensor = transform.Find("sensor").gameObject; } catch (System.Exception) { // // if there is no sensor object // } btlMgr = Bind <BattleMgr>(sensor); wpnMrg = Bind <WeaponMgr>(model); staMgr = Bind <StateMgr>(gameObject); dirMgr = Bind <DirectorMgr>(gameObject); intMgr = Bind <InterationMgr>(sensor); actCtrl.OnAction += DoAction; }
private EntityMonster FindClosedTarget() { List <EntityMonster> lst = BattleMgr.GetEntityMonsters(); if (lst == null || lst.Count == 0) { return(null); } Vector3 self = GetPos(); EntityMonster targetMonster = null; float dis = 0; for (int i = 0; i < lst.Count; i++) { Vector3 target = lst[i].GetPos(); if (i == 0) { dis = Vector3.Distance(self, target); targetMonster = lst[0]; } else { float calcDis = Vector3.Distance(self, target); if (dis > calcDis) { dis = calcDis; targetMonster = lst[i]; } } } return(targetMonster); }
/// <summary> /// 开始一段旁白 /// isPause=暂停 /// isUnPauseOnEndTalk=对话结束后取消暂停 /// </summary> /// <param name="id"></param> public virtual NarrationFragment Start(string id) { CurData = TDLuaMgr.Get <TData>(id); if (CurData == null) { CLog.Error($"没有找到这个Plot:{id}"); return(null); } //如果剧情只显示一次,则返回 if (CurData.IsShowOnce && Showed.Contains(id)) { return(null); } CurNarrationIndex = 0; if (IsHave()) { Showed.Add(id); var ret = CurData.Fragments[CurNarrationIndex]; Callback_OnStartNarration?.Invoke(CurData, ret); Callback_OnChangeNarration?.Invoke(CurData); IsStartNarration = true; if (!PauseFlag) { BattleMgr.LockBattleStartFlow(true); PlotMgr?.SetPlotPause(true); } PauseFlag = true; return(ret); } return(null); }
public void DoAction() { if (intMgr.lst_ovrlapEvnCstr.Count != 0) { if (intMgr.lst_ovrlapEvnCstr[0].active == true) { dirMgr.victim = intMgr.lst_ovrlapEvnCstr[0].actMgr; if (intMgr.lst_ovrlapEvnCstr[0].eventName == "frontStab") { dirMgr.PlayFrontStab("frontStab", this, intMgr.lst_ovrlapEvnCstr[0].actMgr); } else if (intMgr.lst_ovrlapEvnCstr[0].eventName == "openBox") { if (BattleMgr.CheckAnglePlayer(actCtrl.model, intMgr.lst_ovrlapEvnCstr[0].actMgr.gameObject, 30)) { intMgr.lst_ovrlapEvnCstr[0].active = false; transform.position = intMgr.lst_ovrlapEvnCstr[0].actMgr.transform.position + intMgr.lst_ovrlapEvnCstr[0].actMgr.transform.TransformVector(intMgr.lst_ovrlapEvnCstr[0].offset); actCtrl.model.transform.LookAt(intMgr.lst_ovrlapEvnCstr[0].actMgr.transform, Vector3.up); dirMgr.PlayFrontStab("openBox", this, intMgr.lst_ovrlapEvnCstr[0].actMgr); } } else if (intMgr.lst_ovrlapEvnCstr[0].eventName == "leverUp") { if (BattleMgr.CheckAnglePlayer(actCtrl.model, intMgr.lst_ovrlapEvnCstr[0].actMgr.gameObject, 180)) { //intMgr.lst_ovrlapEvnCstr[0].active = false; transform.position = intMgr.lst_ovrlapEvnCstr[0].actMgr.transform.position + intMgr.lst_ovrlapEvnCstr[0].actMgr.transform.TransformVector(intMgr.lst_ovrlapEvnCstr[0].offset); actCtrl.model.transform.LookAt(intMgr.lst_ovrlapEvnCstr[0].actMgr.transform, Vector3.up); dirMgr.PlayFrontStab("leverUp", this, intMgr.lst_ovrlapEvnCstr[0].actMgr); } } } } }
/// <summary> /// 进入战斗 /// </summary> /// <param name="battleProp">自己的战场参数</param> public void EnterBattle(Dictionary <int, BattleProp> battlePropDic) { GameObject battleGO = new GameObject("Battle"); battleGO.transform.SetParent(gameObject.transform); battleMgr = battleGO.AddComponent <BattleMgr>(); battleMgr.Init(battlePropDic); audioSvc.PlayBGMusic(Constants.BGBattle); foreach (var item in battlePropDic) { //玩家血量字典集合 playerHPDic.Add(item.Value.roleType, item.Value.playerHp); } playerControlPanel = (PlayerControlPanel)UIManager.Instance.PushPanel(UIPanelType.PlayerControl); //SetFireButton(); CreateAllPlayerHPUI(playerHPDic); WeapenCfg weapenCfg = resSvc.GetWeapenCfgData(battlePropDic.TryGet((int)GetCurrentRoleType()).weapenCfgID); SetTxtBullet(weapenCfg.weapenFrontBullet, weapenCfg.weapenBackBullet); //小于一定范围自动瞄准。 GameObject[] Players = GameObject.FindGameObjectsWithTag("Player"); for (int i = 0; i < Players.Length; i++) { if (Players[i].GetComponent <PlayerController>() == null) { playerControlPanel.AddEnemyToDic(Players[i].name, Players[i]); PECommon.Log("添加敌方角色进自动瞄准List:" + Players[i].name); } } }
public override void Stop() { if (this.IsRunning == 1) { this.IsRunning = -1; if (!MarryRoomMgr.UpdateBreakTimeWhereServerStop()) { Console.WriteLine("Update Marry BreakTime failed"); } if (!SpaRoomMgr.UpdateBreakTimeWhereSpaServerStop()) { Console.WriteLine("Update Spa BreakTime failed"); } RoomMgr.Stop(); GameMgr.Stop(); BattleMgr.Stop(); if (this._loginServer != null) { this._loginServer.Disconnected -= new ClientEventHandle(this.loginServer_Disconnected); this._loginServer.Disconnect(); } if (this.m_pingCheckTimer != null) { this.m_pingCheckTimer.Change(-1, -1); this.m_pingCheckTimer.Dispose(); this.m_pingCheckTimer = null; } if (this.m_saveDbTimer != null) { this.m_saveDbTimer.Change(-1, -1); this.m_saveDbTimer.Dispose(); this.m_saveDbTimer = null; } if (this.m_saveRecordTimer != null) { this.m_saveRecordTimer.Change(-1, -1); this.m_saveRecordTimer.Dispose(); this.m_saveRecordTimer = null; this.SaveRecordProc(null); } if (this.m_buffScanTimer != null) { this.m_buffScanTimer.Change(-1, -1); this.m_buffScanTimer.Dispose(); this.m_buffScanTimer = null; } if (this.m_limitItemRefreshTimer != null) { this.m_limitItemRefreshTimer.Change(-1, -1); this.m_limitItemRefreshTimer.Dispose(); this.m_limitItemRefreshTimer = null; } this.SaveTimerProc(null); base.Stop(); Thread.CurrentThread.Priority = ThreadPriority.BelowNormal; GameServer.log.Warn("Server Stopped!"); } }
public void Init(BattleMgr battleMgr) { this.battleMgr = battleMgr; // 实例化怪物第一批 battleMgr.LoadMonsterByWaveID(waveIndex); Common.Log("MapMgr init done"); }
static Dictionary <string, ServerSocketAnalyze> serverSocketAnalyzes = new Dictionary <string, ServerSocketAnalyze>(); //存放线程 static void Main(string[] args) { //dataParse = ServerDataParse.Instance; battleMgr = new BattleMgr(); battleMgr.Init(); //InitServer(); InitServer(); Console.ReadLine(); }
public void StartBattle(int mapId) { GameObject battleRoot = new GameObject("BattleRoot"); battleRoot.transform.SetParent(GameRoot.Instance.transform); battleMgr = battleRoot.AddComponent <BattleMgr>(); battleMgr.Init(mapId); SetPlayerCtrlWindowState(true); }
public void Init(BattleMgr battleMgr) { this.battleMgr = battleMgr; //实例化第一批怪物 battleMgr.LoadMonsterByWaveID(waveIndex); PECommon.Log("MapMgr Init Done"); }
public virtual void Init(BattleMgr battleMgr, StateMgr stateMgr, SkillMgr skillMgr, Controller ctrl, BattleAttribute attribute, Vector3 pos, Orient dir) { this.battleMgr = battleMgr; this.stateMgr = stateMgr; this.skillMgr = skillMgr; this.controller = ctrl; this.battleAttribute = attribute; ctrl.Init(pos, dir); }
private void Init() { VarInt fbId = m_ProcedureOwner.GetData <VarInt>(Constant.ProcedureData.FubenId); m_Fbid = fbId; m_BattleMgr = new BattleMgr(); m_BattleMgr.Init(fbId, () => { m_StartTime = GameEntry.Timer.GetNowTime(); }); }
public void Init(BattleMgr bm) { battleMgr = bm; transform.localPosition = Vector3.zero; transform.localScale = Vector3.one; //实例化第一批怪物 battleMgr.LoadMonsterByWaveID(waveIndex); PECommon.Log("Init MapMgr Done."); }
private void _onItemDroped() { SolaEngine engine = SolaEngine.getInstance(); BattleMgr bMgr = (BattleMgr)engine.getMgr(typeof(BattleMgr)); int gold = bMgr.getGold(); int paper = bMgr.getPaper(); goldText.text = gold.ToString(); paperText.text = paper.ToString(); }
public void StartBattle(int characterId, int mapId) { var go = new GameObject { name = "BattleRoot" }; go.transform.SetParent(GameRoot.Ins.transform); battleMgr = go.AddComponent <BattleMgr>(); battleMgr.Init(characterId, mapId); UIMgr.Ins.OpenPanel(PanelType.PlayerCtrlPanel); }
private void _onBtnClicked(GameObject gameObject) { SolaEngine engine = SolaEngine.getInstance(); BattleMgr bMgr = (BattleMgr)engine.getMgr(typeof(BattleMgr)); bMgr.setMissionModel(_model); string sceneName = ScenesName.BATTLE; engine.enterScene(sceneName); Application.LoadLevel(sceneName); }
public void StartBattle(int mapId) { GameObject go = new GameObject() { name = "BattleMgr" }; go.transform.SetParent(GameRoot.instance.transform); battleMgr = go.AddComponent <BattleMgr>(); battleMgr.Init(mapId); SetPlayerCtrlWindState(); }
/// <summary> /// Event를 기다리는 State입니다. /// </summary> /// <param name="e">기다릴 Event</param> /// <param name="nextState">이 State 다음 State</param> /// <param name="paramCondition">Event발생시 매개변수를 검사하여 nextState로 Tranisition 여부를 결정하는 Predicate</param> public BattleMgr_WaitSingleEvent_( BattleMgr owner, ObserverEvent e, BattleMgr_State_ nextState, Predicate <EventParam> paramCondition = null, Action onWaitEnter = null, Action onWaitExecute = null, Action onWaitExit = null) : base(owner) { _e = e; _nextState = nextState; _paramCondition = paramCondition; _onWaitEnter = onWaitEnter; _onWaitExecute = onWaitExecute; _onWaitExit = onWaitExit; }
private void _onComfirmClicked(GameObject src) { SolaEngine engine = SolaEngine.getInstance(); DialogueModel[] dialogueModels = new DialogueModel[0]; MapModel mapModel = _mapModel; List <HeroModel> monsterModels = mapModel.getRandomMonster(); int monsterSize = monsterModels.Count; BattleInfoModel[] battleInfos = new BattleInfoModel[3]; for (int j = 0; j < battleInfos.Length; j++) { List <BattleHeroModel> rdModels = new List <BattleHeroModel> (); for (int i = 0; i < 3; i++) { int monsterIndex = engine.randomInt(0, monsterSize); HeroModel monster = monsterModels [monsterIndex]; Vector3 pos = new Vector3(); pos.x = engine.randomInt(-200, 200); pos.y = engine.randomInt(-300, 300); pos.z = 0; BattleHeroModel bhModel = new BattleHeroModel(); bhModel.setModel(monster, true, pos); rdModels.Add(bhModel); } BattleInfoModel bInfoModel = new BattleInfoModel(); bInfoModel.mapBattleInfo(0, 3, rdModels); battleInfos[j] = bInfoModel; } MissionModel missionModel = new MissionModel(); missionModel.formatMapBattle(battleInfos, dialogueModels); BattleMgr bMgr = (BattleMgr)engine.getMgr(typeof(BattleMgr)); bMgr.setMissionModel(missionModel); string sceneName = ScenesName.BATTLE; engine.enterScene(sceneName); Destroy(himeScroll.gameObject); Application.LoadLevel(sceneName); }
public void initBattleInfo(BattleMgr bMgr) { int infoLength = _battleInfoIds.Length; _battleInfoModels = new BattleInfoModel[infoLength]; for (int i = 0; i < infoLength; i++) { int battleInfoId = _battleInfoIds [i]; BattleInfoModel bInfoModel = bMgr.getBattleInfo(battleInfoId); _battleInfoModels [i] = bInfoModel; } }
public void Init(BattleMgr battle) { waveIndex = 1; battleMgr = battle; for (int i = 0; i < triggerArr.Length; i++) { BoxCollider co = triggerArr[i].GetComponent <BoxCollider>(); co.isTrigger = false; } //实例化第一批怪物 battleMgr.LoadMonsterByWaveID(waveIndex); PECommon.Log("Init MapMgr Done."); }
private void _atk(Vector3 upPoint) { if (_canMove == false) { return; } _canMove = false; _needCheck = true; BattleHeroModel model = _model; bool isMonster = model.isMonster(); SolaEngine engine = SolaEngine.getInstance(); BattleMgr bMgr = (BattleMgr)engine.getMgr(typeof(BattleMgr)); List <BattleHeroModel> monsters = bMgr.getMonsters(); foreach (BattleHeroModel monster in monsters) { monster.setPushable(isMonster); } Dictionary <int, BattleHeroModel> partners = bMgr.getPartners(); foreach (BattleHeroModel parnter in partners.Values) { parnter.setPushable(!isMonster); } // selectedImg.gameObject.SetActive (false); float xF = -upPoint.x; float yF = -upPoint.y; float forces = Mathf.Sqrt(xF * xF + yF * yF); float multipleX = xF / forces; float multipleY = yF / forces; float maxF = 3f; if (forces > maxF) { forces = maxF; xF = multipleX * forces; yF = multipleY * forces; } rBody.AddForce(new Vector2(xF * 1000, yF * 1000)); }
/// <summary> /// 开始战斗 /// </summary> /// <param name="mapId"></param> public void StartBattle(int mapId) { dungeonId = mapId; GameObject go = new GameObject { name = "BattleRoot" }; go.transform.SetParent(GameRoot.Instance.transform); battleMgr = go.AddComponent <BattleMgr>(); battleMgr.Init(mapId, () => { startTime = timerSvc.GetNowTime(); }); SetPlayerCtrlWndState(); }
public static void OnPlayerOnline(int playerid, int consortiaID, int areaid, bool isSend) { WorldMgr.ChangePlayerState(playerid, true, consortiaID); if (isSend) { List <BattleServer> servers = BattleMgr.GetAllBattles(); foreach (BattleServer server in servers) { if (server != null && server.IsOpen) { server.Connector.SendKitOffPlayer(playerid, areaid); } } } }
public void InitBattle(int mapId) { base.Init(); GameObject go = new GameObject { name = "BattleRoot", }; go.transform.SetParent(mGameRoot.transform); BattleMgr bMgr = go.AddComponent <BattleMgr>(); bMgr.Init(mapId); }
public void StartBattle(int fbid) { GameObject go = new GameObject { name = "BattleRoot" }; go.transform.SetParent(GameRoot.Instance.transform); battleMgr = go.AddComponent <BattleMgr>(); battleMgr.Init(fbid, () => { startTime = timerSvc.GetNowTime(); }); this.fbid = fbid; }
public void StartBattle(int mapID) { MainCitySys.Instance.mainCityWnd.SetWndState(false); FuBenSys.Instance.SetFubenWnd(false); GameObject go = new GameObject { name = "BattleRoot" }; go.transform.SetParent(GameRoot.Instance.transform); battleMgr = go.AddComponent <BattleMgr>(); battleMgr.Init(mapID); SetPlayerCtrlWnd(); }