前提・実現したいこと
自キャラの周りに四角形の移動制限区域を作り、
その中でしか動けない敵を作りたいと考えています。
発生している問題・エラーメッセージ
移動制限区域から敵がすり抜けたり、
端の座標がうまく入りません。
ご教授お願い致します。
該当のソースコード
using UnityEngine;
using System.Collections;
public class DistanceEnemy : MonoBehaviour
{
public float Distance = 5.0f;
void Update() { // playerの上 var Top = GameObject.Find("Player").transform.position.y + Distance; // playerの下 var Bottom = GameObject.Find("Player").transform.position.y - Distance; // playerの右 var Right = GameObject.Find("Player").transform.position.x + Distance; // playerの左 var Left = GameObject.Find("Player").transform.position.x - Distance; // enemyの座標を取得 Vector2 pos = GameObject.Find("Enemy").transform.position; // enemyの位置がplayerの周囲に収まるように制限をかける pos.y = Mathf.Clamp(pos.y, Bottom, Top); pos.x = Mathf.Clamp(pos.x, Left, Right); pos.Normalize(); // 制限をかけた値をenemyの位置とする GameObject.Find("Enemy").transform.position= pos; }
}
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/01/23 00:19
2019/01/23 00:34
2019/01/23 00:41
2019/01/23 00:42