Willkommen ~Gast!
Registrieren || Einloggen || Hilfe/FAQ || Staff
Probleme mit der Registrierung im Forum? Melde dich unter registerEin Bild.
Autor Beitrag
000
15.02.2002, 15:54
[HUI]-Tiger-



Tach Junx,

ich hab mal in meiner fgd die solid entity trigger_console created.
Da wird dann der string "cbefehl" eingelesen. Wie kann ich das coden, dass der befehl dann an die console geschickt wird ? Das muss man irgendwie mit LINK_ENTITY_TO_CLASS oda wie des auch immer heisst hinbekommen !?
thx im voraus

--

.-.-.-.
cya Tiger

zum Seitenanfang zum Seitenende Profil || Suche
001
15.02.2002, 17:20
Mexil



Mit Link Entyt To Class, sendest du sicher keinen Befehl an die Console, damit linkt man nur wie der Name schon sagt eine Klasse zu einem Entity bzw. umgekehrt...

--


Move In!

VISIT US Move In!

zum Seitenanfang zum Seitenende Profil || Suche
002
15.02.2002, 23:49
[HUI]-Tiger-



ok ich hab eine Klasse zu meiner entity erstellt. So, nun brauch ich nur noch den befehl um einen string an die console zu schicken weiss den jemand ??
also ich hab den string trcon_bef(komischer name ich weiss) und will dass der jetzt automatisch in die console eingegeben wird...ich schick den code aber nur wenn ihr dann nich rommotzt, wie das hier schon oft der fall war...(is nich groß, so ca 1 bildschirm).
cya
Tiga

--

.-.-.-.
cya Tiger

zum Seitenanfang zum Seitenende Profil || Suche
003
16.02.2002, 01:03
[HUI]-Tiger-



ich hab mal gesucht ich glaube der befehl ist in der hud.cpp,
ConsolePanel::doExecCommand()
......
gEngfuncs.pfnClientCmd(buf);

wobei "buf" der befehl sein soll.

1. Ist das die richtige Funktion oder bin ich mal wieda komplett danebn ?
2. Kann man diese Funktion irgendwie aus einer anderen cpp Datei aufrufen ?

--

.-.-.-.
cya Tiger

zum Seitenanfang zum Seitenende Profil || Suche
004
16.02.2002, 01:06
Mexil



Also das was du da hast, ist ein Teil des VGUI Menue's und wenn auf das Panel geklickt wird, wird ein Befehl(!!!) an den Server geschickt, dass hat aber nichts mit einer Consoleneingaben zu tun, sondern einfach ein Befehl, der vom Client geschickt wird(dies KANN(!!!) auch aus der Console geschehen, muss aber nicht!!)

--


Move In!

VISIT US Move In!

zum Seitenanfang zum Seitenende Profil || Suche
005
16.02.2002, 16:12
[HUI]-Tiger-



hm....und wo ist nun die funktion wo der befehl aus aus der console verarbeitet wird ?
Ich will doch nur aus einer cpp datei einen consolenbefehl eingeben...

--

.-.-.-.
cya Tiger

zum Seitenanfang zum Seitenende Profil || Suche
006
16.02.2002, 19:00
Another1



aus der mp oder cl.dll?
client.dll:
gEngfuncs.pfnClientCmd("DeinCommand");

und aus der mp.dll:
CLIENT_COMMAND(edictForClient,"DeinCommand");

--

Another1

...relaxing..atm =)
... und Schweiz suckt!

zum Seitenanfang zum Seitenende Profil || Suche
007
16.02.2002, 20:10
[HUI]-Tiger-



aus der cl.dll. auf jeden fall mal n mega thx ich werds gleich mal probieren !

--

.-.-.-.
cya Tiger

zum Seitenanfang zum Seitenende Profil || Suche
008
16.02.2002, 20:17
[HUI]-Tiger-



war zwar das was ich auch rausgefunden hatte, aber es funzt noch nich so ganz: ich kann diese ganze gEngfuncs Commands nicht ausführen:
error C2065: 'gEngfuncs' : undeclared identifier
error C2228: left of '.pfnClientCmd' must have class/struct/union type
muss ich noch was includen ??
naja hier der code

