Exemplo n.º 1
0
 public NFFallState(GameObject gameObject, NFAnimaStateType eState, NFAnimaStateMachine xStateMachine, float fHeartBeatTime, float fExitTime, bool input = false)
     : base(gameObject, eState, xStateMachine, fHeartBeatTime, fExitTime, input)
 {
     xHeroMotor   = gameObject.GetComponent <NFHeroMotor>();
     mLoginModule = NFPluginManager.Instance().FindModule <NFLoginModule>();
     mSceneModule = NFPluginManager.Instance().FindModule <NFSceneModule>();
 }
Exemplo n.º 2
0
    public override void Enter(GameObject gameObject, int index)
    {
        xInput     = gameObject.GetComponent <NFHeroInput>();
        xHeroMotor = gameObject.GetComponent <NFHeroMotor>();

        base.Enter(gameObject, index);
    }
Exemplo n.º 3
0
 public NFNormalSkill5(GameObject gameObject, NFAnimaStateType eState, NFAnimaStateMachine xStateMachine, float fHeartBeatTime, float fExitTime, bool input = false)
     : base(gameObject, eState, xStateMachine, fHeartBeatTime, fExitTime, input)
 {
     xBodyIdent = gameObject.GetComponent <NFBodyIdent>();
     xInput     = gameObject.GetComponent <NFHeroInput>();
     xHeroMotor = gameObject.GetComponent <NFHeroMotor>();
     xHeroSync  = gameObject.GetComponent <NFHeroSync>();
 }
Exemplo n.º 4
0
    public override void Enter(GameObject gameObject, int index)
    {
        base.Enter(gameObject, index);

        fStartTime = Time.time;
        bShowUI    = false;

        xHeroMotor = gameObject.GetComponent <NFHeroMotor>();
        xHeroMotor.Stop();
    }
Exemplo n.º 5
0
    public override void Enter(GameObject gameObject, int index)
    {
        xBodyIdent = gameObject.GetComponent <NFBodyIdent>();
        xInput     = gameObject.GetComponent <NFHeroInput>();
        xHeroAnima = gameObject.GetComponent <NFAnimatStateController>();
        xHeroMotor = gameObject.GetComponent <NFHeroMotor>();


        base.Enter(gameObject, index);
    }
Exemplo n.º 6
0
    void Start()
    {
        mAnimatStateController = GetComponent <NFAnimatStateController>();
        xHeroMotor             = GetComponent <NFHeroMotor>();

        mAnimatStateController.GetAnimationEvent().AddOnDamageDelegation(OnDamageDelegation);
        mAnimatStateController.GetAnimationEvent().AddOnEndAnimaDelegation(OnEndAnimaDelegation);
        mAnimatStateController.GetAnimationEvent().AddOnStartAnimaDelegation(OnStartAnimaDelegation);
        mAnimatStateController.GetAnimationEvent().AddBulletTouchPosDelegation(OnBulletTouchPositionDelegation);
        mAnimatStateController.GetAnimationEvent().AddBulletTouchTargetDelegation(OnBulletTouchTargetDelegation);
    }
Exemplo n.º 7
0
        public bool AttackObject(NFGUID ident, Hashtable beAttackInfo, string strStateName, Hashtable resultInfo)
        {
            if (mhtObject.ContainsKey(ident))
            {
                GameObject  xGameObject = (GameObject)mhtObject[ident];
                NFHeroMotor motor       = xGameObject.GetComponent <NFHeroMotor>();
                //motor.Stop();
            }

            return(false);
        }
Exemplo n.º 8
0
    private void Start()
    {
        mxHeroMotor        = GetComponent <NFHeroMotor>();
        mxSyncBuffer       = GetComponent <NFHeroSyncBuffer>();
        mxBodyIdent        = GetComponent <NFBodyIdent>();
        mAnimaStateMachine = GetComponent <NFAnimaStateMachine>();

        mxNetModule  = NFPluginManager.Instance().FindModule <NFNetModule>();
        mLoginModule = NFPluginManager.Instance().FindModule <NFLoginModule>();
        mHelpModule  = NFPluginManager.Instance().FindModule <NFHelpModule>();
    }
