コード例 #1
0
    // Update is called once per frame

    private void OnTriggerEnter(Collider other)
    {
        Debug.Log("Trigger触发");
        PlayerInputerController pc = other.GetComponent <PlayerInputerController>();

        if (pc != null && pc.isActiveAndEnabled)
        {
            TeleporterDefine td = DataManager.Instance.Teleporters[this.ID];
            if (td == null)
            {
                Debug.LogFormat("TeleporterObject:Character[{0}] Enter TeleporterObject[{1}],But TeleporterDefine not exixted",
                                pc.character.nCharacterInfo.Name, this.ID);
                return;
            }
            Debug.LogFormat("TeleporterObject:Character[{0}] Enter TeleporterObject[{1}:{2}]",
                            pc.character.nCharacterInfo.Name, this.ID, td.Name);
            if (td.LinkTo > 0)
            {
                if (DataManager.Instance.Teleporters.ContainsKey(td.ID))
                {
                    MapService.Instance.SendMapTeleport(this.ID);
                }
                else
                {
                    Debug.LogFormat("Teleporter ID:{0} LinkId{1} error!", td.ID, td.LinkTo);
                }
            }
        }
    }
コード例 #2
0
    private void InitGameObject(Character cha, GameObject go)
    {
        EntiyController ec = go.GetComponent <EntiyController>();

        if (ec != null)
        {
            ec.entity   = cha;
            ec.isPlayer = cha.IsCurrentPlayer;
            ec.Ride(cha.nCharacterInfo.Ride);
        }

        PlayerInputerController pc = go.GetComponent <PlayerInputerController>();

        if (pc != null)
        {
            //确定是否为当前控制角色
            if (cha.IsCurrentPlayer)
            {
                User.Instance.currentCharacterObject = pc;
                MainPlayerCamera.Instance.player     = go;
                pc.enabled         = true;
                pc.isPlayer        = true;
                pc.character       = cha;
                pc.entiyController = ec;
            }
            else
            {
                pc.enabled = false;
            }
        }
    }