Hi und herzlich Willkommen zu meinem dritten Tutorial
Heute will ich euch zeigen wie ihr im Source Code Explosionsfeile für ddie Armbrust hinzufügt.
Das is auch nicht sehr schwer und einfach zu handhaben.
Nun denn auf gehts, als erstes öffnen wir im Visual C++ 2003 .net (ein anderes Programm geht nicht)
im Projekt hl/Source Files/HL2 DLL/ die Datei weapon_crossbow.cpp.
Als nächstes includen wir die Datei "explosion.h" ganz oben mit dem Befehl:
#include "explode.h"

Diese Headerdatei enthält nämlich die Nötige Funktion um eine Explosion zu erschaffen.
Die funktion heißt:
void ExplosionCreate( const Vector ¢er, const QAngle &angles,
CBaseEntity *pOwner, int magnitude, int radius, bool doDamage, float flExplosionForce = 0.0f, bool bSurfaceOnly = false, bool bSilent = false );
(Wie man sieht ziemlich viele Parameter)
Nun dann wollen wir sie mal einbinden.
Nur wo?
Das kommt ganz auf euch an, ich habe sie in die Zeile 351 gesetzt, in der gemanaget wird das wenn der Pfeil
etwas streift oder ganz stecken bleibt Funken sprüht.
Unter:
g_pEffects->Sparks( GetAbsOrigin() );
Fügt ihr nun so wie auf dem Bild ein:
ExplosionCreate( GetAbsOrigin(), GetAbsAngles(), GetOwnerEntity(), GetDamage(), 200,
SF_ENVEXPLOSION_NOSPARKS | SF_ENVEXPLOSION_NODLIGHTS | SF_ENVEXPLOSION_NOSMOKE, 0.0f, this);

Mehr nicht, das war es schon.
Jetzt kompilieren und FERTIG.
So sieht es jetztz bei mir aus, ich habe aber auch die geschwindigkeit geändert und die Schwerkraft der Pfeile höher gesetzt, ausserdem is der Pfeil jetzt ein Geschoss des Raketenwerfers (kommt besser).
Das wird nämlich ma nen Granatwerfen...

Viel Spaß von Kyle!