#include "extdll.h"
#include "decals.h"
#include "util.h"
#include "cbase.h"
#include "monsters.h"
#include "weapons.h"
#include "nodes.h"
#include "player.h"
#include "soundent.h"
#include "gamerules.h"

class CTriggerConsoleEntity : public CBaseEntity
{
public:
void KeyValue(KeyValueData *pkvd ); //Funktion zum Abruf der Parameter
void Spawn( );
void EXPORT MFETouch( CBaseEntity *pOther ); //Aufruf beim Berühren
char bef;
};
LINK_ENTITY_TO_CLASS(trigger_console, CTriggerConsoleEntity );

//Abrufen des Befehls:

void CTriggerConsoleEntity::KeyValue(KeyValueData *pkvd)
{
if (FStrEq(pkvd->szKeyName, "Befehl"))
{
bef = ALLOC_STRING(pkvd->szValue); //Befehl in bef speichern
pkvd->fHandled = TRUE;
}
else
CBaseEntity::KeyValue( pkvd ); // Abfrage beenden

}

void CTriggerConsoleEntity :: Spawn( )
{
Precache( );
UTIL_SetOrigin( pev, pev->origin );
UTIL_SetSize( pev, Vector(-16,-16,0), Vector(16,16,64) );
SetTouch( MFETouch ); //Berührungsfunktion einstellen
}

void CTriggerConsoleEntity :: MFETouch( CBaseEntity* Player )
{
//Hier wird bef an die console geschickt und ausgeführt
gEngfuncs.pfnClientCmd(bef);
}

naja auf jeden fall nochma thx fa help

--

.-.-.-.
cya Tiger


Dieser Beitrag wurde am 16.02.2002 um 22:36 von [HUI]-Tiger- bearbeitet.
zum Seitenanfang zum Seitenende Profil || Suche
009
17.02.2002, 03:27
-marsman-



und zu mir hast du gesagt du hättest den t_c schon längst in der *fgd drinne... tztztz!

--

_____________________________________

[url="mailto:00mars00@web.de"]-marsman- [i][/b][/url] - Skater, and Sprayer for Life.
_________________________________

-||marsmans page||-||marsmans guestbook||Mein erster Post||-

zum Seitenanfang zum Seitenende Profil || Suche
010
17.02.2002, 12:20
[HUI]-Tiger-



omg natürlich isses in der fgd drinne !! aber nicht in der client.dll

--

.-.-.-.
cya Tiger

zum Seitenanfang zum Seitenende Profil || Suche
011
17.02.2002, 13:36
[HUI]-Tiger-



Oh mann, ich schätz ich hab den Fehler, das ganze muss nämlich in die mp.dll ?? oh amnn da sieht man zwar dass ich voll der n00b bin, aber naja ok...
Da hab ich jezze nur noch das folgenede Prob:

error C2065: 'edictForClient' : undeclared identifier

naja, vielleicht koennt ihr mir ja jezze helfen... ;-)

--

.-.-.-.
cya Tiger


Dieser Beitrag wurde am 17.02.2002 um 14:53 von [HUI]-Tiger- bearbeitet.
zum Seitenanfang zum Seitenende Profil || Suche
012
17.02.2002, 18:32
[HUI]-Tiger-



habs hinbekommen lösung sieht so aus:

edict_t *pClient;
pClient = g_engfuncs.pfnPEntityOfEntIndex( 1 );
CLIENT_COMMAND(pClient,&bef);

aber warum wird jetzt der Touch-Teil nicht aufgerufen ??
Hat bestimmt was mit pev->solid, UTIL_SetOrigin und/oder UTIL_SetSize zu tun...was kommt denn da hin ?
so, thx nochmal @all

--

.-.-.-.
cya Tiger


Dieser Beitrag wurde am 17.02.2002 um 20:04 von [HUI]-Tiger- bearbeitet.
zum Seitenanfang zum Seitenende Profil || Suche