Hey Leute,
ich arbeite gerade an einem kleinen TopDown Spiel. In diesem kann man auch schießen(in 4Richtungen mit Tastatur).
Mein Problem ist, der Abstand zwischen den Schüssen/Projektilen und dass der Spieler dann anfängt zu schießen, wenn die zugehörige Taste gedrückt wird.
Bis vor kurzem habe ich es so gemacht:
Das Problem ist nur, dass wenn die Feuerrate zB. auf 60 gesetzt wird, man deutlich merkt das man nicht sofort schießt falls die Taste gedrückt wird.
Deshalb habe ich folgendes versucht:
Alles anzeigen
Der Code im Step Event geht leider nicht und selbst wenn, könnte man immernoch die Taste ganz oft hintereinander drücken und somit schneller schießen als wenn man gedrückt hält.
Meine Probleme und Lösungsansätze habt ihr jetzt ja.
Nun will ich euch fragen, ob ihr wisst wie ich das Problem lösen könnte. Ein Codebeispiel ist vorerst nicht nötig.
Danke im Vorraus
ich arbeite gerade an einem kleinen TopDown Spiel. In diesem kann man auch schießen(in 4Richtungen mit Tastatur).
Mein Problem ist, der Abstand zwischen den Schüssen/Projektilen und dass der Spieler dann anfängt zu schießen, wenn die zugehörige Taste gedrückt wird.
Bis vor kurzem habe ich es so gemacht:
Das Problem ist nur, dass wenn die Feuerrate zB. auf 60 gesetzt wird, man deutlich merkt das man nicht sofort schießt falls die Taste gedrückt wird.
Deshalb habe ich folgendes versucht:
GML-Quellcode
- //Create Event//
- global.schuss = false //Legt fest, ob geschossen wird(true) oder nicht(false)
- //Step Event//
- if keyboard_check(global.itemuntenTaste) or keyboard_check(global.itemobenTaste) or
- keyboard_check(global.itemrechtsTaste) or keyboard_check(global.itemlinksTaste)
- if global.schuss == false{
- alarm[0] = 0
- global.schuss = true
- }
- if !keyboard_check(global.itemuntenTaste) && !keyboard_check(global.itemobenTaste) &&
- !keyboard_check(global.itemrechtsTaste) && !keyboard_check(global.itemlinksTaste) { //Falls keine Taste gedrueckt wird
- global.schuss = false;
- }
- //Alarm[0]Event//
- //Falls nach links gedrueckt wird nach links schiessen usw.
- alarm[0] = global.feuerrate
Der Code im Step Event geht leider nicht und selbst wenn, könnte man immernoch die Taste ganz oft hintereinander drücken und somit schneller schießen als wenn man gedrückt hält.
Meine Probleme und Lösungsansätze habt ihr jetzt ja.
Nun will ich euch fragen, ob ihr wisst wie ich das Problem lösen könnte. Ein Codebeispiel ist vorerst nicht nötig.
Danke im Vorraus