Ergebnis 1 bis 2 von 2

Thema: Statuspunkte direkt gegen EXP eintauschen

  1. #1

    Statuspunkte direkt gegen EXP eintauschen

    So ich fürchte ich stecke beim Skripten wieder fest... (Bis auf einem Menu werde ich wohl niemals etwas hinbekommen..... )

    Okay mein Problem sieht folgendermaßen aus: Ich möchte kein Level Up System für mein Spiel benutzen. Für die Statuswerte soll so eine Art (Bspw.) "1 Max.HP gegen 1 EXP" System her....

    Nun hatte ich eine Idee das so ähnlich wie das Skill Shop Skript zu machen. Nur das man anstatt Skills eben die Statuspunkte "kauft",
    Habe nur leider absolut keine Idee wie ich das angehen soll . Ein paar Tipps oder Hilfestellungen wären prima.
    Ich danke schon einmal im Voraus!

  2. #2
    Ok, da du das ganze anscheinend selber scripten willst, hier mal eine grobe Anleitung wie ich dabei vorgehen würde:

    1. Deaktivierung des Auflevelns
    Wenn die EXP rein als Währung dienen, darf der Levelup-mechanismus nicht greifen. Der sollte sich irgendwo in Game_Actor befinden. Auch die Berechnungen der aktuellen EXP solltest du löschen und aus exp eine einfach instanz-variable machen (lese und schreibzugriff - attr_accessor).

    2. Das Kaufmenü
    Prinzipiell gibt es hier viele verschiedene Möglichkeiten wie man das designt, hier aber nur mal eine grobe Version. Das Menü wird aus drei Fenstern bestehen. Einem Command-Fenster in dem man auswählt welchen Statuswert man erhöhen möchte, einem Info-Fenster wo die Statuswerte sowie der EXP-Stand des aktuellen Actors angezeigt werden und einem Help-Window für kleine Textanzeigen.
    Du brauchst für das große Info-Fenster eine neue Klasse, nennen wir sie mal Window_StatusBuy, abgeleitet von Window_Base. Die braucht nur eine initialize-methode, wo sie ein Actor-objekt entgegen nimmt und abspeichert, sowie eine refresh-methode, indem alle Informationen, die wir haben wollen gezeichnet werden. Optimalerweise sollte die instanzvariable @actor des Fensters von aussen beschreibbar sein (attr_accessor am besten).
    Der Rest ist dann simples Menü-basteln. Eine neue Scene erstellen, die drei Fenster erstellen und in der update-schleife den aktuellen Index des commandfensters abfragen und entsprechend den Text des Help-Fenster ändern. (zB "Erhöhe die HP um 5 für 10 EXP") Bei Enterdrücken, entsprechend des Index die Werte ändern und beim Statusfenster refresh aufrufen, damit die geänderten Informationen angezeigt werden.
    Du kannst noch die tasten für links und rechts abfragen und damit den aktuellen Actor ändern (refresh nicht vergessen).

    Damit hast du eine rudimentäre Scene um Statuspunkte mit XP zu kaufen.

Berechtigungen

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