i tried to make an rpg clicktomove script:
#pragma strict
var smooth:int; // Determines how quickly object moves towards position
private var targetPosition:Vector3;
var speed = 60;
var Flag : Transform;
var Enemy : Transform;
function Update () {
if (Input.GetMouseButton(0)) {
var hit: RaycastHit;
var ray2 = Camera.main.ScreenPointToRay(Input.mousePosition);
if (Physics.Raycast(ray2, hit)) {
if(hit.transform.tag == "Enemy"){
Enemy = hit.transform;
transform.GetComponent(Player).Enemy = hit.transform;
}
else{
Enemy = null;
targetPosition = hit.point;
var targetPoint = hit.point;
var targetRotation = Quaternion.LookRotation(targetPoint - transform.position);
transform.rotation = targetRotation;
}
}
}
var dir:Vector3 = targetPosition - transform.position;
var dist:float = dir.magnitude;
var move:float = speed * Time.deltaTime;
if(dist > move){
transform.position += dir.normalized * move;
}
else {
transform.position = targetPosition;
}
Flag.position = targetPosition;
if(Enemy != null){
targetPosition = Enemy.position;
targetRotation = Quaternion.LookRotation(Enemy.position - transform.position);
transform.rotation = targetRotation;
}
transform.GetComponent(Player).targetPos = targetPosition;
if(transform.GetComponent(Player).isAttack == false){
transform.position += (targetPosition - transform.position).normalized * speed * Time.deltaTime;
}
}
but my character isn’t fall down with charactercontroller and if i use rigidbody its get force and fly away. How can i fall down my character?