Exemplo n.º 9
0
    public override void Enter(GameObject gameObject, int index)
    {
        xBodyIdent = gameObject.GetComponent <NFBodyIdent> ();
        xHeroAnima = gameObject.GetComponent <NFAnimatStateController> ();
        xHeroMotor = gameObject.GetComponent <NFHeroMotor> ();

        base.Enter(gameObject, index);

        xHeroMotor.speed = xHeroMotor.runSpeed;
        standCount       = 0;
    }
Exemplo n.º 10
0
    private void Start()
    {
        mxHeroMotor            = GetComponent <NFHeroMotor>();
        mxSyncBuffer           = GetComponent <NFHeroSyncBuffer>();
        mxBodyIdent            = GetComponent <NFBodyIdent>();
        mAnimaStateMachine     = GetComponent <NFAnimaStateMachine>();
        mAnimatStateController = GetComponent <NFAnimatStateController>();

        mNetModule    = NFRoot.Instance().GetPluginManager().FindModule <NFNetModule>();
        mLoginModule  = NFRoot.Instance().GetPluginManager().FindModule <NFLoginModule>();
        mHelpModule   = NFRoot.Instance().GetPluginManager().FindModule <NFHelpModule>();
        mKernelModule = NFRoot.Instance().GetPluginManager().FindModule <NFIKernelModule>();
    }
Exemplo n.º 11
0
        //////////////////////////////////
        ///
        private void EGMI_ACK_MOVE(int id, MemoryStream stream)
        {
            Debug.Log("Move " + Time.time);

            NFMsg.MsgBase xMsg = NFMsg.MsgBase.Parser.ParseFrom(stream);

            NFMsg.ReqAckPlayerPosSync xData = NFMsg.ReqAckPlayerPosSync.Parser.ParseFrom(xMsg.MsgData);

            if (xData.SyncUnit.Count <= 0)
            {
                return;
            }

            NFMsg.PosSyncUnit syncUnit = xData.SyncUnit[0];

            NFGUID xMover = mHelpModule.PBToNF(syncUnit.Mover);

            if (xMover.IsNull())
            {
                Debug.LogError("xMover " + Time.time);
                return;
            }

            if (xMover == mLoginModule.mRoleID)
            {
                return;
            }

            GameObject xGameObject = mSceneModule.GetObject(xMover);

            if (!xGameObject)
            {
                Debug.LogError("xGameObject " + Time.time);
                return;
            }

            NFHeroMotor xHeroMotor = xGameObject.GetComponent <NFHeroMotor>();

            if (!xHeroMotor)
            {
                Debug.LogError("xHeroSync " + Time.time);
                return;
            }

            UnityEngine.Vector3 v = new UnityEngine.Vector3();
            v.x = syncUnit.Pos.X;
            v.y = syncUnit.Pos.Y;
            v.z = syncUnit.Pos.Z;
            xHeroMotor.MoveTo(v);
        }
Exemplo n.º 12
0
        public void BeforeLoadSceneEnd(int nSceneID)
        {
            foreach (var v in mhtObject)
            {
                NFHeroMotor heroMotor = v.Value.GetComponent <NFHeroMotor>();
                heroMotor.ResetHeight();
            }

            NFSDK.NFIElement xElement = mElementModule.GetElement(nSceneID.ToString());
            if (null != xElement)
            {
                string strName   = xElement.QueryString(NFrame.Scene.SceneName);
                int    sceneType = (int)xElement.QueryInt(NFrame.Scene.Type);
            }
        }
