Ergebnis 1 bis 19 von 19

Thema: Mehrere Variablen verwenden?

  1. #1

    Mehrere Variablen verwenden?

    Hey

    hab da mal ne frage wegen den Speichern von Koordinaten....


    wenn ich Monster X,Y Variablen speichere, bräucht ich 40 variablen!

    beispiel (namen meiner variablen)
    Monster X 1
    Monster Y 1
    Monster X 2
    Monster Y 2
    Monster X 3
    Monster Y 3
    usw.

    kann man das net vereinfachen? dass ich net so viele Variablen brauche?

  2. #2
    Du brauchst doch nur 3 Variabeln. Wenn du die Position speichern willst. Diese Drei variabeln kann man so oft benutzten wie man will.

  3. #3
    wenn ich 8 gegner auf der map habe, kann ich doch keine 3 variablen für alle 8 verwenden,oder?

  4. #4
    Natürlich musst du für jeden Gegner auf der Map entsprechend Variablen haben, aber solange du keine Maps mit 20 Gegnern hast brauchst du nicht insgesamt 40 Variablen.
    Und selbst wenn gäbe es wirklich schlimmeres. Ist nicht so als wäre die Anzahl der maximalen Variablen so extrem beschränkt.

  5. #5
    Doch das geht. Monster 1 hat die Variable X rechnest dazu +1.
    Monster2 hat die Variable X und rechnest dazu +1 das Monster hat also die
    Nummer 2. Immer so weiter.

    (Wenn Ich dich jetzt richtig verstanden habe)

  6. #6
    wie mach ich dass dann? durch den Befehl "Store Event ID"? (Benutze RPG Maker 2003)

  7. #7
    Also so wie Ich dich verstehe hast du 40 Monster auf ner Karte? Erkär mal bitte was du genau vorhast.

  8. #8
    die koordinaten der gegner speichern...das habe ich vor....und das mit 40 monstern auf map war nur beispiel....

    ich weiß echt net wie das funzt....3 variablen für alle monster auf einer karte...

    kann mir bitte jemand in kurzen schritten sagen wie ich das am besten machn kann?

    Geändert von RandyTheZeldaFan (26.05.2010 um 15:35 Uhr)

  9. #9
    Du brauchst nur drei Variablen wenn du vorher eine Kollision abgefragt hast. Dann setzt du einfach X-Beliebige Werte in die X- und Y Koordinaten und fragst per "Get Event ID" mit diesen Variablen ab, ob sich ein Event dort befindet. Wenn die Variable "Event ID" dann 1 oder grösser ist, dann befindet sich dort ein Event. Du musst dann nur noch die Fälle ausspielen. Ist Event 3 beispielsweise ein Baum, dann passiert garnichts. Brauchst du also garnicht in das Skript packen. Ist Event 4 ein Gegner, dann spielst du durch was passiert, beispielsweise "Flash Event", "Change Variable" (Schaden/LP des Gegners) usw.

    Du kannst aber auch alles in den Events der Gegner selber durchspielen und nach Abfrage der ID einfach per "Call Event ID" den Gegner aufrufen, um das Skripting zu verkürzen.
    Im Falle von eingeblendeten Grafiken per Events passiert wieder nichts bei einer Kollision, da sie kein Skript haben. Bei Gegnern dann schon.

    Geändert von natix (26.05.2010 um 15:43 Uhr)

  10. #10
    ah, ok ich versuchs mal

    danke

  11. #11
    Naja es gibt ein Problem....das solln shooter werden, pfeil und bogen...
    da gehn kollisionen net

  12. #12
    Aber gerade bei Shootern ist eine Kollisionsabfrage einfach zu machen. Du musst ja nur die Schusslinie in der Richtung in der halt geschossen wird abfragen. Bei einer Nahkampfabfrage ist das komplizierter, aber so musst du nur wie folgt vorgehen:
    Frage per Condition die Heldenrichtung (Sprich die Richtung in die der Held guckt) ab und setzt die X und Y Koordinaten erst auf die Position des Heros. Dann gehst du wie folgt vor:
    • Guckt der Held nach oben, musst du die Y Koordinate immer -1 nehmen, fragst dann die Event ID ab und wiederholst das ganze. Der Held schiesst nach oben. (Y Koordinate bleibt unverändert)
    • Guckt der Held nach rechts das ganze wie oben, nur das du die X Koordinaten immer +1 nimmst
    • Guckt er nach unten Y +1
    • Und nach links X -1


    Du musst halt jedes Mal nachdem du die Koordinate verändert hast die Event ID abfragen. Zudem solltest du dir etwas einfallen lassen was die Kollisionsabfrage beendet.

  13. #13
    ufff.... und nochemal...
    Herzlich Welcome

    Okaj: Du brauchst nur drei Variablen, die sich alle Gegner teilen. Ein Pic habe ich dir ja schon gegeben. Ich setze mich heute nochmal mit dem RPG 2k dran, und dann sehen wir es ja, ob ich vielleicht doch nicht was falsch gedacht habe. Aber auf dem XP hatte es ja geklappt xD

    Okaj, außerdem brauchst du für jeden Gegner mindestens eine Variable, da du ja fragen musst, wieviel HP er hat. Außer du setzt nach jedem neu Betreten einer Karte sämtliche Variablen wieder auf null. Wo ist denn Tropi, wenn man ihn braucht

    Auf jedem Fall:
    Held X/Y → brauchen wir X, bekommt diese Variable X, brauchen wir Y, bekommt sie Y. Aber das wir beide Werte gleichzeitig brauchen, gibt es nicht
    Monster X/Y → das gleiche Spiel wie mit Held X/Y, bloß dass jetzt noch zusätzlich alle Monster die Variablen teilen und wir immer nur nach dem Monster fragen, den wir auch fragen wollen/müssen. Und solange wir kein Wait haben, ist dies alles (praktisch) gleichzeitig.

    Monster 1(HP) → uih, erklärt sich ja von selbst.

    Und hier das alles mit Spieler nach ← von Gegner 1
    Den rest müsste man im Prinzip nur kopieren und ein paar Sachen verändern wie X mit Y vertauschen und umgekehrt oder andere EventID.

  14. #14
    Zitat Zitat
    Held X/Y → brauchen wir X, bekommt diese Variable X, brauchen wir Y, bekommt sie Y. Aber das wir beide Werte gleichzeitig brauchen, gibt es nicht
    Kann mir kaum vorstellen das dein Skript so funktioniert hat. Du musst ja den Radius des Schadens berechnen, also eine Kollision abfragen. Dazu brauchst X und Y Koordinaten des Helden. Wenn du nur X abfragst, weil der Held nach links oder rechts gedreht ist, dann liegt der Schadensradius irgendwie auf einer belibeigen Stelle der Y-Achse, je nachdem wie die Koordinate das letzte Mal platziert wurde.

    edit:
    Selbst in deinem Beispiel fragst du sowohl X als auch Y ab.

  15. #15
    jep, aber ich benutze für beide Sachen die gleiche Variable. Und das habe ich ja versucht, rüberzubringen. Ich weiß, ich bin nich grad der beste Lehrer xD

  16. #16
    Wozu? Bist du zu faul HeroX und HeroY zu schreiben?
    Die Koordinaten mehrerer Monster in nur zwei Variablen zu speichern macht ja Sinn, ganz einfach um sich Arbeit zu sparen und nicht alle möglichen Variablen abfragen zu müssen. Aber die Koordinaten des Helden in einer Variable zu speichern macht das Skript nur unnötig kompliziert.

  17. #17
    Eins ist mir gerade aufgefallen:
    Bitte den Thread ins Technik-Forum (RMXP, RMVX) schieben.

  18. #18
    why? Es geht hier um dem RPG Maker 2k. xD
    Mein Screen war nur auf dem XP, weil ich weiß, es gibt zwischen denen kaum Unterschiede und hab dem 2k nimma xD

  19. #19
    Zitat Zitat von Adrian2000 Beitrag anzeigen
    why? Es geht hier um dem RPG Maker 2k. xD
    Mein Screen war nur auf dem XP, weil ich weiß, es gibt zwischen denen kaum Unterschiede und hab dem 2k nimma xD
    Dann weisst du nichts richtiges. Zwischen dem XP und dem 2k bestehen schon einige Unterschiede was den Eventcode angeht. Besonders da der Output im Fenster nicht derselbe ist.

    @Topic
    Speichere nur das dauerhaft ab was du auch wirklich brauchst. Wenn du also bspw. 10 Gegner auf der Karte hast von denen du jewals zwei Koordinaten abspeichern musst, frage dich ob das nötig ist da du an die Koordinaten auch anders herankommst, dann brauchst du nun mal 20 Variablen.

    Wenn du größere Mengen an Variablen benutzen musst, dann lege sie in Blöcken ab. Reserviere dir einen gewissen Bereich für die Variablen und benenne sie vernünftig.

    Bspw.:
    0001: Gegner[0].X
    0002: Gegner[0].Y
    0003: Gegner[1].X
    0004: Gegner[1].Y
    [...]

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •