Du bist nicht angemeldet.

Lieber Besucher, herzlich willkommen bei: Game Maker Domäne. Falls dies dein erster Besuch auf dieser Seite ist, lies bitte die Hilfe durch. Dort wird dir die Bedienung dieser Seite näher erläutert. Darüber hinaus solltest du dich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutze das Registrierungsformular, um dich zu registrieren oder informiere dich ausführlich über den Registrierungsvorgang. Falls du dich bereits zu einem früheren Zeitpunkt registriert hast, kannst du dich hier anmelden.

  • »The Gamer« ist der Autor dieses Themas

Beiträge: 931

Game Maker Version: 7 Pro

Selbsteinschätzung: GML Anfänger

Aktuelles Projekt: Station Omega (Weltraumshooter)

  • Private Nachricht senden

1

Sonntag, 9. August 2009, 00:09

Variable in Skript soll Wert behalten

Hallo, ich bau mir grad ein Skript zusammen, bei dem am Anfang eine Variable auf 0 gesetzt wird und bei bestimmter Aktion dann auf 1 bis 4.

Diesen Skript muss ich im Draw-Event ausführen und deshalb wird sobald er auf einen anderen Wert als 0 gesetzt wird, danach gleich wieder auf 0 gesetzt, da der Skript ja jeden Step ausgeführt wird.
Gibt es eine Möglichkeit das zu ändern, auser der Variable ein Argument zuzuweisen, dass ich dann selber im Create-Event des ausführenden Objekts auf 0 setze.


Sorry für die verwirrende Ausdrucksweise, aber ich hab keine Ahung wie ich das leichter erkären kann und hoff dass das hier trotzdem jemand versteht, wenn nicht, bitte schreiben, dann versuch ichs nochmal irgendwie anders zu erkären.


edit: nicht mal so, als argument funktionierts.
Gruß Gamer

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »The Gamer« (9. August 2009, 00:20)


mauge

Neujahrs-Contest-Sieger 2009

Beiträge: 2 804

  • Private Nachricht senden

2

Sonntag, 9. August 2009, 07:18

Ich hab leider nicht ganz verstanden, was genau dein Problem ist, aber im Fall der Fälle kann es hilfreich sein, eine weitere Variable anzulegen. Die könnte dann z.B. eine Art Zustand festlegen, nach dem sich deine Hauptvariable richtet. Man müsste mal wissen, was genau du vorhast. Manchmal reicht es schon, die Reihenfolge der Befehle im Step Event (oder in deinem Fall im Draw Event) zu ändern. Am besten, du lädst mal eine gmk/gm6 hoch.
█████ ██ █ ████ everything ███ █████ is █████ ████ ████ fine ████ ███ █ ██████ love.
█████ ███████ ███ your █████ ████ government.

  • »The Gamer« ist der Autor dieses Themas

Beiträge: 931

Game Maker Version: 7 Pro

Selbsteinschätzung: GML Anfänger

Aktuelles Projekt: Station Omega (Weltraumshooter)

  • Private Nachricht senden

3

Sonntag, 9. August 2009, 12:17

Hi, hab mal ein paar deiner Methoden ausprobiert, aber es klappt irgendwie nicht.

Hier mal die gmk: Buymenu a la CS.zip


Also, ich wollte halt so ein Buymenu wie in CS machen und das halt ohne Objekte, nur gedrawt, also halt nur ein ausführendes Objekt, aber nicht, dass jeder Button ein Objekt ist.

Im Skript scr_buymenu gibts die Variable button, die am Anfang 0 ist und dann je nach Button der angeklickt wird, die Werte 1 - 4 annimmt.
Aber der Wert wird ja dann sofort wieder auf 0 gesetzt, weil das Draw-Event ja jeden Step ausgeführt wird.


Aber wahrscheinlich ist es sinnvoller das Buymenu mit mehreren Objekten zu machen oder wie würdet ihr das am
perfomance-schonensten machen?
Gruß Gamer

peyj

Konfetti

Beiträge: 81

Game Maker Version: 8 Pro

Selbsteinschätzung: GML Fortgeschrittener

Aktuelles Projekt: verschiedene kleinere sachen

  • Private Nachricht senden

4

Sonntag, 9. August 2009, 17:32

Mach doch einfach so:

GML

1
2
if  ( not variable_local_exists('button'))
 button = 0


edit: komisch er coloriert das not garnicht. Im GM funktionierts aber

  • »The Gamer« ist der Autor dieses Themas

Beiträge: 931

Game Maker Version: 7 Pro

Selbsteinschätzung: GML Anfänger

Aktuelles Projekt: Station Omega (Weltraumshooter)

  • Private Nachricht senden

5

Sonntag, 9. August 2009, 19:59

ok danke, ja das not kann man ja auch als ! schreiben :thumbsup: :thumbsup:

edit: ne, das funktioniert nicht, da kommt ne Fehlermeldung und zwar das bei

GML

1
return button;

ein Zeichen fehlt, hab aber den ganzen Skript ein paar mal durchgeschaut, da hab ich nirgends irgendwas vergessen und ohne diese variable_local_exists, also nur die 2. Zeile von deinem Code, klappts ja.
Gruß Gamer

peyj

Konfetti

Beiträge: 81

Game Maker Version: 8 Pro

Selbsteinschätzung: GML Fortgeschrittener

Aktuelles Projekt: verschiedene kleinere sachen

  • Private Nachricht senden

