Unity2d 学习笔记(三)敌人自动巡航

实现思路

在游戏中,敌人通常是可以自动在地图上巡航的,这篇文章就用一个脚本简单实现这个功能。
我使用的精灵如下所示

假设我们让敌人沿着矩形自动巡航,那么我们需要写一个小型的状态机,一共有四种状态:上,下左,右。加入我们要让敌人按照顺时针方向的矩形路径自动巡航,那么状态切换应该是 上->右->下->左 。然后我们设定一下每个方向巡航的距离,这个距离就是函数检查的次数(不是物理意义上的距离),每当函数检查一次,那么这个距离就减一,当这个距离等于0的时候我们需要切换状态,然后重新设定距离的值。

以上就是简单的自动巡航的思路,按照这个思路,你可以写出复杂的自动巡航路线。当然这种实现方式可能不是最好的,因为这是我接触到这个问题的时候想到的第一种方案。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class GebulinController : MonoBehaviour
{

    // 哥布林的速度
    public float speed = 5;

    Animator animator;

    Rigidbody2D rd2D;

    // Start is called before the first frame update
    void Start()
    {
        animat
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值