Ergebnis 1 bis 13 von 13

Thema: [RM2k] Stelle in Variable selektieren

Baum-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1

    [RM2k] Stelle in Variable selektieren

    Hey-ho zusammen,

    ich habe länger nicht mit dem RPG-Maker gearbeitet und nun stellt sich mir folgende Frage, die ich mir aus der Erinnerung leider nicht mehr selbst beantworten kann: Ist es möglich, eine bestimme Stelle in einer Variablen selektiv anzusprechen, d.h. eine der sechs möglichen Ziffer einzeln abzufragen?

    Sowohl über "Input", als auch über den Testmodus erkennt man ja, dass sich die Zahlen einzeln verändern lassen - kann man diese auch individuell abfragen/ausgeben/in einer neuen Variablen speichern?

    Wenn ich nur "geschielt" haben sollte, bitte kurzen Hinweis, wo ich diese Funktion finde.

    Falls es die Frage schon gab, gerne den Verweis einfügen und Thema schließen.

    Zur Vereinfachung dieser eher abstrakten Frage mal EIN mögliches Anwendungsbeispiel für ein Kampfsystem:

    Zitat Zitat
    Var[0001] = HP Held (z.B. 000437)

    Var[0002] = Digit#3 Var[0001] (grafische Darstellung der Lebenspunkte für 100er-Schritte, Ziffern 0 - 9, wäre dann Wert "4")
    Var[0003] = Digit#2 Var[0001] (grafische Darstellung der Lebenspunkte für 10er-Schritte, Ziffern 0 - 9, wäre dann Wert "3")
    Var[0004] = Digit#1 Var[0001] (grafische Darstellung der Lebenspunkte für 1er-Schritte, Ziffern 0 - 9, wäre dann Wert "7")


    Ist das überhaupt möglich? Falls nicht, gibt es dazu eine elegante Lösung?
    Ich habe alternativ einen eher statischen "Holzfäller-Algorithmus" gebastelt, der mit Konstanten über "Fork Conditions" arbeitet.

    Zitat Zitat
    Var[0001] = Var[0002] (grafische Darstellung der Lebenspunkte für 100er-Schritte, Ziffern 0 - 9, Abfrage > 100, 200, 300, ...)
    Var[0001] = Var[0005/Abrechnung]

    fork
    if Var[0005/Abrechnung] >= 900
    then Var[0005/Abrechnung] -900
    Var[0005/Abrechnung] = Var[0003] (grafische Darstellung der Lebenspunkte für 10er-Schritte, Ziffern 0 - 9, Abfrage > 10, 20, 30, ...)
    else
    if Var[0005/Abrechnung] >= 800
    then Var[0005/Abrechnung] -800
    Var[0005/Abrechnung] = Var[0003] (grafische Darstellung der Lebenspunkte für 10er-Schritte, Ziffern 0 - 9, Abfrage > 10, 20, 30, ...)
    else
    (... bis größer/gleich 100 ...)
    end

    fork
    if Var[0005/Abrechnung] >= 90
    then Var[0005/Abrechnung] -90
    Var[0005/Abrechnung] = Var[0004] (grafische Darstellung der Lebenspunkte für 1er-Schritte, Ziffern 0 - 9, Abfrage > 1, 2, 3, ...)
    else
    if Var[0005/Abrechnung] >= 80
    then Var[0005/Abrechnung] -80
    Var[0005/Abrechnung] = Var[0004] (grafische Darstellung der Lebenspunkte für 1er-Schritte, Ziffern 0 - 9, Abfrage > 1, 2, 3, ...)
    else
    (... bis größer/gleich 10 ...)
    end

    Das sieht wegen der Fixwerte und der Schachtelbedingungen im Code schlicht hässlich, klobig und schwerfällig aus. Funktioniert zwar und bleibt als Ansatz bestehen, aber mir wär's schon recht, wenn's dafür eine geschicktere Variante gäbe.

    Besten Dank im Voraus für eure Hilfe und Hinweise!

    Geändert von Grak'Azul (27.05.2015 um 17:51 Uhr)

Berechtigungen

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