Welche Parameter muss ich nun für Fx*Damage nehmen, damit mein Effekt sämtlichen Explosions- und Feuerschaden abblockt? (iCause für Explosionen = 1 und für Feuer = 2)
ps: Genau dieser Teil fehlt übrigens im Effekt-Tutorial von Limeox!
ich würde raten das du 3 nehmen musst. Das klingt stark als wäre es mit flags geregelt. denn 2 | 1 == 3 Irgendwo müsste es sicher ein Tutorial über binärzeuch und solche flags geben.
Nein, das hat nichts mit Flags zu tun. Du checkst einfach, ob iCause 1, 2, 33 oder 35 ist. Anm: 1 und 2 sind Schaden, haben also mit der Lebensenergie von Clonks nix am Hut, 33 und 35 beziehen sich auf Energieverlust durch Feuer/Explosionen, die sind also wichtig. Ist das der Fall, gibst du einfach 0 zurück.
Code:
protected func FxUnverwundbarkeitDamage(object pTarget, int iEffect, int iDamage, int iCause) { if (iCause == 1 || iCause == 2 || iCause == 33 || iCause == 35) return 0; return iDamage; }