Willkommen ~Gast!
Registrieren || Einloggen || Hilfe/FAQ || Staff
Probleme mit der Registrierung im Forum? Melde dich unter registerEin Bild.
Autor Beitrag
000
23.12.2000, 12:21
Buy-Menu-Man



Hi!
Ich will ein Geld-System ins HUD implementieren, aber ich weiß nicht genau wie ich das anstellen soll!
Ich hab da auch keine Tuts gefunden!
Ich hoffe ihr könnt mir da helfen!

cu
Buy-Menu-Man

--

http://battletech-hl.teamfortress2.de

zum Seitenanfang zum Seitenende Profil || Suche
001
23.12.2000, 14:18
Prophyle



1. Schritt: probiere einfach mal den Code vom Health-system in der client.dll zu kopieren, dann hast du erstmal die Zahlen. sodann kopierst du alle messages die etwas mit health zu tun haben, dann haut das auch mit den Abzügen hin. Drittens brauchst du ein menü, das musst du dir wohl selber zusammen schustern, gibts auch ein tut bei thewall.de/coding. Viertens: einem Player kannst du in der mp.dll ein Waffe einfach durch GiveNamedItem( "weapon_name" ) geben.

--

Prophyle, Coder beim SGT: http://mod.famkos.de.
Delphi, C++, Qt

zum Seitenanfang zum Seitenende Profil || Suche
002
23.12.2000, 14:52
Buy-Menu-Man



Ich hab schon ein BuyMenu + Geld-System!
Aber ich will das Geld halt dann noch im HUD sichtbar machen!

--

http://battletech-hl.teamfortress2.de

zum Seitenanfang zum Seitenende Profil || Suche
003
23.12.2000, 15:21
DarKnight



Hi!

Einfach im Ammo nach der Zahlenprint Funktion suchen. Eine neue CPP erstellen, das Coden und fertig! *g* Probier aber auch erstmal mit Kopieren.

--

void CHudSayText :: EnsureTextFitsInOneLineAndWrapIfHaveTo( int line ) -- Aja?

zum Seitenanfang zum Seitenende Profil || Suche
004
08.01.2001, 14:41
calle



Ich habe da auch Propleme das Geld sichtbar zu machen !
Weis da jemand eine ausfürlichere antwort !
Ich bin noch ein Newbi Coder !
Aber lacht nicht ! so habt Ihr alle auch mal angefangen !

danke Calle

--

http://www.callesclub.de

zum Seitenanfang zum Seitenende Profil || Suche
005
08.01.2001, 19:55
Buy-Menu-Man



Ich hab's geschafft!!!!!!!!!
Bei mir gehts!

--

http://battletech-hl.teamfortress2.de

zum Seitenanfang zum Seitenende Profil || Suche
006
08.01.2001, 21:40
calle



Das ist schön, das es bei dir geht !
Kannst du mir auch veraten was du geändert hast, damit es bei mir auch geht !
Sag es mir bitte !
Ich bin schon am verzweifeln !!!

DANKE im voraus !!

Calle

--

http://www.callesclub.de

zum Seitenanfang zum Seitenende Profil || Suche
007
09.01.2001, 13:10
Buy-Menu-Man



Hmmm.......ich weiß nicht, welches Problem du genau hast.......
Naja.......also ich hab mal den Code der Flashlight (in der clinet.dll) genommen und ihn dann in ne neue Datei (von mir aus money.cpp) kopiert!
Dann hab ich halt die ganzen Namen und so geändert!
Du musst das auch noch alles in der hud.h definieren......naja......mach einfach alles genau so wie bei dem Flashlight!
Aber du willst ja nicht das Flashlight-Sprite angezeit bekommen, sondern die Zahlen......OK.....das kannst du dir einfach von der health.cpp abschauen, wo das ja gemacht worden ist!
Ich glaub das geht mit DrawHUDNumber oder so.....ich bin mir aber nicht ganz sicher.....
Du musst auch noch die Commands von der mp.dll losschicken!
Wie immer einfach so machen wie in der health oder flashlight......
Jo.....dann wirst du ein Probelm bekommen, nämlich, dass man mit einem Byte nur Zahlen von 0 bis 255 übertragen kann......du könntest auch mehrere bytes übertragen...aber ich weiß nicht so genau wie man die Zahlen dann auf die einzelnen Bytes aufteilen muss!
ich hab eingfach in der mp.dll die Zahl durch 50 geteilt und dann in der client wieder mal 50 gemacht!
Vielleicht sagt uns hier auch noch ein Coder, der's wirklich blickt, wie man das besser lösen kann.......