6

Sonntag, 9. August 2009, 22:18

Hast du vielleicht mehr Sachen drangehängt und dann { } vergessen.
Ansonsten fällt mir jetz auch nichts ein. :S

  • »The Gamer« ist der Autor dieses Themas

Beiträge: 931

Game Maker Version: 7 Pro

Selbsteinschätzung: GML Anfänger

Aktuelles Projekt: Station Omega (Weltraumshooter)

  • Private Nachricht senden

7

Sonntag, 9. August 2009, 22:20

nein, hab ich nicht, ich vergess diese Klammern nie, mach die auch wenns nur eine Aktion gibt
Gruß Gamer

TrunX

***Katzengold***

Beiträge: 1 624

Game Maker Version: 6 registriert

Selbsteinschätzung: GML Fortgeschrittener

  • Private Nachricht senden

8

Sonntag, 9. August 2009, 22:34

Wenn ich dich richtig verstanden habe, dann nutz globale Variablen.


Verwurster

Gevatter Tod

Beiträge: 667

  • Private Nachricht senden

9

Sonntag, 9. August 2009, 22:46

wie wär's mut 'return' an Stelle der variabel?

  • »The Gamer« ist der Autor dieses Themas

Beiträge: 931

Game Maker Version: 7 Pro

Selbsteinschätzung: GML Anfänger

Aktuelles Projekt: Station Omega (Weltraumshooter)

  • Private Nachricht senden

10

Sonntag, 9. August 2009, 22:47

ok danke, ich probiers aus, wenn es nicht klappt, ist auch egal, wollte sowieso nur etwas ausprobieren.


ABer wie würdet ihr das Buymenu machen:
So wie ich? Mit mehreren Objekten (also für jeden Button eins)? Oder irgendwie ganz anders?
Wie ist es am perfomance schonenden?
Gruß Gamer

MasterXY

***Gold***

Beiträge: 1 645

Game Maker Version: 8 Pro

Selbsteinschätzung: GML Experte

Aktuelles Projekt: Geheimprojekt mit Soul Reaver, Hard Recoil

Danksagungen: 23

  • Private Nachricht senden

11

Montag, 10. August 2009, 14:00

Ich würds mit einem Objekt regeln.
Zu deinem Problem: Füg den Code in ein extra Script ein wenn du das noch nicht getan hast. Dann schreib im Script statt button=0, button=argument0.
Und dann führst du den Script eben so aus:

GML

1
scr_bymenu(button)

und im create-event setzt du button mal auf 0.

© 2008 by Teamgrill Productions

  • »The Gamer« ist der Autor dieses Themas

Beiträge: 931

Game Maker Version: 7 Pro

Selbsteinschätzung: GML Anfänger

Aktuelles Projekt: Station Omega (Weltraumshooter)

  • Private Nachricht senden

12

Montag, 10. August 2009, 14:03

genau das hab ich schon versucht, aber irgendwie klappt das nicht, kommt auch keine Fehlermeldung, keine Ahnung warum
Gruß Gamer

MasterXY

***Gold***

Beiträge: 1 645

Game Maker Version: 8 Pro

Selbsteinschätzung: GML Experte

Aktuelles Projekt: Geheimprojekt mit Soul Reaver, Hard Recoil

Danksagungen: 23

  • Private Nachricht senden

13

Montag, 10. August 2009, 14:06

Wär vll nützlich zu sagen welche.

© 2008 by Teamgrill Productions

  • »The Gamer« ist der Autor dieses Themas

Beiträge: 931

Game Maker Version: 7 Pro

Selbsteinschätzung: GML Anfänger

Aktuelles Projekt: Station Omega (Weltraumshooter)

  • Private Nachricht senden

14

Montag, 10. August 2009, 14:15

was soll ich sagen???
Gruß Gamer

MasterXY

***Gold***

Beiträge: 1 645

Game Maker Version: 8 Pro

Selbsteinschätzung: GML Experte

Aktuelles Projekt: Geheimprojekt mit Soul Reaver, Hard Recoil

Danksagungen: 23

  • Private Nachricht senden

15

Montag, 10. August 2009, 16:30

die Fehlermeldung :P

© 2008 by Teamgrill Productions

Irrenhaus3

Unschuldspony

Beiträge: 1 061

Game Maker Version: 8.1 Standard

Selbsteinschätzung: GML Fortgeschrittener

Aktuelles Projekt: Fremde, höllisch anmutende Schreckensdimension unterwerfen. Und TG3!

  • Private Nachricht senden

16

Montag, 10. August 2009, 18:29

aber irgendwie klappt das nicht, kommt auch keine Fehlermeldung, keine Ahnung warum

Wer lesen kann, ist klar im Vorteil. :deal:


MasterXY

***Gold***

Beiträge: 1 645

Game Maker Version: 8 Pro

Selbsteinschätzung: GML Experte

Aktuelles Projekt: Geheimprojekt mit Soul Reaver, Hard Recoil

Danksagungen: 23

  • Private Nachricht senden

17

Montag, 10. August 2009, 18:43

Oha^^
Jaja das kommt vom Überfliegen.
Habs mir jetz mal angeschaut. Wenn dus so machst wie ich gesagt hab musst du natürlich die variable button von der var definition entfernen.

© 2008 by Teamgrill Productions

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »MasterXY« (10. August 2009, 18:50)