unity坦克大战(二)(代码修改后)

之前将Mytank角色做好,那么剩下的是就要做Enemytank这个角色,这个角色有自动寻找Mytank并攻击的效果。

首先建立一个名为enemytank的cube调整大小并在cube正前方放一个名为firepoint的GameObject  Empty对象作为enemytank的子物体。这个脚本我用js(网上的),本来用c#改写了,感觉没有错,但是不知道怎么回事总是报错很是郁闷(之后再改改,估计是一些小问题),js版本的代码就是:

var Enemy_tank: GameObject; //定义坦克
var firepoint: Transform; //定义开火点
var bullet: Rigidbody; //定义子弹
var bullspeed: int=50; //定义子弹速度
var attackRange = 10.0; //定义距离
var target : Transform;//定义共计目标
//static var value : float ;
private var cun_time: int=0;
function Start () //初始化目标
{
if (target == null && GameObject.FindWithTag("Mytank")) target = GameObject.FindWithTag("Mytank").transform;
}
function Update () 
{
Enemy_tank=GameObject.Find("Mytank"); //实例化
if (target == null)
return;
if (!CanSeeTarget ())
return;
// Rotate towards target
var targetPoint = target.position;
var targetRotation = Quaternion.LookRotation (targetPoint - Enemy_tank.transform.position,Vector3.up); //求出与目标之间的角度
Enemy_tank.transform.rotation = Quaternion.Slerp(Enemy_tank.transform.rotation, targetRotation, Time.deltaTime * 2.0); //旋转之角度与目标对齐


var forward = Enemy_

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值