void OnTriggerStay(Collider collider) { ArcherMovement movement = collider.gameObject.GetComponent <ArcherMovement>(); if (movement) { _playerPos = collider.gameObject.transform.position; _playerDir = collider.gameObject.transform.forward; _speed = movement.Speed; _speed = movement.Sprint ? _speed * movement.SprintScale : _speed; _forceDir = _center - _playerPos; fallOff = Mathf.Pow(Mathf.Clamp(0.0f, 1.0f, (3.9f - Vector3.Magnitude(_forceDir)) / Falloff), 8.0f); forcePower = Mathf.Max(Vector3.Dot(_playerDir, Vector3.Normalize(_center - _playerPos)), 0.0f) * _speed / 4.0f * fallOff; if (forcePower > _forcePower) { _forcePower = Mathf.SmoothStep(_forcePower, forcePower, 10.1f * Time.deltaTime); } else { _forcePower = Mathf.SmoothStep(_forcePower, forcePower, 8.0f * Time.deltaTime); } SetShaderParameters(); } }
void Awake() { _animation = GetComponent <ArcherAnimation>(); _movement = GetComponent <ArcherMovement>(); _rb = GetComponent <Rigidbody>(); _photonView = GetComponent <PhotonView>(); _respawn = GameObject.Find("RespawnPoint").transform; Crown.SetActive(false); }
public void Setup() { // establish component connections m_Movement = m_Instance.GetComponent <ArcherMovement>(); m_Shooting = m_Instance.GetComponent <ArcherShooting>(); // set player numbers m_Movement.playerNumber = m_PlayerNumber; m_Shooting.playerNumber = m_PlayerNumber; m_Shooting.playerColor = m_PlayerColor; // setup player ui label m_ColoredPlayerText = "<color=#" + ColorUtility.ToHtmlStringRGB(m_PlayerColor) + ">PLAYER " + m_PlayerNumber + "</color>"; // change indicator color m_Instance.GetComponentInChildren <SpriteRenderer>().color = m_PlayerColor; }
// Use this for initialization void Start() { movementScript = GetComponent <ArcherMovement> (); }