Einfach das als neues Script über Main einfügen:
und dann in Scene_Title die Stelle wo eine Instanz von Window_Command erzeugt wird, durch Window_Command_Horizontal ersetzen.
Hallo Community,
ich würde gerne einen Wettereffekt anzeigen lassen im Titelmenü, also über dem Titelbild.
Um präzise zu sein, es geht um den Schnee WeatherEffect.
Der RPG-Maker XP besitzt keine eingebaute Funktion um Wettereffekte zu erstellen.
Der VX besitzt zwar solch eine Funktion, intern wird jedoch auch nur ein neues Bitmap erschaffen und ein Schnee-Effekt darauf gezeichnet.
Ich würde dir raten es dir einfacher zu machen und einfach ein Bild des Schnee-Effektes zu erstellen oder aus dem Internet zu suchen, diesen als Plane in einen Viewport zu stecken und dann periodisch die Offset-Werte für X und Y-Koordinaten zu manipulieren je nachdem wie schnell oder langsam du den Schnee fallen haben möchtest.
Wenn du dir viel mühe geben willst kannst du auch separate Sprites für jede "Zeile" des Schnee-Effektes erstellen und diese dann individuell bewegen lassen um es weniger "systematisch" fallen zu lassen.
@Cornix:
Hm, ich dachte man könne einfach den Effekt den man auf den Maps einstellen kann, im Script Editor in Scene Title oder so kopieren.
Naja, danke für die Antwort, muss mal gucken für welche Methode ich mich entscheide oder ob ich's einfach bei 'nem normalen TB belasse.
@Sorata:
Wäre dann auch eine Möglichkeit. Scripte dafür finden sich ja wie Sand am Meer.
Tatsächlich.
Ich habe mich lediglich auf den Script-Editor gestützt und dort keine Wettermethoden gefunden.
Ich habe garnicht daran gedacht, dass die Wettereffekte derart versteckt werden würden.
Ist bei einige der Klassen, die die Enterbrain-Leute als Kern des RGSS gesehen haben so. GLücklicherweise ist in der Hilfedatei zu allein nicht-Ruby-RGSS-Klassen der Sourcecode und gute Kommentierung zu finden.
Hallo Community,
ich hätte eine Frage bzgl. des KS des Makers.
Wenn ich während eines Kampfes ein Picture anzeigen lasse, legt sich dieses über den Windowskin, wenn ich z.B. Techniken auswählen will.
Was muss ich wo umschreiben, das sich der Windowskin über das Picture legt?
Meine zweite Frage wäre, wie ich es vermeiden kann, das nach dem Kampf das Fenster erscheint in dem drinsteht wieviel EP und Geld man gewonnen hat.
Ich hoffe jemand kann mir helfen.
Das mit den Picturen ist ein wenig kompliziert. Es ist so, dass alle Arten von Grafiken welche auf dem Bildschirm dargestellt werden sollen in einen Viewport gepackt werden müssen.
Im Kampf sind zum Beispiel das Hintergrundbild und die Feinde in einem Viewport. In einem zweiten sind die Charaktersprites. In einem nächsten sind dann die Pictures. Und so weiter.
Die Fenster werden allerdings im RPG-Maker XP standardmäßig in keinen Viewport gepackt, demnach also in einen generischen standardviewport auf welchen du keinen Einfluss nehmen kannst.
Die Z-Position der Grafiken, also welche Grafik über einer anderen dargestellt wird, ist aber auch von ihrem Viewport abhängig. Viewports besitzen ebenfalls eine Z-Koordinate und falls ein Viewport über einem anderen liegt so liegen gleichzeitig auch alle Sprites innerhalb dieses Viewports über allen aus dem anderen.
Um die Pictures nun also unter die Fenster zu schieben müsstest du den Fenstern einen Viewport geben und das wäre ein wenig mehr Arbeit, es würde vor allem gutes Verständnis von dem was man machen will erfordern.
Eine einfachere Lösung könnte natürlich für dich sein einfach die Höhe des Viewports auf welchem die Pictures gelegt werden zu beschränken insofern dieser garnichtmehr bis zu den Fenstern am unteren Bildschirmrand reichen wird.
In dem Script: "Spriteset_Battle" findest du dafür in Zeile 21 die Anweisung:
@viewport3 = Viewport.new(0, 0, 640, 480)
[Anmerkung: Parameter für einen Viewport sind: (x, y, width, height).]
Dieser Viewport ist derjenige welcher die Pictures umfasst. Wenn du die Höhe, also die "480" in dieser Zeile nun variierst werden die Pictures garnichtmehr bis zu den Fenstern reichen dürfen.
Versuche es einmal diese Zeile mit folgender auszutauschen:
@viewport3 = Viewport.new(0, 0, 640, 320)
Für dein zweites Problem versuche einmal folgendes:
In dem Script: "Scene_Battle 2" tauscht du die Zeilen 191 bis 194 welche lauten:
# Make battle result window
@result_window = Window_BattleResult.new(exp, gold, treasures)
# Set wait count
@phase5_wait_count = 100
gegen diese Zeilen aus:
@status_window.refresh
battle_end(0)
Das sollte eigentlich bereits alles sein was zu tun ist.