Willkommen ~Gast!
Registrieren || Einloggen || Hilfe/FAQ || Staff
Probleme mit der Registrierung im Forum? Melde dich unter registerEin Bild.
Autor Beitrag
000
08.08.2001, 19:13
static_caster



moinsen

wenn man in HL ammo aufnimmt, dann wird doch nur soviel aufgenommen, wie beim spieler reinpaßt, der rest wird liegengelassen. (oder?)
also, wenn das so ist, wo steht dann, wie das gemacht wird?

wenn dat nich so is, gibts dann irgendeine Drop(), womit entitys (heißt dat so?) wieder aus dem spieler-inv in die map genommen werden? - ich weiß, ammo ist nicht von CBasePlayerItem abgeleitet, aber ich hab da a bissel was geändert... :-)

mfg

--

zum Seitenanfang zum Seitenende Profil || Suche
001
08.08.2001, 19:22
TheTinySteini



In BasePlayer :: GiveAmmo steht das drin von wegen Ammo hinzufügen. Aber: der Rest wird nicht liegengelassen.

Ansonsten: Es gibt einige Funktionen, mit denen du nem Spieler was wieder wegnehmen kannst. DropPlayerItem z.B. oder bei Ammo einfach den entsprechenden Ammo-Zähler verringern.
Aber was willst du denn überhaupt machen? Wär vielleicht ganz interessant, das zu wissen, dann kann man nämlich besser helfen.

--

TheTinySteini
Coder Poke646
"Don't Panic" - Hitchhiker's Guide to the Galaxy

zum Seitenanfang zum Seitenende Profil || Suche
002
08.08.2001, 21:52
static_caster



hm, brauch eh kein geheimnis draus machen :-)

ich programmiere ein diablo-like inventar.
und momentan bin ich gerade bei den autoadd-funktionen, die bestimmte gegenstände aufnehmen.
und da hat mir n freund doch gesagt, daß (ich habe eine stack-class implementiert, die jetzt basis von CBaseAmmo wird) ammo, wenn auf alle stacks gepusht wurde, ja übrig sein kann. und daß, wenn kein platz mehr weiter im inv ist, sie wieder auf den boden gelegt werden muß, also der rest davon.

falls es irgendjemanden interessieren sollte, wie ich mir das so mit dem inventar gedacht habe, kann ich (irgendwann, später:) ein tut machen.
das wird dann leider kein c&p-tut, weil ich ziemlich viel umschreiben muß, um gute typenprüfung und eine maus-interaktion des spielers mit dem inv zu unterstützen (<-- für das mit der maus bin ich nit zuständig, hab vgui auf nen freund abgewälzt *freu* :).

--

zum Seitenanfang zum Seitenende Profil || Suche
003
08.08.2001, 21:57
TheTinySteini



Hm, dann würde ich die GiveAmmo entsprechend umschreiben, so dass es das Ammo-Entity nicht löscht, wenn es nicht komplett gebraucht wurde.
Allerdings musste dann jeder Munition noch ne Member-Variable hinzufügen, die abspeichert, wie viel Munition noch übrig ist, denn normalerweise wird da einfach ein #define übergeben, das ja immer gleich ist.
Naja, du kriegst das schon hin =)

--

TheTinySteini
Coder Poke646
"Don't Panic" - Hitchhiker's Guide to the Galaxy

zum Seitenanfang zum Seitenende Profil || Suche
004
08.08.2001, 22:14
static_caster



he, irgendwie bannig praktisch, wenn du so online bist, wenn ich so online bin *g*

yap, nochmal danke für den tip mit CBasePlayer::GiveAmmo().

und mit der DopPlayerItem, da kann ich so sachen in die "welt" fallen lassen? (brauch ich ja irgendwie auch... :)

--

zum Seitenanfang zum Seitenende Profil || Suche
005
09.08.2001, 16:55
TheTinySteini



Nee, komplett neue Entities (z.B. ne neue Ammo-Kiste) in die Welt setzen tuste am besten mit CBaseEntity::Create(). Such mal ein bisschen im Code, da findeste genügend Beispiele, wie man das Ding einsetzt.

--

TheTinySteini
Coder Poke646
"Don't Panic" - Hitchhiker's Guide to the Galaxy

zum Seitenanfang zum Seitenende Profil || Suche