我对编程/脚本场景非常陌生,我正在学习制作基本控制器和战斗系统(Birds view RPG)的教程。事情是当我自己想要进行“攻击最近的敌人”类型的战斗时,教程将进行“点击攻击”(目标)。
到目前为止,我设法做的是有 3 个对手,但我只能攻击其中 1 个,这就是教练开始添加我想避免的目标脚本的地方。我尝试在 answers.unity3d.com 上找到其他有类似问题的人,并尝试将代码合并到我自己的项目中。结果似乎略有不足,需要帮助弄清楚它可能是什么!
我确实看到了许多类似的问题并尝试复制/粘贴代码,但似乎总是有一些我不熟悉解决的小问题。(例如让标签工作?)
///Player code:
using UnityEngine;
using System.Collections;
public class Player : MonoBehaviour {
public string name;
public int health;
public int damage;
public float range;
public Transform opponent;
void Start ()
{
}
void Update ()
{
Player. ();
}
void Player.Attack()
{
if(Input.GetKeyUp (KeyCode.Space))
{
if(Vector3.Distance(opponent.transform.position, transform.position);
{
if(opponent != null && Vector3.Distance (opponent.position, Transform.position) < Range)
{
opponent.GetComponent<Enemy>().GetHit(damage);
}
}
///Enemy code:
using UnityEngine;
using System.Collections;
public class Enemy : MonoBehaviour
{
public string name = "Monster";
public int health;
public int damage;
void Start ()
{
}
void Update ()
{
}
public void GetHit(int playerDamage)
{
health = health - playerDamage;
}
void OnMouseOver()
{
Player.opponent = Transform;
}
}