Esempio n. 1
0
 public void SingleFightCommand(SMsgFightCommand_SC sMsgFightCommand_SC)
 {
     if (m_FSMSystem.CurrentStateID == StateID.MonsterAttack)
     {
         int currentLevel = ((MonsterAttackState)m_FSMSystem.CurrentState).CurrentSkillBase.SkillData.m_breakLevel;
         int nextLevel    = SkillDataManager.Instance.GetSkillConfigData(sMsgFightCommand_SC.nFightCode).m_breakLevel;
         if (nextLevel <= currentLevel)
         {
             return;
         }
         BulletManager.Instance.TryDestroyBreakBullets(this.RoleDataModel.SMsg_Header.uidEntity);
     }
     m_MonsterAttackState.SingleAttack(sMsgFightCommand_SC);
     m_FSMSystem.PerformTransition(Transition.MonsterToAttack);
 }
Esempio n. 2
0
    //收到破防消息

    //
    CommandCallbackType ReceiveBattleCommondSingle(byte[] dataBuffer, int socketID)
    {
        var sMsgFightCommondSC = SMsgFightCommand_SC.ParseResultPackage(dataBuffer);

        if (GameManager.Instance.CreateEntityIM)
        {
            RaiseEvent(EventTypeEnum.SingleFigntCommand.ToString(), sMsgFightCommondSC);
        }
        else
        {
            PlayerFactory.Instance.RegisterPlayerAfterSceneLoadedFun("ReceiveBattleCommondSingle", () => {
                RaiseEvent(EventTypeEnum.SingleFigntCommand.ToString(), sMsgFightCommondSC);
            });
        }
        return(CommandCallbackType.Continue);
    }
Esempio n. 3
0
    public void SingleAttack(SMsgFightCommand_SC sMsgFightCommand_SC)
    {
        m_currentSkillID = sMsgFightCommand_SC.nFightCode;
        m_FightTargetID  = sMsgFightCommand_SC.uidTarget;

        m_shouldPos = m_MonsterBehaviour.ThisTransform.position;

        m_targetPos    = Vector3.zero.GetFromServer(sMsgFightCommand_SC.xMouse, sMsgFightCommand_SC.yMouse);
        m_rangeTypePos = m_targetPos;

        float rad = Mathf.Atan2(-1 * sMsgFightCommand_SC.yDirect, sMsgFightCommand_SC.xDirect);

        m_currentAngle = 90 - (rad * Mathf.Rad2Deg);

        Vector3 diretPos = new Vector3(sMsgFightCommand_SC.xDirect, m_high, -1 * sMsgFightCommand_SC.yDirect);

        m_attackLookAtPos = m_shouldPos + diretPos;
    }
Esempio n. 4
0
        void ReceiveFightCommondHandle(INotifyArgs inotifyArgs)
        {
            SMsgFightCommand_SC serData = (SMsgFightCommand_SC)inotifyArgs;

            SkillFight(serData.nFightCode);
        }