Waffen wechseln
Übersicht

BackbufferBetreff: Waffen wechseln |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hallo zusammen,
ich programmiere einen Space-Shooter bei dem der Spieler zwischen mehreren Waffen hin und herwechseln kann. Das Problem ist, dass der Spieler nicht zwingend alle Waffen besitzt und so geprüft werden muss, ob er überhaupt im Besitz der Waffe ist. Beispiel: Es gibt 5 Waffen und der Spieler besitzt Waffe 1, 3 und 5. Mit jedem Tastendruck soll die Waffe durchwechseln (1,3,5,1,3,5,1 usw). Vielleicht liegt es daran, dass es schon spät ist, aber irgendwie probiere ich hier jetzt schon ewig mit irgendwelchen if-Konstruktionen zu arbeiten, doch ohne Erfolg. |
||
![]() |
kriD |
![]() Antworten mit Zitat ![]() |
---|---|---|
hast du die waffen durch types definiert? oder in arrays?
prinzipiell läuft es so ab, das jede waffe ne nummer hat und du hast ne variable (aktive_waffe zB), die die nummer der waffe speichert, die gerade in gebrauch ist. bei types suchst du dann solange die types durch (after ![]() bei arrays ist es noch einfacher, denn dort kannst du den gesuchten eintrag sofort ohne after oder before ansprechen, zB: waffe (aktive_waffe). dann hast du die gewünschte waffe und kannst deren eigenschaften abfragen. du kannst die waffen auch mit select case abfragen: Code: [AUSKLAPPEN] select aktive_waffe case 1 ;shotgun case 2 ;maschienengewehr . . end select nach case steht dann jeweils die effekte dieser waffe.. wenn eine waffe nicht verfügbar ist, dann machst du für jede waffe halt noch ne variable aktiv-oder-nicht (also bei types nochmal: field waffe_aktiv o.ä). wenn waffe nicht aktiv ist, dann sieht das programm dies anhand dieser variable und du kannst das auswählen verhindern/eine waffe weiterscrollen. hoffe, ich konnte helfen..(wenns nich verständlich is, liegts vlt daran, das ich immom n bissl müde bin ![]() lg kriD |
||
Wenn ich du wäre, wäre ich lieber ich! |
![]() |
garret |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich würde spontan ein Feld oder Blitz-Array vorschlagen, das sich merkt, ob eine Waffe vorhanden ist, z.B. Dim WaffeVorhanden(4)
Dazu eine Variable, die die aktuelle Waffe speichert, z.B. AktuelleWaffe = 0 Drückt man die Waffenwechseltaste, wird die Abfrage solange erhöht, bis eine Waffe gefunden wurde, die vorhanden ist: Code: [AUSKLAPPEN] Dim WaffeVorhanden(4) If KeyHit(WaffenwechselTaste) Repeat KontrollVariable = False AktuelleWaffe = AktuelleWaffe + 1 If AktuelleWaffe > 4 Then AktuelleWaffe = 0 If WaffeVorhanden(AktuelleWaffe) = 1 Then KontrollVariable = True Until KontrollVariable = True EndIf MfG, garret |
||
>>nec aspera terrent<< (Auch Widerwärtigkeiten schrecken nicht) |
Backbuffer |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Danke für die Hilfe. Hab's jetzt geschafft. Stand gestern abend einfach nur auf dem Schlauch.
Da hier auf Blitzarrays angesprochen wurden. Wie fülle ich solche am besten mit Werten. Angenommen ich hätte ein Blitzarray für Waffen mit unterschiedlichen Werten (Schaden, Reichweite, Energiekosten usw.) könnte ich das ja in Weapon[] speichern. Aber wie weise ich am effektivsten die Werte zu? Mit data? |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group