Пример #1
0
 private void Start()
 {
     _controller    = transform.root.GetComponent <Controller>();
     _characterInfo = transform.root.GetComponent <CharacterInformation>();
     _grabHandler   = transform.root.GetComponent <GrabHandler>();
     _isVitalPart   = GetComponent <Torso>() || GetComponent <Head>() || GetComponent <LeftLeg>() || GetComponent <RightLeg>();
 }
Пример #2
0
 private void Start()
 {
     _fighting      = GetComponent <Fighting>();
     _standing      = GetComponent <Standing>();
     _characterInfo = GetComponent <CharacterInformation>();
     _controller    = GetComponent <Controller>();
     _grabHandler   = GetComponent <GrabHandler>();
 }
Пример #3
0
    private void Start()
    {
        _rightLeg = GetComponentInChildren <RightLeg>().transform;
        _leftLeg  = GetComponentInChildren <LeftLeg>().transform;

        _characterInfo = GetComponent <CharacterInformation>();
        _grabHandler   = GetComponent <GrabHandler>();

        _timer = 0f;
    }
Пример #4
0
    private void OnTriggerExit(Collider other)
    {
        if (_grabHander == null)
        {
            _grabHander = transform.root.GetComponent <GrabHandler>();
        }

        if (m_grabItem == other.transform.GetComponent <ItemProperty>())
        {
            m_grabItem = null;
        }

        if (m_grabPlayer == other.transform.root.GetComponent <Player>())
        {
            m_grabPlayer = null;
        }
    }
Пример #5
0
    private void Start()
    {
        _rigs          = GetComponentsInChildren <Rigidbody>();
        _characterInfo = GetComponent <CharacterInformation>();
        _healthHandler = GetComponent <HealthHandler>();
        _controller    = GetComponent <Controller>();
        _grabHandler   = GetComponent <GrabHandler>();

        if (GetComponentInChildren <LeftKnee>() != null)
        {
            _leftKneeForce = GetComponentInChildren <LeftKnee>().GetComponent <ConstantForce>();
        }

        if (GetComponentInChildren <RightKnee>() != null)
        {
            _rightKneeForce = GetComponentInChildren <RightKnee>().GetComponent <ConstantForce>();
        }
    }
Пример #6
0
    public void Jump(bool force = false, bool forceWallJump = false)
    {
        if ((m_characterInfo.m_sinceGrounded < 0.2f || m_characterInfo.m_sinceWall < 0.2f || GrabHandler.HoldSomethingAnchored) &&
            m_characterInfo.m_sinceFallen > 0f &&
            m_characterInfo.m_sinceJumped > 0.3f)
        {
            if (m_characterInfo.m_sinceWall > m_characterInfo.m_sinceGrounded)
            {
                m_characterInfo.WallNormal = Vector3.zero;
            }
            if (GrabHandler.HoldSomething)
            {
                GrabHandler.EndGrab();
            }

            m_characterInfo.m_sinceGrounded = 1f;
            m_characterInfo.m_sinceWall     = 1f;
            m_characterInfo.m_sinceJumped   = 0f;
            TMovementState = m_movement.Jump(force, forceWallJump) ? MovementState.WallJump : MovementState.GroundJump;
        }
        else if (force)
        {
            if (m_characterInfo.m_sinceWall > m_characterInfo.m_sinceGrabbed)
            {
                m_characterInfo.WallNormal = Vector3.zero;
            }
            if (GrabHandler.HoldSomething)
            {
                GrabHandler.EndGrab();
            }

            m_characterInfo.m_sinceGrounded = 1f;
            m_characterInfo.m_sinceWall     = 1f;
            m_characterInfo.m_sinceJumped   = 0f;
            TMovementState = m_movement.Jump(force, forceWallJump) ? MovementState.WallJump : MovementState.GroundJump;
        }
    }
Пример #7
0
    private void OnTriggerEnter(Collider other)
    {
        if (_grabHander == null)
        {
            _grabHander = transform.root.GetComponent <GrabHandler>();
        }

        if (_grabHander.m_isHoldSomething || other.GetComponent <Rigidbody>() == null)
        {
            return;
        }

        m_grabItem = other.transform.GetComponent <ItemProperty>();

        // In case repeat m_grabItem
        foreach (var grabber in _grabHander.m_grabbers)
        {
            if (grabber != this && grabber.m_grabItem == m_grabItem)
            {
                m_grabItem = null;
                break;
            }
        }

        m_grabPlayer = other.transform.root.GetComponent <Player>();

        // In case repeat m_grabPlayer
        foreach (var grabber in _grabHander.m_grabbers)
        {
            if (grabber != this && grabber.m_grabPlayer == m_grabPlayer)
            {
                m_grabPlayer = null;
                break;
            }
        }
    }
Пример #8
0
 private void Start()
 {
     _grabHander = transform.root.GetComponent <GrabHandler>();
 }
Пример #9
0
 private void Start()
 {
     m_grabHandler = transform.root.GetComponent <GrabHandler>();
     m_rb          = GetComponent <Rigidbody>();
 }