[英]Point scoring system not working Unity (visual studio C#)
我的 total_score 變量存儲在 PLayerSpawner class 中。 當敵人死亡時,它不會增加應有的分數。 我想增加50分,但它不起作用。 我一直在嘗試解決方案,但無法弄清楚。 這是在不同的 class 中,稱為 DamageByCollision class。 任何幫助/解決方案都會有所幫助!!!
void Update()
{
if (invulnTimer > 0)
{
invulnTimer -= Time.deltaTime;
if (invulnTimer <= 0)
{
gameObject.layer = correctLayer;
if (spriteRend != null)
{
spriteRend.enabled = true;
}
}
else
{
if (spriteRend != null)
{
spriteRend.enabled = !spriteRend.enabled;
}
}
}
if (health <= 0)
{
Die();
}
}
void Die()
{
Destroy(gameObject);
if (gameObject == enemyPrefab)
{
PlayerSpawner.total_score = PlayerSpawner.total_score + 50f;
}
}Lease help!!!!!
void Update()
{
if (invulnTimer > 0)
{
invulnTimer -= Time.deltaTime;
if (invulnTimer <= 0)
{
gameObject.layer = correctLayer;
if (spriteRend != null)
{
spriteRend.enabled = true;
}
}
else
{
if (spriteRend != null)
{
spriteRend.enabled = !spriteRend.enabled;
}
}
}
if (health <= 0)
{
Die();
}
}
void Die()
{
Destroy(gameObject);
if (gameObject == enemyPrefab)
{
PlayerSpawner.total_score = PlayerSpawner.total_score + 50f;
}
}
將 Destroy 移動到 Die() function 的底部
void Die()
{
if (gameObject == enemyPrefab)
{
PlayerSpawner.total_score = PlayerSpawner.total_score + 50f;
}
Destroy(gameObject);
}
過了一會兒,我已經解決了。
void Die()
{
Destroy(gameObject);
if (gameObject.transform.name == "Ememy01(Clone)")
{
PlayerSpawner.total_score = PlayerSpawner.total_score + 50f;
//Debug.Log("Death");
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.