Синтаксис:
Используется javascript
var projectile : GameObject;
var shootAngleDistance = 10.0;
var bulspeed=100;
static var target : Transform = null;
//static var target_selected=0;
var reloadTime = 0.5;
var angletarfor;
var shoot_forw = true;
private var lastShot = -10.0;
function Start()
{
shoot_forw=true;
}
function Update ()
{
//Высчитываем направление и поправку на цель.
var distance = Vector3.Distance(transform.position , target.position);// высчитываем дистанцию до объекта
var Vp = distance/100;// получаем время необходимое снаряду для преодоления дистанции
S = Vp * rigidbody.velocity.x;// считаем какое расстояние преодолеет цель
Z = Vp * rigidbody.velocity.z;
//Угол между целью и стреляющим
var targetDir = target.position - transform.position;
var forward = transform.forward;
var angletarfor = Vector3.Angle(targetDir, forward);
//Стреляем в выбраную цель
if ((target)&&(angletarfor<15) ){
if (Input.GetKey(KeyCode.Mouse0)) {
if (Time.time > reloadTime + lastShot)
{
var instantiatedProjectile = Instantiate (projectile, transform.position, transform.rotation);
direction = Vector3(target.transform.position.x+S, target.transform.position.y,target.transform.position.z+Z)- transform.position;
instantiatedProjectile.rigidbody.velocity = direction.normalized * 100;
lastShot = Time.time;
}}
}
else{shoot_forw=true;}
//Если цель не выбрана или слишком большой угол до цели то стреляем прямо
if (shoot_forw==true){
if (Input.GetKey(KeyCode.Mouse0)) {
if (Time.time>(lastShot + reloadTime)) {
var bull_clone : GameObject;
bull_clone = Instantiate(projectile, transform.position, transform.rotation);
Physics.IgnoreCollision(bull_clone.collider, collider);
bull_clone.rigidbody.AddForce(transform.forward*100, ForceMode.Impulse);
lastShot = Time.time;
}
}
}
}
var shootAngleDistance = 10.0;
var bulspeed=100;
static var target : Transform = null;
//static var target_selected=0;
var reloadTime = 0.5;
var angletarfor;
var shoot_forw = true;
private var lastShot = -10.0;
function Start()
{
shoot_forw=true;
}
function Update ()
{
//Высчитываем направление и поправку на цель.
var distance = Vector3.Distance(transform.position , target.position);// высчитываем дистанцию до объекта
var Vp = distance/100;// получаем время необходимое снаряду для преодоления дистанции
S = Vp * rigidbody.velocity.x;// считаем какое расстояние преодолеет цель
Z = Vp * rigidbody.velocity.z;
//Угол между целью и стреляющим
var targetDir = target.position - transform.position;
var forward = transform.forward;
var angletarfor = Vector3.Angle(targetDir, forward);
//Стреляем в выбраную цель
if ((target)&&(angletarfor<15) ){
if (Input.GetKey(KeyCode.Mouse0)) {
if (Time.time > reloadTime + lastShot)
{
var instantiatedProjectile = Instantiate (projectile, transform.position, transform.rotation);
direction = Vector3(target.transform.position.x+S, target.transform.position.y,target.transform.position.z+Z)- transform.position;
instantiatedProjectile.rigidbody.velocity = direction.normalized * 100;
lastShot = Time.time;
}}
}
else{shoot_forw=true;}
//Если цель не выбрана или слишком большой угол до цели то стреляем прямо
if (shoot_forw==true){
if (Input.GetKey(KeyCode.Mouse0)) {
if (Time.time>(lastShot + reloadTime)) {
var bull_clone : GameObject;
bull_clone = Instantiate(projectile, transform.position, transform.rotation);
Physics.IgnoreCollision(bull_clone.collider, collider);
bull_clone.rigidbody.AddForce(transform.forward*100, ForceMode.Impulse);
lastShot = Time.time;
}
}
}
}