如何解决上电增加弹丸统计
我正在尝试在加电时增加玩家火球的伤害。我收到一个对象引用错误,我很确定这是由于代码被链接到玩家的碰撞中,并且火球有自己的脚本,详细说明了它们的速度,损坏等。 本质上,我需要一种方法来引用我的火球预制件(称为子弹头),以便代码可以访问“损坏”状态并在一段时间内增加它。 开机代码为:-
private void OnTriggerEnter2D(Collider2D other)
{
if (other.CompareTag("Player"))
{
Pickup(other);
}
}
void Pickup(Collider2D player)
{
Instantiate(pickupEffect,transform.position,transform.rotation);
Fire stats = GetComponent<Fire>();
stats.damage *= 2;
Destroy(gameObject);
}
}
**The code for the fireball prefabs (kNown as Fire) is:-**
public class Fire : MonoBehavIoUr
{
public Animator animator;
public float speed = 20f;
public int damage = 30;
public Rigidbody2D rb;
public GameObject FireEmbers;
public float liveTime = 1f;
// Start is called before the first frame update
void Start()
{
rb.veLocity = transform.right * speed;
}
void OnTriggerEnter2D(Collider2D hitInfo)
{
Enemy enemy = hitInfo.GetComponent<Enemy>();
if (enemy != null)
{
enemy.Takedamage(damage);
}
Destroy(gameObject);
Instantiate(FireEmbers,Quaternion.identity);
}
void Update()
{
liveTime -= Time.deltaTime;
if (liveTime <= 0)
{
Destroy(this.gameObject);
Instantiate(FireEmbers,Quaternion.identity);
}
}
}
解决方法
我实际上是通过使用可编写脚本的对象而不是将事物硬编码到预制件中来解决此问题的。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。