Nein, Google hatte ich auch genutzt, aber wie gesagt ich war mir nicht sicher, ob ich die Prüfung vom Spieler abhängig mache. Ich hatte eher gehofft, die Funktionalität den einzelnen Objekten zuzuweisen. Weil mir erscheint es als seltsam in einem Spielerskript zu schreiben "Wenn ich kollidiere und das Objekt ist A oder B oder C oder ...", das müsste ja auch besser gehen
Und daher dachte ich, dass jedes Objekt das selber macht. So eben die Pickups.
Bei den Pickups hat es ausgereicht, den Collider auf isTrigger zu stellen, die Methode greift dann einwandfrei.
Und genauso möchte ich erreichen, das jeder Gegner (der ja sein eigenes Skript hat), wenn er auf den Spieler zuläuft, die HP des Spielers reduziert, sobald er mit ihm kollidiert. Nur leider klappt es da nicht mit dem isTrigger
Mein Gedankengang war durch die Methode
|
C#-Quelltext
|
1
2
3
4
5
6
7
8
9
10
11
|
void OnTriggerEnter(Collider collision)
{
// Referenz
playerManager health = collision.gameObject.GetComponent<playerManager>();
// Schadensverrechnung
if (health != null)
{
health.TakeDamage(damageDone);
}
}
|
Das kollidierende Objekt zu finden, auf die HP des Spielers zuzugreifen und diese zu reduzieren. Sicherlich habe ich deinen Link schon gesehen und viele viele andere Links auch, ich weiß, dass dies sehr oft im Netz zu finden ist
Möchte mich wie gesagt nur nicht auf den Spieler fixieren sondern lieber jedes Objekt selber regeln lassen... Aber was weiß ich schon ..