Willkommen ~Gast!
Registrieren || Einloggen || Hilfe/FAQ || Staff
Probleme mit der Registrierung im Forum? Melde dich unter registerEin Bild.
Autor Beitrag
000
02.12.2002, 15:48
Empty



Ich habe das Tut gemacht und es will einfach net laufen :(
Immer dieser Fehler

--------------------Configuration: hl - Win32 Profile--------------------
Compiling...
combat.cpp
D:\......................\Single-Player Source\dlls\combat.cpp(1547) : error C2065: 'iContents' : undeclared identifier
Error executing cl.exe.

hl.dll - 1 error(s), 0 warning(s)

Ich habe schon Probiert ihn zu declaieren aber immer wieder kommt dieser Fehler :( In welcher Datei muss man iContents declaieren ? In der ggrenade.cpp ist der Befehl auch drin und funzt ohne das er declaiert ist.

Bitte helft mir thx :)

P.S. Das soll mal ein Laserpointer sein bei dem man den Strahl ein bisschen sieht nicht wie beim RPG.

--

FCB WIRD MEISTER !!!

zum Seitenanfang zum Seitenende Profil || Suche
001
02.12.2002, 17:07
[RMen]OneStone



hrhr... - ? - ! - hrm

Das ist kein "befehl", da musst du einfach ne Zahl reinh4x0rn und es sollte gehen... =)

--

georg-wicherski@pixel-house.net | http://www.pixel-house.net/ - Coding Resource| http://www.google.de/

zum Seitenanfang zum Seitenende Profil || Suche
002
02.12.2002, 17:42
Empty



Ne zahle ?!?! Ich poste einfach mal den Code