Exemplo n.º 13
0
        public bool MoveImmune(NFGUID ident, Vector3 vPos, float fTime, bool bFaceToPos)
        {
            if (mhtObject.ContainsKey(ident))
            {
                GameObject  xGameObject = (GameObject)mhtObject[ident];
                NFHeroMotor motor       = xGameObject.GetComponent <NFHeroMotor>();
                if (motor)
                {
                    motor.Stop();
                    motor.MoveToImmune(vPos, fTime, bFaceToPos);
                }
            }

            return(false);
        }
Exemplo n.º 14
0
    public override void Enter(GameObject gameObject, int index)
    {
        xBodyIdent = gameObject.GetComponent <NFBodyIdent>();
        xInput     = gameObject.GetComponent <NFHeroInput>();
        xHeroAnima = gameObject.GetComponent <NFAnimatStateController>();
        xHeroMotor = gameObject.GetComponent <NFHeroMotor>();

        mCharacterMovement = gameObject.GetComponent <CharacterMovement>();

        base.Enter(gameObject, index);

        Vector3 v = new Vector3(gameObject.transform.position.x, mCharacterMovement.groundHit.groundPoint.y, gameObject.transform.position.z);

        gameObject.transform.position = v;
    }
Exemplo n.º 15
0
    void Start()
    {
        mStateMachineMng = GetComponent <NFAnimaStateMachine>();
        mBodyIdent       = GetComponent <NFBodyIdent>();
        mHeroMotor       = GetComponent <NFHeroMotor>();

        mUIModule    = NFPluginManager.Instance().FindModule <NFUIModule>();
        mLoginModule = NFPluginManager.Instance().FindModule <NFLoginModule>();

        mKernelModule = NFPluginManager.Instance().FindModule <NFIKernelModule>();

        mKernelModule.RegisterPropertyCallback(mBodyIdent.GetObjectID(), NFrame.Player.MOVE_SPEED, PropertyMoveSpeedHandler);
        mKernelModule.RegisterPropertyCallback(mBodyIdent.GetObjectID(), NFrame.Player.ATK_SPEED, PropertyAttackSpeedHandler);

        mHeroMotor.angularSpeed = 0f;
    }
Exemplo n.º 16
0
    public NFIState(GameObject gameObject, NFAnimaStateType eState, NFAnimaStateMachine xStateMachine, float fHeartBeatTime, float fExitTime, bool input)
    {
        mGameObject     = gameObject;
        meState         = eState;
        mfExitTime      = fExitTime;
        mfHeartBeatTime = fHeartBeatTime;
        mStateMachine   = xStateMachine;

        mfEnterTime = Time.time;
        mbInput     = input;

        mAnimatStateController = gameObject.GetComponent <NFAnimatStateController>();
        mRenderObject          = gameObject.GetComponent <NFBodyIdent>().xRenderObject.gameObject;

        mHeroMotor = gameObject.GetComponent <NFHeroMotor>();
        mHeroInput = gameObject.GetComponent <NFHeroInput>();
    }
Exemplo n.º 17
0
    public override void Enter(GameObject gameObject, int index)
    {
        xBodyIdent = gameObject.GetComponent <NFBodyIdent>();
        xHeroMotor = gameObject.GetComponent <NFHeroMotor>();
        xHeroSync  = gameObject.GetComponent <NFHeroSync>();

        base.Enter(gameObject, index);

        if (mStateMachine.IsMainRole())
        {
            //xHeroSync.SendSyncMessage();
        }
        //看是否还按住移动选项,如果按住,则继续walk

        if (!xHeroMotor.isOnGround)
        {
            mAnimatStateController.PlayAnimaState(NFAnimaStateType.Fall, -1);
        }
    }
