private void OnGetHero(LTInstanceEvent evt) { Instance.LTInstanceFloorTemp tmp = MapCtrl.GetNodeObjByPos(new Vector2(evt.x, evt.y)) as Instance.LTInstanceFloorTemp; if (tmp != null) { tmp.HideNotice(); } }
private void OnGuide(LTInstanceEvent evt) { Instance.LTInstanceFloorTemp tmp = MapCtrl.GetNodeObjByPos(new Vector2(evt.x, evt.y)) as Instance.LTInstanceFloorTemp; if (tmp != null) { int roleId = EB.Dot.Integer("id", evt.Param, 0); tmp.ShowNotice(roleId); } }
private void HideFloorRole(Vector2 vec2) { LTInstanceNode node = LTInstanceMapModel.Instance.GetNodeByPos((int)vec2.x, (int)vec2.y); if (node != null) { node.RoleData = new LTInstanceNodeRoleData(); Instance.LTInstanceFloorTemp floorTmp = MapCtrl.GetNodeObjByPos(vec2) as Instance.LTInstanceFloorTemp; if (floorTmp != null) { floorTmp.ClearRoleItem(); } } }
private void RealEndHandler(LTInstanceNode targetNode, bool isPath = true) { if (targetNode == null) { return; } Instance.LTInstanceFloorTemp floorTmp = GetNodeObjByPos(new Vector2(targetNode.x, targetNode.y)) as Instance.LTInstanceFloorTemp; if (floorTmp != null && floorTmp.OnCheckGuideNotice()) { return; } if (OnRealEnd != null) { System.Action <bool> tmp = OnRealEnd; OnRealEnd = null; tmp(isPath); return; } if (mRealEndNode == null) { return; } if (moveActionList == null || moveActionList.Count > 0) { return; } if (targetNode.IsSameNodePos(mRealEndNode)) { return; } if (mRealEndNode.RoleData != null && mRealEndNode.RoleData.CampaignData != null && !string.IsNullOrEmpty(mRealEndNode.RoleData.CampaignData.Password)) { return; } RequestChallengeMoveChar(mRealEndNode, MoveParam.Direct); }
public override void OnFloorClickFunc(LTInstanceNode NodeData, Transform Target) { if (NodeData == null) { return; } MapCtrl.OnRealEnd = null; //设置OnRealEnd到达格子后需要做的事情 if (!string.IsNullOrEmpty(NodeData.Layout))//怪物 { bool isBoss = false; if (NodeData.RoleData.Order == "Boss" || NodeData.RoleData.Id == -1) { isBoss = true; } MapCtrl.OnRealEnd = new System.Action <bool>(delegate(bool isPath) { int dir = (int)LTInstanceMapModel.Instance.CurNode.GetDirByPos(NodeData.x, NodeData.y); if (dir <= 0 && !isBoss && !isPath) { return; } if (IsChallengeQuick)//快速战斗 { Instance.LTInstanceFloorTemp tmp = MapCtrl.GetNodeObjByPos(new Vector2(NodeData.x, NodeData.y)) as Instance.LTInstanceFloorTemp; if (tmp != null) { FusionAudio.PostEvent("UI/New/Fight", true); InputBlockerManager.Instance.Block(InputBlockReason.UI_SERVER_REQUEST, 2f); tmp.ShowQuickBattleFX(); MapCtrl.OnFloorClick(NodeData, Target); } return; } if (!IsChallengeQuick && IsChallengeSkip)//跳过布阵 { FusionAudio.PostEvent("UI/New/Fight", true); InputBlockerManager.Instance.Block(InputBlockReason.UI_SERVER_REQUEST, 2f); OnGetToMonster(NodeData, Target, isBoss); return; } if (!IsChallengeQuick && !IsChallengeSkip)//正常战斗 { BattleReadyHudController.Open(eBattleType.ChallengeCampaign, delegate() { OnGetToMonster(NodeData, Target, isBoss); }, NodeData.RoleData.CampaignData.Layout); return; } }); MapCtrl.OnFloorClick(NodeData, Target, isBoss); return; } else if (NodeData.RoleData.Img == "Copy_Icon_Gonggaopai")//留言板 { MapCtrl.OnRealEnd = new System.Action <bool>(delegate(bool isPath) { GlobalMenuManager.Instance.Open("LTInstanceMessageView", NodeData.RoleData.Id); }); MapCtrl.OnFloorClick(NodeData, Target); return; } MapCtrl.OnFloorClick(NodeData, Target); }
public override void OnFloorClickFunc(LTInstanceNode NodeData, Transform Target) { if (NodeData == null) return; MapCtrl.OnRealEnd = null; //设置OnRealEnd到达格子后需要做的事情 if (NodeData.RoleData.CampaignData.CampaignId > 0)//主线关卡 { LTGuideTips.MainInstanceCampaignId = NodeData.RoleData.CampaignData.CampaignId; MapCtrl.OnRealEnd = new System.Action<bool>(delegate (bool isPath) { MapCtrl.InstanceWaitUpdataMap(delegate { if (GuideNodeManager.IsGuide && !theFirstCampaignPass)//新手引导特殊处理步骤 { //是否已通关了第一关卡 FusionAudio.PostEvent("UI/New/Fight", true); InputBlockerManager.Instance.Block(InputBlockReason.UI_SERVER_REQUEST, 2f); MapCtrl.OnFloorClick(NodeData, Target); LTInstanceMapModel.Instance.RequestMainFightCampaign(NodeData.RoleData.CampaignData.CampaignId); return; } if (LTInstanceMapModel.Instance.WaitForDialoging ||DialoguePlayUtil.Instance.State) return;//剧情播放情况,不要再执行下面 if (IsMainQuick) { bool isCanQuick = NodeData.RoleData.CampaignData.Star == 0; bool isNotBoss = !Data.SceneTemplateManager.Instance.IsCampaignBoss(NodeData.RoleData.CampaignData.CampaignId.ToString()); if (isCanQuick && isNotBoss) { Instance.LTInstanceFloorTemp tmp = MapCtrl.GetNodeObjByPos(new Vector2(NodeData.x, NodeData.y)) as Instance.LTInstanceFloorTemp; if (tmp != null) { FusionAudio.PostEvent("UI/New/Fight", true); InputBlockerManager.Instance.Block(InputBlockReason.UI_SERVER_REQUEST, 2f); tmp.ShowQuickBattleFX(); MapCtrl.OnFloorClick(NodeData, Target); LTInstanceMapModel.Instance.RequestMainFightCampaign(NodeData.RoleData.CampaignData.CampaignId, 0, true); } return; } } Hashtable data = Johny.HashtablePool.Claim(); data.Add("id", NodeData.RoleData.CampaignData.CampaignId); data.Add("callback", new System.Action(delegate { MapCtrl.OnFloorClick(NodeData, Target); })); GlobalMenuManager.Instance.Open("LTMainInstanceCampaignView", data); }); }); MapCtrl.OnFloorClick(NodeData, Target); return; } else if (!string.IsNullOrEmpty(NodeData.RoleData.CampaignData.Password))//箱子需要密码才能打开,此处密码由前端检查 { MapCtrl.OnRealEnd = new System.Action<bool>(delegate (bool isPath) { GlobalMenuManager.Instance.Open("LTMainInstancePasswordBoxView", NodeData); }); MapCtrl.OnFloorClick(NodeData, Target); return; } else if (!string.IsNullOrEmpty(NodeData.RoleData.Model) && (NodeData.RoleData.Order == "Hero"))//奖励英雄 { MapCtrl.OnRealEnd = new System.Action<bool>(delegate (bool isPath) { //SetBlurTexState(false); Hashtable data = Johny.HashtablePool.Claim(); data.Add("NodeData", NodeData); data.Add("IsHire", false); data.Add("ChapterBg", mChapterTpl.ChapterBg); data.Add("Callback", new System.Action<bool>(delegate (bool isSucc) { //SetBlurTexState(true); if (isSucc) { MapCtrl.OnFloorClick(NodeData, Target); var charTpl = Hotfix_LT.Data.CharacterTemplateManager.Instance.GetHeroInfoByModel(NodeData.RoleData.Model); if (charTpl != null) { LTShowItemData itemData = new LTShowItemData((charTpl.id + 1).ToString(), 1, "hero", false); GlobalMenuManager.Instance.Open("LTShowGetPartnerUI", itemData); } } })); GlobalMenuManager.Instance.Open("LTMainInstanceGetHeroView", data); }); MapCtrl.OnFloorClick(NodeData, Target); return; } else if (!string.IsNullOrEmpty(NodeData.RoleData.Model) && (NodeData.RoleData.Order == "Hire"))//雇佣兵 { MapCtrl.OnRealEnd = new System.Action<bool>(delegate (bool isPath) { Hashtable data = Johny.HashtablePool.Claim(); data.Add("NodeData", NodeData); data.Add("IsHire", true); data.Add("ChapterBg", mChapterTpl.ChapterBg); data.Add("Callback", new System.Action<bool>(delegate (bool isSucc) { if (isSucc) { MapCtrl.OnFloorClick(NodeData, Target); var charTpl = Hotfix_LT.Data.CharacterTemplateManager.Instance.GetHeroInfoByModel(NodeData.RoleData.Model); if (charTpl != null) { MessageTemplateManager.ShowMessage(eMessageUIType.FloatingText, string.Format(EB.Localizer.GetString("ID_CHALLENGE_INSTANCE_HIRE_0"), charTpl.name)); } Instance.LTInstanceFloorTemp tmp = MapCtrl.GetNodeObjByPos(new Vector2(NodeData.x, NodeData.y)) as Instance.LTInstanceFloorTemp; if (tmp != null) { tmp.HideNotice(); } } })); GlobalMenuManager.Instance.Open("LTMainInstanceGetHeroView", data); }); MapCtrl.OnFloorClick(NodeData, Target); return; } else if (NodeData.RoleData.Img == "Copy_Icon_Gonggaopai") { MapCtrl.OnRealEnd = new System.Action<bool>(delegate (bool isPath) { GlobalMenuManager.Instance.Open("LTInstanceMessageView", NodeData.RoleData.Id); }); MapCtrl.OnFloorClick(NodeData, Target); return; } MapCtrl.OnFloorClick(NodeData, Target); }