Ejemplo n.º 1
0
        void OnClickPlayer(CEventBaseArgs data)
        {
            // 破碎死域要屏蔽这个界面
            if (SceneHelp.Instance.IgnoreClickPlayer == true)
            {
                return;
            }

            GameObject selectedObj = (GameObject)data.arg;

            if (selectedObj != null)
            {
                ActorMono actMono = ActorHelper.GetActorMono(selectedObj);
                if (actMono != null)
                {
                    Actor actor = actMono.BindActor;
                    if (actor != null && (actor is LocalPlayer) == false && ActorHelper.IsShemale(actor.UID.obj_idx) == false)
                    {
                        Dictionary <string, string> playerInfo = new Dictionary <string, string>();
                        playerInfo.Clear();
                        playerInfo.Add("uuid", actor.UID.obj_idx.ToString());
                        xc.ui.ugui.UIManager.Instance.ShowWindow("UIWatchPlayerWindow", playerInfo);
                    }
                }
            }
        }
Ejemplo n.º 2
0
        public bool TriggerDialog(uint dialogId, System.Action finishedCallback, Transform source)
        {
            if (source != null)
            {
                ActorMono actMono = ActorHelper.GetActorMono(source);
                if (actMono != null)
                {
                    NpcPlayer sourceActor = actMono.BindActor as NpcPlayer;
                    if (sourceActor != null)
                    {
                        sourceActor.TurnToLocalPlayer();
                    }
                }
            }

            return(TriggerDialog(dialogId, finishedCallback));
        }
Ejemplo n.º 3
0
        //--------------------------------------------------------
        //  客户端消息
        //--------------------------------------------------------
        private void OnNpcClicked(CEventBaseArgs args)
        {
            if (args == null || args.arg == null)
            {
                return;
            }

            if (UIInputEvent.TouchedUI() == true)
            {
                return;
            }

            GameObject npcObject = args.arg as GameObject;

            if (npcObject == null)
            {
                return;
            }

            var mono = ActorHelper.GetActorMono(npcObject.gameObject);

            if (mono == null)
            {
                return;
            }

            NpcPlayer targetNpc = mono.BindActor as NpcPlayer;

            if (targetNpc == null)
            {
                return;
            }

            // 点击npc后已经取消任务的导航了,所以要把导航任务清空
            TaskManager.Instance.NavigatingTask = null;

            //MissionManager.Instance.NotifyMetNpc((uint)targetNpc.NpcData.Id);
            targetNpc.OnClicked();
        }