Exemplo n.º 18
0
        public void SetMainRoleAgentState(bool bActive)
        {
            if (!mhtObject.ContainsKey(mLoginModule.mRoleID))
            {
                return;
            }

            GameObject xGameObject = (GameObject)mhtObject[mLoginModule.mRoleID];

            if (null == xGameObject)
            {
                return;
            }

            NFHeroMotor xMotor = xGameObject.GetComponent <NFHeroMotor>();

            if (null == xMotor)
            {
                return;
            }
        }
Exemplo n.º 19
0
        public bool MoveTo(NFGUID ident, Vector3 vTar, float fSpeed, bool bRun)
        {
            if (fSpeed <= 0.01f)
            {
                return(false);
            }

            if (mhtObject.ContainsKey(ident))
            {
                GameObject  xGameObject = (GameObject)mhtObject[ident];
                NFHeroMotor xMotor      = xGameObject.GetComponent <NFHeroMotor>();
                NFBodyIdent xBodyIdent  = xGameObject.GetComponent <NFBodyIdent>();
                if (xMotor && xBodyIdent)
                {
                    xBodyIdent.LookAt(vTar);
                    xMotor.movement.Move(vTar - xGameObject.transform.position, Vector3.Distance(vTar, xGameObject.transform.position));
                }
            }

            return(false);
        }
Exemplo n.º 20
0
        public void InitPlayerComponent(NFGUID xID, GameObject self, bool bMainRole)
        {
            if (null == self)
            {
                return;
            }

            if (!self.GetComponent <Rigidbody>())
            {
                self.AddComponent <Rigidbody>();
            }

            if (!self.GetComponent <NFHeroSyncBuffer>())
            {
                self.AddComponent <NFHeroSyncBuffer>();
            }

            if (!self.GetComponent <NFHeroSync>())
            {
                self.AddComponent <NFHeroSync>();
            }


            NFHeroInput xInput = self.GetComponent <NFHeroInput>();

            if (!xInput)
            {
                xInput = self.AddComponent <NFHeroInput>();
            }

            if (bMainRole)
            {
                xInput.enabled = true;
                xInput.SetInputEnable(true);
            }
            else
            {
                xInput.enabled = false;
                xInput.SetInputEnable(false);
            }

            if (!self.GetComponent <GroundDetection>())
            {
                GroundDetection groundDetection = self.AddComponent <GroundDetection>();
                groundDetection.enabled    = true;
                groundDetection.groundMask = -1;
            }

            if (!self.GetComponent <CharacterMovement>())
            {
                CharacterMovement characterMovement = self.AddComponent <CharacterMovement>();
                characterMovement.enabled = true;
            }

            if (!self.GetComponent <NFHeroMotor>())
            {
                NFHeroMotor xHeroMotor = self.AddComponent <NFHeroMotor>();
                xHeroMotor.enabled = true;
            }

            if (!self.GetComponent <NFAnimatStateController>())
            {
                NFAnimatStateController xHeroAnima = self.AddComponent <NFAnimatStateController>();
                xHeroAnima.enabled = true;
            }


            if (!self.GetComponent <NFAnimaStateMachine>())
            {
                NFAnimaStateMachine xHeroAnima = self.AddComponent <NFAnimaStateMachine>();
                xHeroAnima.enabled = true;
            }

            if (bMainRole)
            {
                CapsuleCollider xHeroCapsuleCollider = self.GetComponent <CapsuleCollider>();
                xHeroCapsuleCollider.isTrigger = false;
            }
            else
            {
                CapsuleCollider xHeroCapsuleCollider = self.GetComponent <CapsuleCollider>();
                Rigidbody       rigidbody            = self.GetComponent <Rigidbody>();

                string         configID = mKernelModule.QueryPropertyString(xID, NFrame.IObject.ConfigID);
                NFMsg.ENPCType npcType  = (NFMsg.ENPCType)mElementModule.QueryPropertyInt(configID, NFrame.NPC.NPCType);
                //NFMsg.esub npcSubType = (NFMsg.ENPCType)mElementModule.QueryPropertyInt(configID, NFrame.NPC.NPCSubType);
                if (npcType == NFMsg.ENPCType.TurretNpc)
                {
                    //is trigger must false if it is a building
                    // and the kinematic must true
                    xHeroCapsuleCollider.isTrigger = false;
                    //rigidbody.isKinematic = true;
                    //rigidbody.useGravity = true;
                    rigidbody.mass = 10000;
                }
                else
                {
                    xHeroCapsuleCollider.isTrigger = true;
                }

                /*
                 * if (mKernelModule.QueryPropertyObject(xID, NFrame.NPC.MasterID) == mLoginModule.mRoleID)
                 * {
                 *  //your building or your clan member building
                 *  if (!self.GetComponent<FogCharacter>())
                 *  {
                 *      FogCharacter fogCharacter = self.AddComponent<FogCharacter>();
                 *      fogCharacter.enabled = true;
                 *      fogCharacter.radius = 8;
                 *  }
                 * }
                 * else
                 * {
                 *  if (!self.GetComponent<FogAgent>())
                 *  {
                 *      FogAgent fogAgent = self.AddComponent<FogAgent>();
                 *      fogAgent.enabled = true;
                 *  }
                 * }
                 */
            }
        }
