ich benutze Monstas Shoot System. Am anfang des Scripts gibt es folgende Stelle:
"
class MSS # Monsta's Shoot System
def initialize
#===Optionen===#
@active = false # Ist das Schusssystem von Anfang an aktiv
(...)
@option_hud_sichtbar = [false,false] # Gibt an, ob der HUD mit HP und Ammo Anzeige Sichtbar sein soll. Der 2. Wert steht für den Nachladebalken
"
Mit dem Event-Script: "$MSS.active = true" lässt sich das System aktivieren.
Wenn ich aber: "$MSS.option_hud_sichtbar = [true,true]" aufrufe bekomme ich die Fehlermeldung: "undefined method for option_hud_sichtbar".
Kann mir jemand einen Ratschlag geben wie ich das HUD ein und ausschalten kann?
Ohne das ganze Script zu kennen, kann man da nichts genaues sagen.
Wahrscheinlich ist, dass @option_hud_sichtbar = [false, false] so gedacht ist, nur einmalig für das komplette Spiel entweder aktiviert oder deaktiviert zu sein (das sind ja, so wie ich das verstehe, nur Zusatzanzeigen) und deshalb nur im Script selbst geändert werden kann. Wenn du die Optionen durch ein Call Script ändern willst, musst du die Instanzvariable für außerhalb sichtbar machen, indem du im Script außerhalb einer Methode die Zeile attr_accessor :option_hud_sichtbar hinzufügst.
Sollte das nicht helfen, wäre es wirklich nicht verkehrt, das komplette Script zu posten
--
"Banjo, you're a BEAR... and I will teach you... THESE MOVES!"
Erst einmal vielen Dank für die schnelle Antwort.
Ich verstehe genau was du meinst, allerdings kenne ich mich in RGSS nicht besonders gut aus.
Hier erst einmal das relevante Script. insgesamt besteht es aus 4 Teilen.
Wenn ich deine Codezeile in die Zeile über "def initialize" (Zeile 2) einfüge erhalte ich keine Fehlermeldung mehr.
Doch das HUD erscheint nicht. Soll ich die anderen Teile des Skripts auch posten?
Das hat mit RGSS nichts zu tun, sondern mit Ruby. Nur um die Vokabeln klar zu stellen. RGSS ist die Bibliothek, welche von dem Maker verwendet wird, also die Grafik-, Sound- und Utilityklassen.
Der von dir gezeigte Code reicht noch nicht aus um eine qualifizierte Lösung deines Problems vor zu schlagen; aber wenn ich schätzen müsste, dann würde ich sagen, dass diese Variablen nur einmal zu Beginn, oder vielleicht nur sehr selten, ausgelesen und berücksichtigt werden. Vielleicht bei jedem Kartenwechsel, oder zu wann immer sonst das HUD neu erstellt wird.
Möglicherweise wird es einen Weg geben das HUD zu refreshen um eine Änderung der Variablenwerte wirksam zu machen.
Natürlich hast du Recht was RGSS betrifft, habe mich da laienhaft ausgedrückt.
Jedenfalls habe ich Levelwechsel usw. schon versucht um das HUD anzuzeigen.
Dies sollte der restliche relevante Teil sein: