Willkommen ~Gast!
Registrieren || Einloggen || Hilfe/FAQ || Staff
Probleme mit der Registrierung im Forum? Melde dich unter registerEin Bild.
Autor Beitrag
000
28.06.2000, 20:44
Aqua



Wie muss ich einen Button machen der im teammenü des neuen VGUI angezeigt wird?
Bis jetzt ist da nur einer für automatisches Auswahl, ich brauch aber da drüber noch 3 andere buttons die den befehl weitergeben.
bitte helfen!!!

--

zum Seitenanfang zum Seitenende Profil || Suche
001
29.06.2000, 09:53
Mike



Du musst irgendwo in der client.dll die teamnamen festlegen.
Zuerst habe ich das in vgui_TeamFortressViewport.cpp geändert:

int TeamFortressViewport::MsgFunc_TeamNames(const char *pszName, int iSize, void *pbuf )
{
BEGIN_READ( pbuf, iSize );

m_iNumberOfTeams = READ_BYTE();

//mike
/*
for (int i = 0; i < m_iNumberOfTeams; i++)
{
int teamNum = i + 1;

gHUD.m_TextMessage.LocaliseTextString( READ_STRING(), m_sTeamNames[teamNum], MAX_TEAMNAME_SIZE );

// Set the team name buttons
if (m_pTeamButtons[i])
m_pTeamButtons[i]->setText( m_sTeamNames[teamNum] );

// Set the disguise buttons
if (m_pDisguiseButtons[i])
m_pDisguiseButtons[i]->setText( m_sTeamNames[teamNum] );
}
*/

m_pTeamButtons[0]->setText("Navy Seals");
m_pTeamButtons->setText("Terrorists");

m_pTeamMenu->Update();

// Update the Team Menu
if (m_pTeamMenu)
m_pTeamMenu->Update();

return 1;
}

und dann in vgui_TeamFortressViewport.h :

//char *GetTeamName( int iTeam ) { return m_sTeamNames[iTeam]; };

zu

char *GetTeamName( int iTeam ) { if(iTeam == 1) return "Navy Seals"; else if(iTeam == 2) return "Terrorists"; else return "";};

geändert, das sollte reichen !

Mike

--

zum Seitenanfang zum Seitenende Profil || Suche
002
04.07.2000, 21:56
Aqua



Häh, da geht bei mir nicht!
Also ich rufe das team-wahlmenü mit startm 2 auf und dort steht nur Automatische team-wahl, aber das was du geschrieben hast funzt net. Z.B:

m_pTeamButtons[0]->setText("Navy Seals");
m_pTeamButtons->setText("Terrorists");

Beim 2. m_pTeamButtons soll da nicht auch ne [0] sein? Sonst kann er das bei mir nicht kompilieren? Aber mit geht es auch nicht!
Bitte helfen! Sorry das ich erst so spät schreibe, aber ich war nicht da.

--

zum Seitenanfang zum Seitenende Profil || Suche
003
04.07.2000, 23:05
Prefect



Wenn schon, dann muß es m_pTeamButtons heißen.. 0 ergäbe ja überhaupt keinen Sinn weil du dann den Text des ersten Buttons zweimal setzt (und den ersten Wert überschreibst).

Ansonsten... WAS funktioniert nicht? Es gibt viele Möglichkeiten...

cu,
Prefect

--

Widelands - Gemütliche Aufbaustrategie, Free Software
Noch ein Blog - Lerne, wie die Welt wirklich ist, aber vergiss niemals, wie sie sein sollte.

zum Seitenanfang zum Seitenende Profil || Suche
004
05.07.2000, 15:37
Aqua



Wenn ich das so mache wie Mike geschrieben hat und des dann kompiliere dann kommt dieser Fehler:
error C2227: Der linke Teil von '->setText' muss auf Klasse/Struktur/Union zeigen

das meint MS C++ 6.0 damit:

m_pTeamButtons->setText("Terrorists");

wie soll ich das verändern?

--

zum Seitenanfang zum Seitenende Profil || Suche
005
05.07.2000, 22:17
Prefect



*seufz* irgendwie hat das UltraBoard die [ 1 ] hinter m_pTeamButtons verschlampt. m_pTeamButtons ist ein Array von Pointern, also mußt du das Array indizieren um auf eines der Elemente zugreifen zu können.

Tut mir leid, aber das ist grundlegendes C++ Wissen. Ohne das geht recht wenig...

cu,
Prefect

--

Widelands - Gemütliche Aufbaustrategie, Free Software
Noch ein Blog - Lerne, wie die Welt wirklich ist, aber vergiss niemals, wie sie sein sollte.

zum Seitenanfang zum Seitenende Profil || Suche
006
06.07.2000, 10:59
BigDaddy



mhhh... ich schätze mal, dass du mit indizieren dereferenzieren meinst, d.h. also für Aqua direkt den Wert an die im Pointer abgespeicherte Adresse weitergeben. Aber Zeiger bzw. Pointer sind sowieso eine Sache für sich, weil sich irgendwie die Pointer-Katze (nennen wir sie "Frisky") selbst in den Schwanz beisst, weil selbst wenn man den Wert im Heap speichert, es doch meist mehr Speicher kostet die Adresse des Wertes im Heap mit Namen zu speichern und man dann trotzdem immer zumindest den Pointer übergeben muss. Soviel von mir

--

zum Seitenanfang zum Seitenende Profil || Suche
007
06.07.2000, 15:46
Mike



also bei mir funktioniert es wunderbar, wenn es bei euch nicht geht dann findet es halt selber raus.

Mike

--

zum Seitenanfang zum Seitenende Profil || Suche
008
06.07.2000, 16:21
DarkCloud14



Hmm Mike warum schreibst du denn nicht ein Tutorial darüber für DHCC wäre doch auch nicht schlecht und du müsstest solche Fragen usw nicht mehr alleine beantworten :)

Cya

--

zum Seitenanfang zum Seitenende Profil || Suche
009
06.07.2000, 23:37
Mike



Tja,
wenn ich zeit habe kann ich das schon machen, aber momentan muss ich noch einiges für die schule lernen ,einen mod coden ,einen Führerschein machen ,dann gibt es da noch eine andere art des menschen welche mann auch nicht vernachlässigen sollte usw.

--

zum Seitenanfang zum Seitenende Profil || Suche
010
07.07.2000, 10:26
TheVoice



:)

--

Against TCPA | Resourcecode.de | Blender 3D | [ Darkzone | Pandorra | Alpine ]

zum Seitenanfang zum Seitenende Profil || Suche