Exemplo n.º 21
0
        public void InitPlayerComponent(NFGUID xID, GameObject self, bool bMainRole)
        {
            if (null == self)
            {
                return;
            }

            if (!self.GetComponent <Rigidbody>())
            {
                self.AddComponent <Rigidbody>();
            }

            if (!self.GetComponent <NFHeroSyncBuffer>())
            {
                self.AddComponent <NFHeroSyncBuffer>();
            }

            if (!self.GetComponent <NFHeroSync>())
            {
                self.AddComponent <NFHeroSync>();
            }

            NFHeroInput xInput = self.GetComponent <NFHeroInput>();

            if (!xInput)
            {
                xInput = self.AddComponent <NFHeroInput>();
            }

            if (bMainRole)
            {
                xInput.enabled = true;
                xInput.SetInputEnable(true);
            }
            else
            {
                xInput.enabled = false;
                xInput.SetInputEnable(false);
            }

            if (!self.GetComponent <GroundDetection>())
            {
                GroundDetection groundDetection = self.AddComponent <GroundDetection>();
                groundDetection.enabled    = true;
                groundDetection.groundMask = -1;
            }

            if (!self.GetComponent <CharacterMovement>())
            {
                CharacterMovement characterMovement = self.AddComponent <CharacterMovement>();
                characterMovement.enabled = true;
            }

            if (!self.GetComponent <NFHeroMotor>())
            {
                NFHeroMotor xHeroMotor = self.AddComponent <NFHeroMotor>();
                xHeroMotor.enabled = true;
            }

            if (!self.GetComponent <NFAnimatStateController>())
            {
                NFAnimatStateController xHeroAnima = self.AddComponent <NFAnimatStateController>();
                xHeroAnima.enabled = true;
            }

            if (!self.GetComponent <NFAnimaStateMachine>())
            {
                NFAnimaStateMachine xHeroAnima = self.AddComponent <NFAnimaStateMachine>();
                xHeroAnima.enabled = true;
            }

            if (bMainRole)
            {
                if (Camera.main)
                {
                    NFHeroCameraFollow xHeroCameraFollow = Camera.main.GetComponent <NFHeroCameraFollow>();
                    if (!xHeroCameraFollow)
                    {
                        xHeroCameraFollow = Camera.main.GetComponentInParent <NFHeroCameraFollow>();
                    }

                    xHeroCameraFollow.target = self.transform;
                }


                CapsuleCollider xHeroCapsuleCollider = self.GetComponent <CapsuleCollider>();
                xHeroCapsuleCollider.isTrigger = false;
            }
            else
            {
                CapsuleCollider xHeroCapsuleCollider = self.GetComponent <CapsuleCollider>();
                Rigidbody       rigidbody            = self.GetComponent <Rigidbody>();

                string         configID = mKernelModule.QueryPropertyString(xID, NFrame.IObject.ConfigID);
                NFMsg.ENPCType npcType  = (NFMsg.ENPCType)mElementModule.QueryPropertyInt(configID, NFrame.NPC.NPCType);
                //NFMsg.esub npcSubType = (NFMsg.ENPCType)mElementModule.QueryPropertyInt(configID, NFrame.NPC.NPCSubType);
                if (npcType == NFMsg.ENPCType.TurretNpc)
                {
                    //is trigger must false if it is a building
                    // and the kinematic must true
                    xHeroCapsuleCollider.isTrigger = false;
                    //rigidbody.isKinematic = true;
                    //rigidbody.useGravity = true;
                    rigidbody.mass = 10000;
                }
                else
                {
                    xHeroCapsuleCollider.isTrigger = true;
                }
            }
        }
