Mr.Edy Geschrieben 9. August 2022 Melden Share Geschrieben 9. August 2022 Hi Leute, ich bin relativ neu in C# und erst seit gestern bei Unity. Ich probiere gerade etwas rum und wollt das die Gegner Ingame ihre Farbe von Grün auf Rot wechseln um so weniger Lebenspunkte sie haben. Ich hab jetzt ewig rumprobiert und gegoogelt, jedoch bekomme ich das einfach nicht hin ... Mein Code sieht momentan so aus : public Color greenColor, redColor; Color currentColor; MeshRenderer mr; public float hitpoints; public float maxHitpoints = 4; public GameObject blood; public float bounceStrength = 50f; private Rigidbody2D _rigidbody; void Start() { hitpoints = maxHitpoints; _rigidbody = GetComponent<Rigidbody2D>(); mr.material.color = greenColor; currentColor = greenColor; } void Update() { if (hitpoints == maxHitpoints) { GetComponent<Renderer>().material.color = currentColor; } else { GetComponent<Renderer>().material.color = currentColor; } GetComponent<Renderer>().material.color = Color.Lerp(currentColor, redColor, 1f); } Hoffe mir kann ja jemand helfen. lg Edy Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Mr.Edy Geschrieben 9. August 2022 Autor Melden Share Geschrieben 9. August 2022 Hab es hinbekommen, dank der Hilfe eine Freundes ... void Update() { GetComponent<SpriteRenderer>().color = Color.Lerp(greenColor, redColor, 1f - (hitpoints / maxHitpoints)); } Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.