void On_JoystickMove(MovingJoystick move) { float angle = move.Axis2Angle(true); qua = Quaternion.Euler(new Vector3(0, angle, 0)); wrap = QuaternionWrap.QuaternionToWrap(qua); string plainText = JSON.Instance.ToJSON(wrap); NpcAnimInfo info = new NpcAnimInfo() { ClientID = DeviceInfo.GUID, nextState = NpcAnimState.ManualInput, ui = new WarUIInfo() { ClientID = DeviceInfo.GUID, uniqueId = warCliMgr.clientTeam.activeNpc.UniqueID, camp = WarCamp2Camp.toWarCamp(warCliMgr.clientTeam.activeNpc.Camp), }, data = plainText, }; plainText = JSON.Instance.ToJSON(info); proxyServer.Move(plainText); if (warCliMgr.clientTeam.isAuto) { warCliMgr.clientTeam.SwitchAutoOrManual(false); } }
/// <summary> /// 切换激活状态的英雄 /// </summary> /// <param name="index">Index.</param> /// <param name="SwitchOK">Switch O.</param> public bool SwitchActive(int index) { bool validate = false; bool found = team.ContainsKey(index); if (found) { int wishtoID = team[index].UniqueID; CAMP cp = team[index].Camp; bool same = wishtoID == activeNpc.UniqueID; validate = same ? false : true; if (validate) { WarCamp wcamp = WarCamp2Camp.toWarCamp(cp); SwitchInfo si = new SwitchInfo() { UniqueID = wishtoID, ClientID = DeviceInfo.GUID, camp = wcamp, }; string plaintext = JSON.Instance.ToJSON(si); realClient.proxyServer.Switch(plaintext); } } return(validate); }
//得到英雄队伍 public List <ServerLifeNpc> GetHeroList(CAMP camp) { List <ServerLifeNpc> list = null; if (allHeros.TryGetValue(WarCamp2Camp.toWarCamp(camp), out list)) { return(list); } ConsoleEx.DebugError("hero list is null :: " + camp.ToString()); return(null); }
void On_JoystickMoveEnd(MovingJoystick move) { string plainText = ""; NpcAnimInfo info = new NpcAnimInfo() { ClientID = DeviceInfo.GUID, nextState = NpcAnimState.Stand, ui = new WarUIInfo() { ClientID = DeviceInfo.GUID, uniqueId = warCliMgr.clientTeam.activeNpc.UniqueID, camp = WarCamp2Camp.toWarCamp(warCliMgr.clientTeam.activeNpc.Camp), }, data = plainText, }; plainText = JSON.Instance.ToJSON(info); proxyServer.MoveStop(plainText); }
/// <summary> /// 切换自动和手动 /// </summary> /// <returns><c>true</c>, if auto or manual was switched, <c>false</c> otherwise.</returns> public void SwitchAutoOrManual(bool bAuto) { if (activeNpc != null) { CAMP cp = activeNpc.Camp; WarCamp wcamp = WarCamp2Camp.toWarCamp(cp); ManualOrAuto ma = new ManualOrAuto() { UniqueID = activeNpc.UniqueID, ClientID = DeviceInfo.GUID, camp = wcamp, }; ma.auto = (short)(bAuto == true ? 1 : 0); string plaintext = JSON.Instance.ToJSON(ma); realClient.proxyServer.ManualAuto(plaintext); } }
//NPC是否控制的主英雄 public bool IsHeroActive(ServerLifeNpc npc) { WarCamp warCamp = WarCamp2Camp.toWarCamp(npc.Camp); List <RoomCharactor> chaList = get(warCamp); if (chaList != null) { int len = chaList.Count; for (int i = 0; i < len; i++) { WrapperTeam team = chaList[i].team as WrapperTeam; if (team.activeNpc.UniqueID == npc.UniqueID) { return(true); } } } return(false); }
public void On_Attack_Clicked() { string plainText = ""; NpcAnimInfo info = new NpcAnimInfo() { ClientID = DeviceInfo.GUID, nextState = NpcAnimState.Attack, ui = new WarUIInfo() { ClientID = DeviceInfo.GUID, uniqueId = warCliMgr.clientTeam.activeNpc.UniqueID, camp = WarCamp2Camp.toWarCamp(warCliMgr.clientTeam.activeNpc.Camp), }, data = "", }; plainText = JSON.Instance.ToJSON(info); proxyServer.Attack(plainText); if (warCliMgr.clientTeam.isAuto) { warCliMgr.clientTeam.SwitchAutoOrManual(false); } }