Patrice Vignola 0511637874 Merge branch 'master' of https://github.com/ConjureETS/PillowFight
Conflicts:
	Assets/Scripts/Child.cs
	ProjectSettings/TagManager.asset
2015-08-22 02:30:06 -04:00

82 lines
1.8 KiB
C#

using UnityEngine;
using System.Collections;
[RequireComponent(typeof(Rigidbody))]
public class Child : MonoBehaviour
{
public float Speed = 10f;
public float JumpForce = 10f;
public GameObject GroundCheck;
private Rigidbody _rb;
private bool _isGrounded = false;
private float _xValue;
private float _zValue;
public Pillow pillow;
void Awake()
{
_rb = GetComponent<Rigidbody>();
}
void Update()
{
_isGrounded = IsGrounded();
Debug.Log(_isGrounded);
}
void OnTriggerEnter(Collider other) {
if (other.tag == "Pillow") {
pillow = other.GetComponent<Pillow>();
other.transform.parent = transform; // make the pillow a child of Child
// TODO: place the pillow correctly or animate or something...
Debug.Log(_isGrounded);
}
}
void FixedUpdate()
{
// We move the child depending on the camera orientation
Vector3 forwardDir = Camera.main.transform.forward;
Vector3 rightDir = Camera.main.transform.right;
forwardDir *= _zValue * Speed;
forwardDir.y = _rb.velocity.y;
rightDir *= _xValue * Speed;
rightDir.y = 0f;
_rb.velocity = forwardDir + rightDir;
}
private bool IsGrounded()
{
Collider[] colliders = Physics.OverlapSphere(GroundCheck.transform.position, 0.5f, 1 << LayerMask.NameToLayer("Ground"));
return colliders.Length > 0;
}
public void Move(float xValue, float zValue)
{
_xValue = xValue;
_zValue = zValue;
}
public void Jump()
{
if (_isGrounded)
{
_isGrounded = false;
_rb.AddForce(new Vector3(0f, JumpForce, 0f));
}
}
}