Naja.......das wars eigentlich!

Ich hoffe das war ausführlich genug......
Blöd, dass du kein ICQ hast.......naja....bei Fragen kannst du ja wieder ins Board schreiben!

--

http://battletech-hl.teamfortress2.de

zum Seitenanfang zum Seitenende Profil || Suche
008
09.01.2001, 13:59
Another1



mmh, schonmal was von "veränder die message size auf 2 bytes in ...
= REG_USER_MESSAGE("....",2);
gehört??
dann mit WRITE_SHORT
zahl schreiben (werte bis 16 Bit = 65000 un ein paar geschmierte is das, glaub ich)
und auf clientdll mit READ_SHORT auslesen??

--

Another1

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

zum Seitenanfang zum Seitenende Profil || Suche
009
09.01.2001, 20:03
Buy-Menu-Man



Oooooops!
Ich habe gedacht, dass man dann zweimal WRITE_BYTE machen muss.....
naja.......wie dumm von mir......

THANKS!

--

http://battletech-hl.teamfortress2.de

zum Seitenanfang zum Seitenende Profil || Suche
010
09.01.2001, 20:48
user3427



Das mit 2xWrite-byte geht auch.
Du splittest deine Tahl folgendermaßen:
Byte1=Zahl%255;
Byte2=Zahl\255;
Wenn die Bytes beim client sind, machst du eingfach:
zahl=Byte1+Byte2*255;
So hab' ich das gemacht, bevor ich gemerkt hab', dass man auch anderes senden kann(was natürlich besser ist).
PS: Wenn du mehr als 3-stellige Zahlen anzeigen willst, musst du die erst zusammensetzen, weil HL standartmäßig nur bis zu 3-stellig ausgibt (was ziemlich nerven kann).

--

zum Seitenanfang zum Seitenende Profil || Suche
011
09.01.2001, 20:59
Another1



... oder einfach die DrawHUDNumber function auf bis zu 10 zahlen erweitern, so wie ichs gemacht hab =)

--

Another1

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

zum Seitenanfang zum Seitenende Profil || Suche
012
09.01.2001, 21:46
Buy-Menu-Man



naja........ich habs halt bis auf 5 Stellen erweitert....reicht mir.....

calle: Läufts?????????

--

http://battletech-hl.teamfortress2.de

zum Seitenanfang zum Seitenende Profil || Suche
013
09.01.2001, 22:12
calle



Also mein Buy-Menu läuft jetzt ! aber das ich eine Taste vergeben muss, damit mein Geld angezeigt wird, finde ich nicht gut ! und vorallem das es in der mitte angezeigt wird, und dabei auch noch so klein ist !
Hat jemand eine Idee wie ich das ändern kann ohne viel aufwand !
Denn ich will bis März meine RoD Beta 1 fertig haben !
Deshalb muss ich reiklotzen ! und werde erst in der Beta 2 Vgui Menus einbauen !
Denn es ist ja schlieslich eine Beta 1 ! wo für mich an erster stelle das Gameplay steht :-) !
So ! jetzt werd ich ein Team und ein Class Menu einbauen !
Wenn jemand da einen vorschlag für ein gutes Tut hat, möge es mir bitte hier hinein posten.

Ich will mich an dieser stelle schon einmal bei euch bedanken, das Ihr mir so gut zur Seite steht, auch wenn es jettzt erst richtig los geht !!

cu all Calle

--

http://www.callesclub.de

zum Seitenanfang zum Seitenende Profil || Suche
014
10.01.2001, 07:53
Prophyle



Um Geld immer anzuzeigen, erschaffst du eine class CHudMoney : public CHudBase , und zwar in der client.dll. Der gibst du dann eine Message- Function, und immer wenn eine neue Msg für Geld kommt, änderst du den Wert in CHudMoney::Draw, der dort ausgegeben wird!

--

Prophyle, Coder beim SGT: http://mod.famkos.de.
Delphi, C++, Qt

zum Seitenanfang zum Seitenende Profil || Suche