object_add + 1 und eigenen Namen auslesen

  • GM 8

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

  • object_add + 1 und eigenen Namen auslesen

    Hey ;)
    Wie kann man mit "object_add()" ein Objekt erstellen, dass wenn man nochmal auf die Schaltfläche drückt die das Objekt erstellt, das Objekt dann statt "object1" "object2", dann "object3", dann "object4" und "object5" (etc.). Dann soll das Objekt per Linksklick seinen Namen in eine Textdatei schreiben. Wie man ein Objekt mit "object_add()" erstellt weiß ich:

    GML-Quellcode

    1. globalvar object1
    2. object1 = object_add();


    Dankö :)

    DigitalClark

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

  • Du musst einen Index haben, den du beim Erstellen eines neuen Objekst um 1 erhöhst. Wie wärs vor dem Posten, erst selbst eine Lösung zu finden und den Lösungsansatz, dann hier zu posten. Deine Beiträge klingen alle so, als ob du dir dein Projekt von Anderen zusammenbauen lässt und dir nicht mal die Mühe machst selbst Hand anzulegen.

    MfG

    Albert Einstein schrieb:

    Probleme kann man niemals mit derselben Denkweise lösen, durch die sie entstanden sind.
  • Trixt0r schrieb:

    Deine Beiträge klingen alle so, als ob du dir dein Projekt von Anderen zusammenbauen lässt und dir nicht mal die Mühe machst selbst Hand anzulegen.
    Oooh :(
    Das tut mir leid. Ich lege sehr viel Hand an und versuche mein Projekt so gut wie möglich zu gestalten, aber bei manchen Sachen weiß ich einfach nicht weiter. Das war ja auch einer der Gründe, warum ich mich beim hier angemeldet habe... Naja :)
    Aber zurück zum Thread:
    Dürfte ich ein Beispiel haben? Bittö :)
    Das mit den Lists ist auch ein guter Tipp, ich glaube das bekomme ich selber hin :).
    MfG das Stehaufmännchen Clark :rolleyes:

    EDIT: Das mit den Lists geht so, oder?

    GML-Quellcode

    1. globalvar mylist
    2. ds_list_create()
    3. ds_list_add(object1,0)
    4. ds_list_add(object2,0)
    5. ds_list_add(object3,0)
    6. ds_list_add(object4,0)
    7. ds_list_add(object5,0)
    8. //Variable erstellen


    DigitalClark
  • EDIT: Das mit den Lists geht so, oder?
    Ehh... Nein.
    Alle ds_list-Funktionen außer ds_list_create brauchen ein ID als erstes Argument und diese ID bekommst du von ds_list_create();

    GML-Quellcode

    1. meineListe=ds_list_create();
    2. ds_list_add(meineListe,object1)
    3. ds_list_add(meineListe,object2)
    4. ds_list_add(meineListe,object3)
    5. ds_list_add(meineListe,object4)
    6. ds_list_add(meineListe,object5)
    wupto.net/ Nicht meine Seite!
    We love Koalas.

    GM-D-Spam-o-Meter: 32%
  • henrik1235 schrieb:

    Ehh... Nein.
    Oops :)
    Ich überlege mir gerade mich von GML Fortgeschrittener auf GML Anfänger herunterzustufen.
    Uii :)
    Wie könnte ich das mit "object_add()" in verbindung bringen (wie man ein Objekt erstellt weiß ich aber echt ;)) und wie kann ich das in eine Textdatei schreiben? Ich hoffe ich kann mein Projekt bald hier vorstellen :) Vielleicht werdet ihr ja auch erwähnt :)

    DigitalClark
  • GML-Quellcode

    1. var obj;
    2. obj=object_add();
    3. //Events hinzufügen etc.
    4. ds_list_add(meineObjektListe,obj); //kann auch kürzer sein

    Mit ds_list_size und ds_list_find_value kannst du das ganze in einer for-schleife auslesen und in eine Textdatei schreiben, aber warum object_add, und was hat das mit Textdatein zu tun?
    wupto.net/ Nicht meine Seite!
    We love Koalas.

    GM-D-Spam-o-Meter: 32%
  • Clark schrieb:

    Ich überlege mir gerade mich von GML Fortgeschrittener auf GML Anfänger herunterzustufen.
    Gute Idee, als Fortgeschrittener sollte man Datenstrukturen (und die Hilfe) verstehen können ^^

    Anstatt uns zu sagen, wie du gerne etwas bewekstelligen würdest, solltest du uns erst einmal verraten, was du überhaupt vorhast. Da hat henrik1235 vollkommen Recht. Mit object_add() ist das ähnlich wie mit execute_code(), man meint schnell, das sei perfekt um eine Sache zu bewerkstelligen. Ist es nicht. Es gibt nur sehr, sehr wenige Fälle, wo das wirklich nötig ist. Und selbst in diesen Fällen kann man es oft noch anders machen.

    Genug um den heißen Brei geredet. Sag uns, worum es geht! ;)
  • copyboy schrieb:

    Genug um den heißen Brei geredet. Sag uns, worum es geht! ;)

    Gesagt, getan!
    Ich möcht' euch ja auch nicht aufhalten :)
    Folgendes:
    Ich möchte per Linksklick mit object_add() ein Objekt erstellen (es soll schon "object_add()" sein), der Name soll immer um +1 zunehmen.
    Dann soll der Instanz Events hinzugefügt werden (das hab' ich schon), denn wenn man Rechtsklick auf die neue Instanz macht, dann öffnet sich ein
    Fenster indem man eine Textdatei auswählen muss. In der Textdatei stehen werte, wie z.B. (ausgedacht) "figurindex = 1", die die Instanz dann ausführt (hier zum Beispiel auf "image_index = 0" wechseln. Nun möchte ich aber nicht, dass er dies sofort ausführt, sondern, dass dies erst ausgeführt wird, wenn man auf einen anderen "Knopf" klickt. Deshalb soll beim Rechtsklick der mit "object_add()" erstellten Instanz eine Textdatei erstellt werden, indem dann folgendes steht: "object1 verknuepftmit [VERZEICHNIS DER TEXTDATEI, INDEM "figurindex = 1" steht]. Wenn der "Knopf" dann geklickt wurde, liest er aus welches Objekt gemeint ist (in diesem Fall "object1" und mit welchem Verzeichnis. Dann liest er die Textdatei im Verzeichnis aus und wenn da dann "figurindex = 1" steht wird der "image_index" auf "0" gesetzt. Das ist jetzt nur ein Beispiel, in meinem Projekt sind es noch ganz andere Werte, aber das tut ja nichts zur Sache, da ich die ja Verändern kann.
    Hoffe das reicht, hab' mir meine Finger wund getippt!
    Bye ;)
    P.S.: Werde mal einen Thread eröffnen, indem steht was ich alles brauche, bis mein Projekt fertig ist :)
    Ich warte schon soo lange darauf es euch vorzustellen!

    EDIT:
    Gute Idee, als Fortgeschrittener sollte man Datenstrukturen (und die Hilfe) verstehen können ^^
    Die Hilfe kann ich verstehen :)

    Noch ein Edit: Niemand? :(

    DigitalClark

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

  • Wenn ich das jezt richtig verstehe du möchtest ein neues Objekt erstellen wenn ja benutzt man nicht den Code:

    GML-Quellcode

    1. object_add()

    sondern:

    GML-Quellcode

    1. instant_create(x,y,object)

    Nur so am rande jezt gerade kann ich mich nicht um dein Problem kümmern da ich schon sehr müde bin ich muss mir morgen alles nochmal ankucken.
    Mfg Rohkar
    P.S Ich geister irgendwie immer nur nachts auf Gm-D herum ^^