Exemplo n.º 22
0
        //////////////////////////////////
        ///
        private void EGMI_ACK_MOVE(int id, MemoryStream stream)
        {
            Debug.Log("Move " + Time.time);

            NFMsg.MsgBase xMsg = NFMsg.MsgBase.Parser.ParseFrom(stream);

            NFMsg.ReqAckPlayerPosSync xData = NFMsg.ReqAckPlayerPosSync.Parser.ParseFrom(xMsg.MsgData);

            if (xData.SyncUnit.Count <= 0)
            {
                return;
            }

            for (int i = 0; i < xData.SyncUnit.Count; ++i)
            {
                NFMsg.PosSyncUnit syncUnit = xData.SyncUnit[i];

                NFGUID xMover = mHelpModule.PBToNF(syncUnit.Mover);

                if (xMover.IsNull())
                {
                    Debug.LogError("xMover " + Time.time);
                    return;
                }

                if (xMover == mLoginModule.mRoleID && syncUnit.Type == PosSyncUnit.Types.EMoveType.EmtWalk)
                {
                    //平常自己行走不需要同步
                    return;
                }

                GameObject xGameObject = mSceneModule.GetObject(xMover);
                if (!xGameObject)
                {
                    Debug.LogError("xGameObject " + Time.time);
                    return;
                }

                NFHeroMotor xHeroMotor = xGameObject.GetComponent <NFHeroMotor>();
                if (!xHeroMotor)
                {
                    Debug.LogError("xHeroSync " + Time.time);
                    return;
                }

                NFHeroSync xHeroSync = xGameObject.GetComponent <NFHeroSync>();
                if (!xHeroSync)
                {
                    Debug.LogError("xHeroSync " + Time.time);
                    return;
                }
                UnityEngine.Vector3 v = new UnityEngine.Vector3();
                v.x = syncUnit.Pos.X;
                v.y = syncUnit.Pos.Y;
                v.z = syncUnit.Pos.Z;

                if (syncUnit.Type == PosSyncUnit.Types.EMoveType.EmtWalk)
                {
                    xHeroSync.AddSyncData(xData.Sequence, syncUnit);
                }
                else if (syncUnit.Type == PosSyncUnit.Types.EMoveType.EetSpeedy)
                {
                    xHeroMotor.MoveToImmune(v, 0.1f);
                }
                else if (syncUnit.Type == PosSyncUnit.Types.EMoveType.EetTeleport)
                {
                    xHeroMotor.MoveToImmune(v, 0.001f);
                }
            }
        }
Exemplo n.º 23
0
 public NFDashForwardState(GameObject gameObject, NFAnimaStateType eState, NFAnimaStateMachine xStateMachine, float fHeartBeatTime, float fExitTime, bool input = false)
     : base(gameObject, eState, xStateMachine, fHeartBeatTime, fExitTime, input)
 {
     xHeroMotor = gameObject.GetComponent <NFHeroMotor>();
 }