Munition

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Ich habe mal wieder ne frage ich tuhe das spiel mal dabei, wie mache ich das die munition von der waffe abläuft zb das man nach 10 schuss nachladen tuht un wenn man nix hat das man dann nicht mehr schießen kann?
    Dateien
    • fps6.rar

      (487,53 kB, 123 mal heruntergeladen, zuletzt: )
  • ich hab hier gerade kein Gm bei mir, aber du musst einfach nur eine Variabel erstellen im create_event z.b.

    GML-Quellcode

    1. Munition=10 //z.b!!


    und bei jeden schuss eine abfrage machen ob Munition verfüg bar ist, wenn ja dann Schießen und den Wert der Variabel eins abziehen (also -1)

    GML-Quellcode

    1. if Munition > 0
    2. {
    3. // hier der schuss script, z.b:
    4. instace_create(schuss_obj,x,y)
    5. Munition -=1 //Munition wird um 1 abgezogen
    6. }

    jetzt braust du nurnoch eine Abfrage fürs nachladen

    GML-Quellcode

    1. if Munition <= 0
    2. {
    3. /* Hier kommt das rein was beim Nachladen passieren soll z.b. Munitzion wieder füllen */
    4. Munition = 10 //Munition wird wieder auf 10 Erhöht
    5. }



    Edit: Code bischen verkürzt, naja ich weis aber nicht ganz genau ob es dir helfen kann :-/
    *gähn*

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von The_Shadow3 ()

  • Also du solltest nicht gleich am anfang mit ein 3D spiel anfangen oO besonder weil du noch nicht mit Variabeln umgehen kannst.

    Im anhang ist die neue datei, dort wird jetzt nachgeladen, eine Munitionsanzeige und nachlade anzeige gibt es auch!

    Was ich gemacht habe:

    1. im Objekt obj_overlay hab ich die Variabeln....

    GML-Quellcode

    1. Munition = 100
    2. reload = false


    ...im create_event erstellt!

    danach hab ich eine abfrage gemacht beim space_event vor dem ganzen Scriptblock, eine if frage:

    GML-Quellcode

    1. if Munition > 0
    2. {
    3. .
    4. .
    5. .
    6. }


    die prüft nun ob munition verfüg bar ist, wenn es stimmt wird alles was in diesen block ist abgearbeite, damit man auch munition verliert, hab ich das eingefügt im selben block:

    GML-Quellcode

    1. Munition -= 10


    jetzt kommt der nachlade script, als erstes muss abgefragt werden ob keien munition da ist und ob man schon nachlädt

    GML-Quellcode

    1. if Munition <= 0 and reload = false
    2. {
    3. alarm[0] = 100
    4. reload = true
    5. }


    wenn die abfrage stimmt wird das alarm event gestartet, nach 100 Frames ist dann di emuniton wieder aufgefüllt:

    Alarm[0]:

    GML-Quellcode

    1. Munition = 100
    2. reload = false



    zum schluss wird nurnoch die Munition angezeigt, dabei hab ich eine healtlybar simuliert:

    GML-Quellcode

    1. draw_healthbar(200,460,250,475,Munition,c_black,c_blue,c_aqua,0,true,true);


    und noch ein kleinen text, das mann immer weis das man gerade nachlädt^^:

    GML-Quellcode

    1. if reload = true
    2. {
    3. draw_text(260,459,"Nachladen")
    4. }



    Fertig ist der Munitions script^^
    Dateien
    • fps6.zip

      (489,43 kB, 145 mal heruntergeladen, zuletzt: )
    *gähn*
  • naja du musst einfach ein objekt erstellen z.b. Munitions_pack dann im objekt obj_player ein collisions_event mit dem Muni_pack machen,
    dort wird dann dort wird dann eine zweite Munitions Vartiabel erhöht beim objekt obj_overlay, also in diesem fall: Munition_nachlade
    und dann muss nurnoch die nachlade script erweitert werden.
    Ich hab das projekt/example nochmal einmal überarbeitet und jetzt gibts eine neue anzeige wie bei Counter-Strike etc^^
    Munitionspack sind dann diese komischen quadrate^^

    Edit: aber so langsamm musst du auch mal alleine klarkommen^^ schau dir die anderen examples auch mal an, dann wirst du bald schon verstehen wie das geht.
    Dateien
    • fps62.zip

      (489,76 kB, 155 mal heruntergeladen, zuletzt: )
    *gähn*

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von The_Shadow3 ()