塔防游戏中iTweenPath路点插件的使用

假期考虑良久决定制作一期塔防游戏 ,这类游戏重要点有:塔的范围监测,子弹的最短距离enemy选择,还有就是enem的运动轨迹编辑。

这一期先实现enemy的路径,首先制作一张background,例如这个:

图片被浏览器拉跑拉

我要说的就是如何让怪沿着这个路线走到终点。

可以使用PathNode存入数组然后逐步实现的方式,我要说的是使用ITweenPath来实现它。

在Unity官网上下载ITweenPath插件,导进场景中,设置完毕后在模型上加一个ITweenPath(Script),编写一个名为Enemy的C#脚本也挂在下面,具体代码如下:

using UnityEngine;
using System.Collections;

public class Enemy : MonoBehaviour
{
 public float HP = 10;
 public Vector3 target = new Vector3 (0.5f, -0.35f, 0);
 public GameObject obj;
 public float speed=0.15f;
 public float HPvalue;
 void Start ()
 {
    var paths = obj.GetComponent<iTweenPath> ().GetPath ("mypath");//调去自身组件并找到起始node
    Hashtable args = new Hashtable ();//利用哈希表添加各项属性
    args.Add ("path", paths);
    args.Add ("easeType", iTween.EaseType.linear);
    args.Add ("speed", speed);
    iTween.MoveTo (gameObject, args);//让gameobject沿着paths用speed做Type.liner运动
 }
 void Update ()
 {
  iTween stop = GetComponent<iTween> ();
  if (FindObjectOfType<Middlestop> ().stop == true)
  {
     stop.isRunning = false;
  }
  else
  {
     stop.isRunning=true;//上面两端是调用自身的布尔判断来实现暂停功能
  }
  if (obj.transform.position == target)
  {
     Destroy (obj.gameObject);
     Application.LoadLevel ("TryAgain");
   }
 }

写好代码之后效果如下:

右边第一个打勾的意思是:是否在编辑状态下显示路径,第二个则是一个node数组,为使运动速度匀速,我设置了25个,用来保证整体speed的匀速。

最后,当怪物到达终点也就是最后一点,Destory自己就可以了。

新手上路多有不足,欢迎各位讨论和补充。

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

倚剑漫枫尘

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值