void CBaseEntity :: FireLaser( int m_iBeam, int life, int width, int noise, int r, int g, int b, int a, int flDamage, Vector vecSrc, int length, int effect )
{
Vector vecDir = gpGlobals->v_forward;

Vector vecDest = vecSrc + vecDir * length;

edict_t *pentIgnore;
TraceResult tr, beam_tr;

pentIgnore = ENT( pev );

UTIL_TraceLine(vecSrc, vecDest, dont_ignore_monsters, pentIgnore, &tr);

CBaseEntity *pEntity = CBaseEntity::Instance(tr.pHit);

Vector tmpSrc = vecSrc + gpGlobals->v_up * -8 + gpGlobals->v_right * 3;

MESSAGE_BEGIN( MSG_PAS, SVC_TEMPENTITY, tr.vecEndPos );
WRITE_BYTE( TE_BEAMENTPOINT );
WRITE_SHORT( entindex() + 0x1000 );
WRITE_COORD( tr.vecEndPos.x);
WRITE_COORD( tr.vecEndPos.y);
WRITE_COORD( tr.vecEndPos.z);
WRITE_SHORT( m_iBeam );
WRITE_BYTE( 0 ); // startframe
WRITE_BYTE( 0 ); // framerate
WRITE_BYTE( life ); // life
WRITE_BYTE( width ); // width
WRITE_BYTE( noise ); // noise
WRITE_BYTE( r ); // r, g, b
WRITE_BYTE( g ); // r, g, b
WRITE_BYTE( b ); // r, g, b
WRITE_BYTE( a ); // brightness
WRITE_BYTE( 0 ); // speed
MESSAGE_END();

if (pEntity->pev->takedamage) //wenn ein Gegner getroffen wird, machen wir Schaden
{
ClearMultiDamage();
pEntity->TraceAttack( pev, flDamage, vecDir, &tr, DMG_SHOCK ); // und zwar nen shock-schaden (Blitzsymbol im HUD)
ApplyMultiDamage(pev, pev);
}
else if( effect >= 1 ) // ansonsten, wenn "effect" größer gleich 1 ist, machen wir halt einen Effekt beim Einschlag
{
if(effect == 1) //eine normale Explosion
{
MESSAGE_BEGIN( MSG_PAS, SVC_TEMPENTITY, tr.vecEndPos );
WRITE_BYTE( TE_EXPLOSION ); // This makes a dynamic light and the explosion sprites/sound
WRITE_COORD( tr.vecEndPos.x ); // Send to PAS because of the sound
WRITE_COORD( tr.vecEndPos.y );
WRITE_COORD( tr.vecEndPos.z );
if (iContents != CONTENTS_WATER) // wenn der Einschlag nicht unter Wasser ist ...
{
WRITE_SHORT( g_sModelIndexFireball ); //nehmen wir das normale Explosions-Sprite
}
else
{
WRITE_SHORT( g_sModelIndexWExplosion ); //ansonsten eine Unterwasser-Explosion
}
WRITE_BYTE( (pev->dmg - 50) * .60 ); // scale * 10
WRITE_BYTE( 15 ); // framerate
WRITE_BYTE( TE_EXPLFLAG_NONE );
MESSAGE_END();
}
else if(effect == 2) //ein blauer beamcylinder, wie wir ihn von den houndeyes kennen (ein bisschen andere Farbwerte)
{
MESSAGE_BEGIN( MSG_PVS, SVC_TEMPENTITY, tr.vecEndPos );
WRITE_BYTE( TE_BEAMCYLINDER );
WRITE_COORD( tr.vecEndPos.x);
WRITE_COORD( tr.vecEndPos.y);
WRITE_COORD( tr.vecEndPos.z);
WRITE_COORD( tr.vecEndPos.x);
WRITE_COORD( tr.vecEndPos.y);
WRITE_COORD( tr.vecEndPos.z + 1000 ); // reach damage radius over .1 seconds
WRITE_SHORT( g_sModelIndexFireLaser ); //wichtig: muss noch in der weapons.cpp definiert werden -> dazu später
WRITE_BYTE( 0 ); // startframe
WRITE_BYTE( 0 ); // framerate
WRITE_BYTE( 4 ); // life
WRITE_BYTE( 10 ); // width
WRITE_BYTE( 0 ); // noise
WRITE_BYTE( 90 ); // r
WRITE_BYTE( 150 ); // g
WRITE_BYTE( 200 ); // b
WRITE_BYTE( 255 ); // brightness
WRITE_BYTE( 0 ); // speed
MESSAGE_END();
}
else if(effect == 3) //ein Laserstrahl der direkt von Oben kommt
{
MESSAGE_BEGIN( MSG_BROADCAST, SVC_TEMPENTITY );
WRITE_BYTE( TE_BEAMPOINTS );
WRITE_COORD(tr.vecEndPos.x);
WRITE_COORD(tr.vecEndPos.y);
WRITE_COORD(tr.vecEndPos.z);
WRITE_COORD(tr.vecEndPos.x);
WRITE_COORD(tr.vecEndPos.y);
WRITE_COORD(tr.vecEndPos.z + 1024); //wie hoch soll der Strahl sein?
//wenn er aus dem Himmel kommen soll, würde ich ihn mindestens so lang machen
//man beachte: der Strahl geht auch durch Wände!
WRITE_SHORT(g_sModelIndexFireLaser ); //wichtig: muss noch in der weapons.cpp definiert werden
WRITE_BYTE( 0 ); // framerate
WRITE_BYTE( 0 ); // framerate
WRITE_BYTE( 2 ); // life
WRITE_BYTE( 20 ); // width
WRITE_BYTE( 20 ); // noise
WRITE_BYTE( 90 ); // r
WRITE_BYTE( 150 ); // g
WRITE_BYTE( 200 ); // b
WRITE_BYTE( 128 ); // brightness
WRITE_BYTE( 0 ); // speed
MESSAGE_END();
}
}

--

FCB WIRD MEISTER !!!

zum Seitenanfang zum Seitenende Profil || Suche
003
02.12.2002, 18:25
Killing Me Softly



Quellcode:
int iContents = UTIL_PointContents ( tr.vecEndPos );

Wo du das hinzusetzen hast, darfst du dir selber rausfriemeln.

--

Der Horizont vieler Menschen ist ein Kreis mit Radius Null - und das nennen sie ihren Standpunkt.

zum Seitenanfang zum Seitenende Profil || Suche
004
02.12.2002, 20:06
Empty



sorry aber ich werd daraus net schlau. Bist du sicher das

int iContents = UTIL_PointContents ( tr.vecEndPos );

hin muss ?

Wenn wüsste ich net wo ? :(

--

FCB WIRD MEISTER !!!

zum Seitenanfang zum Seitenende Profil || Suche
005
02.12.2002, 20:15
Empty



sorry aber ich werd daraus net schlau. Bist du sicher das

int iContents = UTIL_PointContents ( tr.vecEndPos );

hin muss ?

Wenn wüsste ich net wo ? :(
Ich habs schon überall probiert !

--

FCB WIRD MEISTER !!!

zum Seitenanfang zum Seitenende Profil || Suche
006
02.12.2002, 22:26
Killing Me Softly



direkt unter

UTIL_TraceLine(vecSrc, vecDest, dont_ignore_monsters, pentIgnore, &tr);

wäre z.B. ein äußerst sympathischer Platz. Bitte nicht böse sein, aber so, wie du die Sache anscheinend angehst wird das nix mit dem coden, da dir scheinbar noch etliche Grundlagen fehlen. Und die lernst du nicht, indem du irgendwelche Programmzeilen wahllos in den Code plazierst und hoffst, das der Compiler damit was anfangen kann. Man sollte zumindest laufen können, bevor man an einem Marathon teilnimmt. Ist nur ein gutgemeinter Tipp.

--

Der Horizont vieler Menschen ist ein Kreis mit Radius Null - und das nennen sie ihren Standpunkt.

zum Seitenanfang zum Seitenende Profil || Suche