Zeige Ergebnis 1 bis 10 von 10

Thema: Aufnahme

  1. #1
    Benutzerbild von SpeedMaster22
    Registriert seit
    Apr 2011
    Ort
    NRW
    Beiträge
    271
    Likes
    0

    Aufnahme

    Hi,
    es giebt ja noch diese Funktionen im Trigger Editor:
    -Aufnahme
    -Aktionsdefinition
    -Funktion
    -Bedingungsdefinition

    Ich weiß es giebt noch mehr aber das sind die die mich interessieren.

    Aktionsdefinition wurde mir freundlicherweise schon zu geholfen.
    (Damit kann mann einen eigenen Trigger erstellen und dessen Aktionen besser definieren)

    Ich denke mal das wird mit dem Bedingungsdefinitionen nicht viel anders ablaufen.

    Nun haben wir da noch Aufnahme und Funktion wo ich euch bitte mir diese zu erklären und vielleicht ein kleines Beispiel gebt.

    Mfg

    SpeedMaster22
    Geändert von Mietfekatfe (26. September 2011 um 11:47 Uhr)


  2. #2
    Maps Benutzerbild von Küken
    Registriert seit
    Jul 2007
    Beiträge
    451
    Likes
    0
    Eine Funktion ist im Grunde das gleiche wie eine Aktionsdefinition, nur, dass du sie nicht von sich aus aufrufen kannst. Eine Funktion hat immer einen Rückgabewert, während das für eine Aktion optional ist. Du kannst eine Funktion nur für Felder benutzen, die den entsprechenden Rückgabewert verlangen.

    Nehmen wir zB die "auslösende Einheit", eine Funktion, die du vielleicht schon einmal benutzt hast. Du kannst sie nicht einfach als Aktion auswählen (würde auch nicht viel Sinn machen), aber du kannst sie bei Aktionen oder für Variablen benutzen, die eine Einheit erwarten.

    Eine eigene Funktion kann, genau wie eine eigene Aktion, verschiedene Aktionen kombinieren und dann einen Rückgabewert zurückgeben.


    Als Beispiel könntest du eine Funktion erstellen, die einen Wert um 1 erhöht. Nennen wir sie Inkrement. Als Parameter brauchen wir die zu erhöhende Zahl, als Rückgabewert geben wir den Parameter + 1 zurück (per Arithmetik- Funktion)

    Benutzen könntest du sie dann etwa so: (x und y sind integer- variablen)

    x=1
    y=Inkrement(x)

    Dann wäre y=2.
    Wie vorher gesagt, kann Inkrement nicht von sich aus aufgerufen werden; es würde auch wenig Sinn machen. Sie würde weiterhin den Parameter + 1 als Wert zurückgeben, aber dieser würde niemals benutzt werden, womit der Funktionsaufruf vollkommen wirkungslos wäre.


    Ich weiss leider mit Aufnahme nicht viel anzufangen.
    There's no spark.
    No light in the dark.

  3. #3
    Benutzerbild von SpeedMaster22
    Registriert seit
    Apr 2011
    Ort
    NRW
    Beiträge
    271
    Likes
    0
    Ah vielen Dank. Dann müsste mir jetzt nur noch jemand erklären wofür die Funktion Aufnahme gut ist.

  4. #4
    Benutzerbild von Devourer
    Registriert seit
    Dez 2010
    Ort
    NRW
    Beiträge
    137
    Likes
    0
    Guten Abend!
    Eine "Aufnahme" ist eine ansammelung von Variablen.
    Wenn du eine Aufnahme erstellt hast, kannst du in dieser mehrere Variablen erstellen. Anders als beim Array müssen diese natürlich nicht den selben Typ haben (integer, boolean usw.).

    Um an einen Wert einer Aufnahme per Auslöser gelangen zu kommen, musst du erst noch eine neue Variable erstellen, diesmal aber ausserhalb der Aufnahme selber. Diese sollte vom Typ "Aufnehmen" (Blizzard und ihre Übersetzungen ). Wähle in der Drop-Down-Liste der Variable dann deine erstellte "Aufnahme". Ich meine mich erinnern zu können, dass -solange nur eine Aufnahme existiert- die Variable automatisch diese Aufnahme verwendet und dieses Feld dann asugegraut / deaktiviert ist.

    Nun, ab jetzt kannst du die Aufnahme in Auslösern bzw Aktionen und Bedingungen verwenden: klicke oben auf "Variable", wähle die Variable aus, die deine Aufnahme enthält und du solltest in der Lage sein die Variablen innerhalb der Aufnahme zu erreichen.

    Bei Problem bitte nicht zögern erneut zu fragen!
    Shouldn't I be named "Corrupter"?...

  5. #5
    Maps Benutzerbild von Küken
    Registriert seit
    Jul 2007
    Beiträge
    451
    Likes
    0
    xD, "Record" = "Aufnahme". Logisch.
    There's no spark.
    No light in the dark.

  6. #6
    Benutzerbild von SpeedMaster22
    Registriert seit
    Apr 2011
    Ort
    NRW
    Beiträge
    271
    Likes
    0
    Danke jetzt weiß ich endlich wofür diese Funktionen sind

  7. #7
    Maps

    Moderator
    SC2-Mapping Forum
    Benutzerbild von Mietfekatfe
    Registriert seit
    Aug 2005
    Beiträge
    1.061
    Likes
    0
    Am anfang der Beta war es auch noch möglich Pointer zu verwenden, eldier haben sie das rausgenommen, argo können Records auch nicht als Parameter bzw Rückggabewert für Functionen/Aktionen sein, womit sie ein wenig ins lächerliche gezogen wurden. Wenn du dich ber mit purem galaxyscript auseinandersetzen willst kann man diese sperre mit dem plugin galaxy++ umgehen, die arbeiten dann mit arrays und du übergibst nur ei nen integerwert als parameter (kannst du natürlich auch im GUI so machen )
    <Arcturus_Mengsk> What is your current activities in my belated Dominion, fellow subjects?
    <+Mietfekatfe> Im walking arround, rubbing my head at fellow subjects legs and jump stupidly arround.
    <Arcturus_Mengsk> what shit you doin in sc2

  8. #8
    Benutzerbild von SpeedMaster22
    Registriert seit
    Apr 2011
    Ort
    NRW
    Beiträge
    271
    Likes
    0
    Das mit Galaxy hab ich leider aufgeben müssen, da es keine Tutorials giebt wo einem das beigebracht wird.
    Ich wüsste auch nicht wie ich anfangen sollte Galaxy zu lernen.

  9. #9
    Maps Benutzerbild von Küken
    Registriert seit
    Jul 2007
    Beiträge
    451
    Likes
    0
    Das kommt drauf an: Die größte Hürde ist für den Anfang der allgemeine Umgang mit einer Programmiersprache im Vergleich zu Auslösern. Hierfür brauchst du aber nicht Galaxy lernen, du kannst zB auch Tutorials für C machen (oder jede andere Programmiersprache. C bietet sich nur an, weil die Syntax sehr ähnlich zu Galaxy ist).

    Wenn du den Umgang mit Programmiersprachen im Allgemeinen gewohnt bist, ist das Hauptproblem dann nur noch die ganzen Funktionen zu lernen, die hinter den Auslösern stehen. Hierfür würde ich dringenst einen externen Editor mit Syntaxhighlighting, Autocompletion und Parameterliste empfehlen, zum Beispiel Notepad++ mit den entsprechenden Plugins oder den bereits angesprochenen Galaxy++ Editor.

    Du solltest dir aber vor Augen führen, dass Galaxy in keinster Weise notwendig ist, um eine gute Map zu machen. Im Gegensatz zu zB Warcraft 3 können die Auslöser in Starcraft 2 bis auf sehr wenige Ausnahmen alles, was man auch mit Galaxy Script machen kann, und auch die Performance ist wenn überhaupt nur unwesentlich schlechter.

    Es ist also kein Muss, Galaxy zu lernen, es ist mehr eine Geschmackssache: Ich benutze es, weil ich damit besser zurechtkomme und mich die normalen Auslöser nerven, aber wenn du mit Auslösern gut zurechtkommst, gibt es keinen Grund, unbedingt Galaxy zu lernen.
    Geändert von Küken (19. September 2011 um 20:05 Uhr)
    There's no spark.
    No light in the dark.

  10. #10
    Benutzerbild von SpeedMaster22
    Registriert seit
    Apr 2011
    Ort
    NRW
    Beiträge
    271
    Likes
    0
    Nagut wenn das wirklich so ist dann bleibe ich bei Auslösern, weil ich damit schon recht gut umgehen kann.

Forumregeln

  • Es ist dir nicht erlaubt, neue Themen zu verfassen.
  • Es ist dir nicht erlaubt, auf Beiträge zu antworten.
  • Es ist dir nicht erlaubt, Anhänge hochzuladen.
  • Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.
  •