void OnTeamFollow() { Obj_MainPlayer mainPlayer = Singleton <ObjManager> .Instance.MainPlayer; if (mainPlayer == null) { return; } // 没队伍 if (GlobeVar.INVALID_ID == GameManager.gameManager.PlayerDataPool.TeamInfo.TeamID) { return; } if (mainPlayer.IsTeamLeader()) // 队长 { // 组队跟随状态 if (false == mainPlayer.IsInTeamFollow) { mainPlayer.ReqTeamFollow();// 请求跟随 } else { // 解散 mainPlayer.AskLeaveTeamFollow(); } } else// 队员 { // 离开跟随 mainPlayer.AskLeaveTeamFollow(); } }
public UISprite m_TeamFollowState; // 组队跟随 状态图片 非跟随状态:"false",跟随状态:"true" public void UpdateButtonTeamFollow() { bool bIsShow = false; string strTeamFollowState = ""; // 有队伍 if (GlobeVar.INVALID_ID != GameManager.gameManager.PlayerDataPool.TeamInfo.TeamID) { Obj_MainPlayer mainPlayer = Singleton <ObjManager> .Instance.MainPlayer; if (mainPlayer != null) { if (mainPlayer.IsTeamLeader()) // 队长 { bIsShow = true; } else if (mainPlayer.IsInTeamFollow) // 队员 跟随下 { bIsShow = true; } // 组队跟随状态图片 strTeamFollowState = (mainPlayer.IsInTeamFollow ? "gensui01" : "gensui"); } } if (m_ButtonTeamFollow && m_TeamFollowState) { m_ButtonTeamFollow.gameObject.SetActive(bIsShow); m_TeamFollowState.spriteName = strTeamFollowState; } }
void OnTeamFollowChangSceneButton() { // 隐藏下 就不判断了 if (m_ChangSceneUI.activeInHierarchy == true) { m_ChangSceneUI.SetActive(false); return; } if (Singleton <ObjManager> .Instance == null) { return; } Obj_MainPlayer mainPlayer = Singleton <ObjManager> .Instance.MainPlayer; if (mainPlayer == null) { return; } // 简单的条件判断 if (false == GlobalData.IsVillainOpen()) { // 提示 mainPlayer.SendNoticMsg(false, "#{5242}"); return; } // 没队伍 if (GlobeVar.INVALID_ID == GameManager.gameManager.PlayerDataPool.TeamInfo.TeamID) { // 提示 mainPlayer.SendNoticMsg(false, "#{5244}"); return; } if (false == mainPlayer.IsTeamLeader()) // 队长 { // 提示 mainPlayer.SendNoticMsg(false, "#{5244}"); return; } // 组队跟随状态 // if (false == mainPlayer.IsInTeamFollow) // { // // 提示 // mainPlayer.SendNoticMsg(false, "#{5242}"); // return; // } m_ChangSceneUI.SetActive(true); }
//召唤队友 void OnClickZhaoHuan() { Obj_MainPlayer mainPlayer = Singleton <ObjManager> .Instance.MainPlayer; if (mainPlayer != null) { if (false == mainPlayer.IsTeamLeader()) { mainPlayer.SendNoticMsg(false, "#{4725}"); return; } mainPlayer.ReqCallMember(); } }
void OnTeamFollow() { Obj_MainPlayer mainPlayer = Singleton <ObjManager> .Instance.MainPlayer; if (mainPlayer != null) { if (false == mainPlayer.IsTeamLeader()) { return; } mainPlayer.ReqTeamFollow(); } }
void Start () { m_RemainFanPaiCount.text = m_FanPaiNumber.ToString(); m_nNextLevelAuto = GlobeVar.INVALID_ID; if (m_DrawList == null) { m_DrawList = new List<ItemInfo>(); } if (m_RewardList == null) { m_RewardList = new List<ItemInfo>(); } m_nDrawIndexEx = -1; // for (int i = 0; i < m_Star.Length; i++) // { // m_Star[i].spriteName = "weijihuo";//.gameObject.SetActive(false); // } if (m_nSceneId == (int)Games.GlobeDefine.GameDefine_Globe.SCENE_DEFINE.SCENE_FB_HUNDUNZHIDI) { GameWinWindow.SetActive(false); LotteryWindow.SetActive(false); ScoreWindow.SetActive(false); CangJingGeWindow.SetActive(true); //m_CangJingGeTier.text = "层数:" + m_nStar.ToString(); m_CangJingGeTier.text = StrDictionary.GetClientDictionaryString("#{2781}", m_nStar); //m_CangJingGeTime.text = "通过时间:" + m_nScore.ToString(); m_CangJingGeTime.text = StrDictionary.GetClientDictionaryString("#{2782}", m_nScore); m_OpenCopyButton.SetActive(true); m_QuitBtn.SetActive(true); } else { GameWinWindow.SetActive(true); LotteryWindow.SetActive(true); ScoreWindow.SetActive(true); CangJingGeWindow.SetActive(false); m_CangJingGeTier.text = ""; m_CangJingGeTime.text = ""; m_OpenCopyButton.SetActive(false); m_QuitBtn.SetActive(false); } if (m_nResult == 1) { if (m_nSceneId == (int)Games.GlobeDefine.GameDefine_Globe.SCENE_DEFINE.SCENE_FB_HUNDUNZHIDI) { BG.SetActive(false); GameWinWindow.SetActive(false); GameFailWindow.SetActive(false); GameStaticWinWindow.SetActive(true); //modified by mawenbin //藏经阁挑战胜利特殊处理 //已通关最高层 if (m_nStar >= (int)Games.GlobeDefine.GameDefine_Globe.MAX_COPYSCENE_CJGTIER) { m_OpenCopyButton.SetActive(false); m_StaticWinText.text = StrDictionary.GetClientDictionaryString("#{2658}"); } else { //单人藏经阁 if ((int)GameDefine_Globe.CopyScene_PlayType.SINGLE == m_nSolo) { if(GameManager.gameManager.MissionManager.IsHaveMission(m_nMissionID)&&m_nStar==m_nMissionLevel) { m_nNextLevelAuto = GlobeVar.INVALID_ID; } else { m_nNextLevelAuto = m_nNextLevelAutoTimer; } m_OpenCopyButton.SetActive(true); m_StaticWinText.text = StrDictionary.GetClientDictionaryString("#{2220}", m_nStar); } //组队藏经阁 else if ((int)GameDefine_Globe.CopyScene_PlayType.MULTIPLE == m_nSolo) { Obj_MainPlayer MainPlayer = Singleton<ObjManager>.GetInstance().MainPlayer; if (null != MainPlayer) { //队长显示下一层按钮 if (MainPlayer.IsTeamLeader()) { m_OpenCopyButton.SetActive(true); m_StaticWinText.text = StrDictionary.GetClientDictionaryString("#{2220}", m_nStar); } //组队藏经阁队员不显示下一层按钮 else { m_OpenCopyButton.SetActive(false); m_StaticWinText.text = StrDictionary.GetClientDictionaryString("#{10828}", m_nStar); } } } } } else { if (m_nSceneId == (int)Games.GlobeDefine.GameDefine_Globe.SCENE_DEFINE.SCENE_ZHENLONGQIJU || m_nSceneId == (int)Games.GlobeDefine.GameDefine_Globe.SCENE_DEFINE.SCENE_JUXIANZHUANG || m_nSceneId == (int)Games.GlobeDefine.GameDefine_Globe.SCENE_DEFINE.SCENE_YANZIWU || m_nSceneId == (int)Games.GlobeDefine.GameDefine_Globe.SCENE_DEFINE.SCENE_YANGWANGGUMU || m_nSceneId == (int)Games.GlobeDefine.GameDefine_Globe.SCENE_DEFINE.SCENE_HUTOUZHANCHUAN || m_nSceneId == (int)Games.GlobeDefine.GameDefine_Globe.SCENE_DEFINE.SCENE_FBSHAOSHISHAN || m_nSceneId == (int)Games.GlobeDefine.GameDefine_Globe.SCENE_DEFINE.SCENE_YANMENGUANDEFENCE) { GameWinWindow.SetActive(false); GameFailWindow.SetActive(false); BG.SetActive(false); m_fEndTime = Time.realtimeSinceStartup + 3.0f; //m_StaticWinText.text = "副本成功"; //m_StaticWinText.text = StrDictionary.GetClientDictionaryString("#{2783}"); } else { GameWinWindow.SetActive(false); GameFailWindow.SetActive(false); if (BackCamerControll.Instance() != null) { BackCamerControll.Instance().PlaySceneEffect(475); } GameManager.gameManager.SoundManager.PlaySoundEffect(249); BG.SetActive(false); m_fEndTime = Time.realtimeSinceStartup + 2.0f; //m_StaticWinText.text = "副本成功"; //m_StaticWinText.text = StrDictionary.GetClientDictionaryString("#{2783}"); } } } else { if (m_nSceneId == (int)Games.GlobeDefine.GameDefine_Globe.SCENE_DEFINE.SCENE_FB_HUNDUNZHIDI) { BG.SetActive(false); GameWinWindow.SetActive(false); GameFailWindow.SetActive(true); GameStaticWinWindow.SetActive(false); m_FailText.text = StrDictionary.GetClientDictionaryString("#{2219}", m_nStar); } else { BG.SetActive(false); GameWinWindow.SetActive(false); GameFailWindow.SetActive(true); //m_FailText.text = "副本失败"; m_FailText.text = StrDictionary.GetClientDictionaryString("#{2784}"); } } m_Lianji.text = m_nCarom.ToString(); Tab_SceneClass pSceneClass = null; Tab_CopyScene pCopyScene = null; Tab_CopySceneRule pCopySceneRule = null; if (m_nSceneId == (int)Games.GlobeDefine.GameDefine_Globe.SCENE_DEFINE.SCENE_FB_HUNDUNZHIDI) { pCopySceneRule = TableManager.GetCopySceneRuleByID(m_nStar, 0); if (pCopySceneRule == null) { return; } } else { pSceneClass = TableManager.GetSceneClassByID(m_nSceneId, 0); if (pSceneClass == null) { return; } pCopyScene = TableManager.GetCopySceneByID(pSceneClass.CopySceneID, 0); if (pCopyScene == null) { return; } if (m_nSolo == 1) { pCopySceneRule = TableManager.GetCopySceneRuleByID(pCopyScene.GetRulebyIndex(m_Difficult - 1), 0); } else { pCopySceneRule = TableManager.GetCopySceneRuleByID(pCopyScene.GetRuleTeambyIndex(m_Difficult - 1), 0); } if (pCopySceneRule == null) { return; } } string TongGuanSec = (m_nTime % 60).ToString(); if (m_nTime % 60 < 10 ) { TongGuanSec = "0" + (m_nTime % 60).ToString(); } string RuleSec = (pCopySceneRule.ExistTime % 60).ToString(); if (pCopySceneRule.ExistTime % 60 < 10) { RuleSec = "0" + (pCopySceneRule.ExistTime % 60).ToString(); } m_TongGuanTime.text = (m_nTime / 60).ToString() + ":" + TongGuanSec + "/" + (pCopySceneRule.ExistTime / 60).ToString() + ":" + RuleSec; m_Exp.text = m_nExp.ToString(); m_PetExp.text = m_nPetExp.ToString(); m_Money.text = m_nMoney.ToString(); m_JiFen.text = m_nScore.ToString(); for (int i = 0; i < 6; ++i ) { m_SpriteDraw[i].spriteName = ""; m_LabelDraw[i].text = "0"; } for (int i = 0; i < 10; ++i) { m_SpriteReward[i].spriteName = ""; m_LabelReward[i].text = "0"; } for (int i = 0; i < m_DrawList.Count && i < 4; ++i) { if (m_DrawList[i].type== 1) //物品 { Tab_CommonItem curItem = TableManager.GetCommonItemByID(m_DrawList[i].itemId, 0); if (curItem != null) { m_SpriteDraw[i].spriteName = curItem.Icon; m_LabelDraw[i].text = m_DrawList[i].count.ToString(); } } else if (m_DrawList[i].type == 2) //金钱 { m_SpriteDraw[i].spriteName = "jinbi"; m_LabelDraw[i].text = m_DrawList[i].count.ToString(); } else if (m_DrawList[i].type == 3) //元宝 { m_SpriteDraw[i].spriteName = "yuanbao"; m_LabelDraw[i].text = m_DrawList[i].count.ToString(); } else if (m_DrawList[i].type == 4) //经验 { m_SpriteDraw[i].spriteName = "jingyan"; m_LabelDraw[i].text = m_DrawList[i].count.ToString(); } } for (int i = 0; i < m_RewardList.Count && i < 10; ++i) { if (m_RewardList[i].type == 1) //物品 { Tab_CommonItem curItem = TableManager.GetCommonItemByID(m_RewardList[i].itemId, 0); if (curItem != null) { m_SpriteReward[i].spriteName = curItem.Icon; m_LabelReward[i].text = m_RewardList[i].count.ToString(); } } else if (m_RewardList[i].type == 2) //金钱 { m_SpriteReward[i].spriteName = "jinbi"; m_LabelReward[i].text = m_RewardList[i].count.ToString(); } else if (m_RewardList[i].type == 3) //元宝 { m_SpriteReward[i].spriteName = "yuanbao"; m_LabelReward[i].text = m_RewardList[i].count.ToString(); } else if (m_RewardList[i].type == 4) //经验 { m_SpriteReward[i].spriteName = "jingyan"; m_LabelReward[i].text = m_RewardList[i].count.ToString(); } } UpdateButtonState(false); showNewGuild (); }
public override void UpdateAI() { base.UpdateAI(); if (m_player == null || m_player.Controller == null) { return; } if (m_player.IsDie()) { return; } if (m_player.Controller.CombatFlag == false) { return; } if (m_player.AutoComabat == false) { return; } //轻功状态下 不挂机 if (m_player.QingGongState) { return; } if (m_player.AcceleratedMotion != null && m_player.AcceleratedMotion.Going == true) { return; } //剧情播放中不挂机 if (m_player.IsInModelStory) { return; } // 跟随不挂机 if (false == m_player.IsTeamLeader() && m_player.IsInTeamFollow) { return; } if (Cutscene.CutsceneManager.Instance.IsPlayingMovieStory) { return; } //阻塞状态不挂机 if (Cutscene.CutsceneManager.Instance.BlockAutoBattle) { return; } //自动交接任务的寻路过程中不挂机 if (null != GameManager.gameManager.AutoSearch && true == GameManager.gameManager.AutoSearch.IsAutoSearching) { return; } //modify 普通攻击:可以连续按。在技能结束前可以再次释放不能直接return。 if (m_player.SkillCore.IsUsingSkill) { bool shouldReturn = true; if ((Time.time * 1000 - CurUseSkillStartTime) >= m_nNormalSkillInterval) { if (IsNormalSkill(CurUseSkillId)) { shouldReturn = false; } } if (shouldReturn) { return; } } #region UnUsed /* if (m_player.SkillCore.IsUsingSkill) * { * * return; * if (m_player.SkillCore.UsingSkillBaseInfo != null && m_player.SkillCore.UsingSkillExInfo !=null) * { * //正在使用祝融掌 则检测下当前目标是否还存在 不存在则重新选取目标 * //if (m_player.SkillCore.UsingSkillBaseInfo.Id ==(int)SKILLBASEID.ZLZ) * //{ * // if (m_player.SelectTarget ==null || m_player.SelectTarget.IsDie()) * // { * // Obj_Character _NewAttackCharacter = SeleCanAttackTar(m_player.SkillCore.UsingSkillExInfo.Radius); * // if (_NewAttackCharacter != null) * // { * // //设置新的选中目标 * // m_player.OnSelectTarget(_NewAttackCharacter.gameObject,false); * // m_player.MoveTo(_NewAttackCharacter.transform.position, _NewAttackCharacter.gameObject,1.0f); * // } * // } * //} * * //连续技特殊判定: * //1、判定玩家是否主动打断; * //2、不判定是否释放完成,一直尝试是否可释放; * if (IsPlayerBreakRepeatSkill()) * { * ClearPlayerBreakRepeatSkill(); * return; * } * //非连续技则等待一帧 * if (!IsUsingRepeatSkillWithNext()) * { * return; * } * } * } * else * { * if (m_fLastUseEndTime <=0.1f) * { * m_fLastUseEndTime = Time.time; * } * }*/ #endregion //留个缓冲时间 //if (Time.time -m_fLastUseEndTime <0.5f) //{ // return; //} //有轻功点了出现了 向轻功点移动 if (m_player.AutoMovetoQGPointId != -1) { //打断挂机状态 m_player.BreakAutoCombatState(); /*if (GameManager.gameManager.RunningScene == (int)Games.GlobeDefine.GameDefine_Globe.SCENE_DEFINE.SCENE_YANZIWU) * { * //燕子坞轻功点移动 * m_player.AutoFightFlyInYanZiWu(); * }*/ m_player.AutoMovetoQGPointId = -1; return; } m_fLastUseEndTime = 0.0f; int skillId = SeleSkill(); if (skillId == -1) { return; } Tab_SkillEx skillExInfo = TableManager.GetSkillExByID(skillId, 0); if (skillExInfo == null) { return; } Tab_SkillBase skillBaseInfo = TableManager.GetSkillBaseByID(skillExInfo.BaseId, 0); if (skillBaseInfo == null) { return; } Obj_Character CanAttackCharacter = null; //如果当前选中的目标是敌对的了 则不需要再次选取目标 if (m_player.SelectTarget != null && m_player.SelectTarget.IsDie() == false) { if (Reputation.IsEnemy(m_player.SelectTarget) || Reputation.IsNeutral(m_player.SelectTarget)) { CanAttackCharacter = m_player.SelectTarget; } } float skillRadius = skillExInfo.Radius; if (CanAttackCharacter == null || (CanAttackCharacter != null && IsDisStartPointTooFar(skillRadius, CanAttackCharacter.Position)) ) { CanAttackCharacter = SeleCanAttackTar(skillRadius); } //是否有攻击目标 没有攻击目标就不要自动放技能了 if (CanAttackCharacter == null) { /* * if (GameManager.gameManager.RunningScene == (int)Games.GlobeDefine.GameDefine_Globe.SCENE_DEFINE.SCENE_ZHENLONGQIJU) * { * Vector3 pos = new Vector3(18, m_player.gameObject.transform.position.y, 16); * m_player.MoveTo(pos, null, 0.0f); * * } * if (GameManager.gameManager.RunningScene == (int)Games.GlobeDefine.GameDefine_Globe.SCENE_DEFINE.SCENE_YANGWANGGUMU) * { * Vector3 pos = new Vector3(20, m_player.gameObject.transform.position.y, 21); * m_player.MoveTo(pos, null, 0.0f); * } * * if (GameManager.gameManager.RunningScene == (int)Games.GlobeDefine.GameDefine_Globe.SCENE_DEFINE.SCENE_YANZIWU) * { * m_player.AutoFightInYanziwu(); * } * if (GameManager.gameManager.RunningScene == (int)Games.GlobeDefine.GameDefine_Globe.SCENE_DEFINE.SCENE_FOURVILLAIN) * { * Singleton<ObjManager>.Instance.MainPlayer.AutoFightInFourVillain(); * } */ if (GameManager.gameManager.ActiveScene != null && GameManager.gameManager.ActiveScene.IsStoryCopyScene()) { if (Singleton <ObjManager> .GetInstance().MainPlayer != null) { if (Singleton <ObjManager> .GetInstance().MainPlayer.AutoComabat) { float x = 0.0f, y = 0.0f, z = 0.0f; if (GameManager.gameManager.ActiveScene.GetGuideDestination(ref x, ref z)) { y = GameManager.gameManager.ActiveScene.GetTerrainHeight(new Vector3(x, 0.0f, z)); Singleton <ObjManager> .GetInstance().MainPlayer.MoveTo(new Vector3(x, y, z), null, 0.0f); } } } } return; } //如果在野外场景攻击其它玩家return; if (CanAttackCharacter.ObjType == Games.GlobeDefine.GameDefine_Globe.OBJ_TYPE.OBJ_OTHER_PLAYER) { if (GameManager.gameManager.ActiveScene.IsWildeScene()) { return; } } //设置为选中目标 m_player.OnSelectTarget(CanAttackCharacter.gameObject, false); //距离不过 先跑过去 float dis = Vector3.Distance(m_player.Position, CanAttackCharacter.Position); float diffDistance = dis - skillRadius; m_player.CurUseSkillId = skillId; //需要向目标移动 则想目标移动 if (diffDistance > 0 && skillBaseInfo.IsMoveToTarInAutoCombat == 1) { //move if (m_player.IsMoving == false && m_player.IsCanOperate_Move()) { m_player.MoveTo(CanAttackCharacter.Position, CanAttackCharacter.gameObject, skillRadius - 1.0f); return; } } m_player.UseSkillOpt(skillId, null); }