Erstes Script
Hi Leutz,
habe mir gestern Abend den RMXP runtergeladen und bin jetzt fleißig am Probieren!
Kann mir jemand erklären, wie ich mit dem Script-Editor eine Funktion gibTextAus(text) erstellen kann, der ich beim Aufruf einen Text übergeben kann und die diesen dann ausgibt? Ich denke das wäre für den Einstieg ganz gut um zu sehen wie Paramterübergabe und Ausgabe funktionieren. Danke euch!
habe mir gestern Abend den RMXP runtergeladen und bin jetzt fleißig am Probieren!
Kann mir jemand erklären, wie ich mit dem Script-Editor eine Funktion gibTextAus(text) erstellen kann, der ich beim Aufruf einen Text übergeben kann und die diesen dann ausgibt? Ich denke das wäre für den Einstieg ganz gut um zu sehen wie Paramterübergabe und Ausgabe funktionieren. Danke euch!
|
|
Quellcode |
1 2 3 |
p "Text"
print "Text"
print ("Text") |
Oder meinst du im Spiel auf der Map als Anzeige ausgeben? (Eine Art HUD)
Mfg Monsta
Skripte:
Animations "Entruckler"
Console
Drunken Mode
Eventskript Debugger
Flat-Events
Impassable Script
Item Shortcut
MSS: Monsta's Shoot System (Neu)
Radius Skript
Random Event Teleport
RMXP Leistungstest
Single Rotate
Split Screen (Beta)
Tutorials:
'alias' Bug beheben
Eigenes RTP
Standard KS komplett Übersetzen
RGSS: Eigener HUD
Programme:
Maker Exchange [ MEX ]
RMXP Skript Explorer
RPGXP Code Converter
Spiele:
[Minispiel] Stampfi V1.5 (Gold)
[Minispiel] Mastermind XP
[Humor] Verfressene Klone
______________________________
[Zukunft] Evil Science
zum Lesen den Text mit der Maus markieren
Danke für deine Antwort.
Ich würde gerne ein eigenes Script erstellen, was ich dann bei einem neuen Event mittels "Event Commands\Script..." aufrufen kann.
Diesem Script würde ich gerne beim Aufruf einen Text übergeben, z.B. "Bla", so dass der Aufruf dann gibTextAus("Bla"); wäre (oder so ähnlich).
Die Ausgabe soll dann sein: "Das Script sagt Bla.".
Keine Ahnung was ein HUD ist, aber es würde mir reichen, wenn der Text auf dem Bildschirm ausgegeben wird, so wie mit "Event Commands\Show Text...".
Verstehst du was ich meine?
Erstmal als Beispiel um einen Einstieg zu finden. Ich wäre dir sehr verbunden, wenn du auch dazuschreiben könntest wie die Klasse aufgebaut sein muss und wie der Konstruktor aussehen muss, damit er checkt, dass er nen Parameter übergeben bekommt. Bin wie gesagt erst seit gestern dabei. Kann zwar Java, C++, PHP und sowas, aber dieses Ruby sieht ja echt merkwürdig aus...
Ich würde gerne ein eigenes Script erstellen, was ich dann bei einem neuen Event mittels "Event Commands\Script..." aufrufen kann.
Diesem Script würde ich gerne beim Aufruf einen Text übergeben, z.B. "Bla", so dass der Aufruf dann gibTextAus("Bla"); wäre (oder so ähnlich).
Die Ausgabe soll dann sein: "Das Script sagt Bla.".
Keine Ahnung was ein HUD ist, aber es würde mir reichen, wenn der Text auf dem Bildschirm ausgegeben wird, so wie mit "Event Commands\Show Text...".
Verstehst du was ich meine?
Erstmal als Beispiel um einen Einstieg zu finden. Ich wäre dir sehr verbunden, wenn du auch dazuschreiben könntest wie die Klasse aufgebaut sein muss und wie der Konstruktor aussehen muss, damit er checkt, dass er nen Parameter übergeben bekommt. Bin wie gesagt erst seit gestern dabei. Kann zwar Java, C++, PHP und sowas, aber dieses Ruby sieht ja echt merkwürdig aus...
So eine Methode könnte so aussehen:
Ich habe die Klasse Interpreter genommen, weil das die Klasse ist, die die Eventcommands umsetzt und so kannst du von EventScripts direkt darauf zugreifen.
Also bei dem Beispiel einfach nur noch so hier aufrufen:
Der Parameter text ist hier optional und hat den Standardwert "Hello World" wenn nichts übergeben wurde.
Würdest du den Standardwert entfernen:
Muss man den Parameter übergeben, sonst kommt eine Fehlermeldung.
Ansonsten kann ich dir nur empfehlen ein paar Tutorials zu machen. Sehr zu empfehlen ist das 1. hier von (Das von =Kai=):
RGSS Linkliste
Tutorial Datenbank
Mfg Monsta
|
|
Quellcode |
1 2 3 4 5 |
class Interpreter def text_ausgeben(text="Hello World") print(text) end end |
Ich habe die Klasse Interpreter genommen, weil das die Klasse ist, die die Eventcommands umsetzt und so kannst du von EventScripts direkt darauf zugreifen.
Also bei dem Beispiel einfach nur noch so hier aufrufen:
|
|
Quellcode |
1 |
text_ausgeben("blupp") |
Der Parameter text ist hier optional und hat den Standardwert "Hello World" wenn nichts übergeben wurde.
Würdest du den Standardwert entfernen:
|
|
Quellcode |
1 |
def text_ausgeben(text) |
Muss man den Parameter übergeben, sonst kommt eine Fehlermeldung.
Ansonsten kann ich dir nur empfehlen ein paar Tutorials zu machen. Sehr zu empfehlen ist das 1. hier von (Das von =Kai=):
RGSS Linkliste
Tutorial Datenbank
Mfg Monsta
Skripte:
Animations "Entruckler"
Console
Drunken Mode
Eventskript Debugger
Flat-Events
Impassable Script
Item Shortcut
MSS: Monsta's Shoot System (Neu)
Radius Skript
Random Event Teleport
RMXP Leistungstest
Single Rotate
Split Screen (Beta)
Tutorials:
'alias' Bug beheben
Eigenes RTP
Standard KS komplett Übersetzen
RGSS: Eigener HUD
Programme:
Maker Exchange [ MEX ]
RMXP Skript Explorer
RPGXP Code Converter
Spiele:
[Minispiel] Stampfi V1.5 (Gold)
[Minispiel] Mastermind XP
[Humor] Verfressene Klone
______________________________
[Zukunft] Evil Science
zum Lesen den Text mit der Maus markieren
Super, danke dir!
Jetzt habe ich aber noch zwei Fragen:
1.) Ich geh mal davon aus, dass diese defs als Funktionen zu betrachten sind. Ich würde mir für meine eigenen Funktionen lieber eine eigene Klasse erstellen. Wie kann ich diese Klasse "MeineKlasse" dann in die Interpreter-Klasse einbinden bzw was muss ich tun um über die Events-Seite\Script... darauf zugreifen zu können?
2.) Mit dem Befehl print gibt er den Text in einem Alert-Fenster aus. Welcher Befehl bewirkt, dass er den Text im Spiel ausgibt, so wie mit dem "Show Text"-Befehl (also so als würde ihn jemand im Spiel sagen) ?
Jetzt habe ich aber noch zwei Fragen:
1.) Ich geh mal davon aus, dass diese defs als Funktionen zu betrachten sind. Ich würde mir für meine eigenen Funktionen lieber eine eigene Klasse erstellen. Wie kann ich diese Klasse "MeineKlasse" dann in die Interpreter-Klasse einbinden bzw was muss ich tun um über die Events-Seite\Script... darauf zugreifen zu können?
2.) Mit dem Befehl print gibt er den Text in einem Alert-Fenster aus. Welcher Befehl bewirkt, dass er den Text im Spiel ausgibt, so wie mit dem "Show Text"-Befehl (also so als würde ihn jemand im Spiel sagen) ?
1.
Jetzt musst du die Klasse in eine Variable laden. z.B.
Könntest das ganze auch am Anfang in eine Globalvariable laden, damit du die Klasse immer zur Verfügung hast:
2.
Wenn du EventCommands umsetzen willst, empfehle ich dir die Interpreter Klasse anzuschauen. Die ist ja nichts anderes als die EventCommands in RGSS Form ^^
Der Messagebefehl befindet sich z.B. in Interpreter 3 ganz oben. Eine MessageBox könnte man z.B. so aufrufen:
Wenn man das einfach so aufruft, ist es aber Buggy. Man kann es dann nämlich nicht mehr wegdrücken ^^
Wenn du hauptsächlich Event Befehle brauchst, würde ich die Klasse nicht in RGSS umsetzen, das macht nur unnötig Arbeit.
Dann lieber ein Event mit Script aufrufen.
Mfg Monsta
|
|
Quellcode |
1 2 3 4 5 6 7 8 |
class MeineKlasse def initialize # Hier könnte Code stehen, der beim Start ausgeführt werden soll end def text_ausgeben(text="Hello World") print(text) end end |
Jetzt musst du die Klasse in eine Variable laden. z.B.
|
|
Quellcode |
1 2 |
@meine_klasse = MeineKlasse.new
@meine_klasse.text_ausgeben("Haddsau") |
Könntest das ganze auch am Anfang in eine Globalvariable laden, damit du die Klasse immer zur Verfügung hast:
|
|
Quellcode |
1 |
$meine_klasse = MeineKlasse.new |
2.
Wenn du EventCommands umsetzen willst, empfehle ich dir die Interpreter Klasse anzuschauen. Die ist ja nichts anderes als die EventCommands in RGSS Form ^^
Der Messagebefehl befindet sich z.B. in Interpreter 3 ganz oben. Eine MessageBox könnte man z.B. so aufrufen:
|
|
Quellcode |
1 |
$game_temp.message_text = "Hallo" |
Wenn man das einfach so aufruft, ist es aber Buggy. Man kann es dann nämlich nicht mehr wegdrücken ^^
Wenn du hauptsächlich Event Befehle brauchst, würde ich die Klasse nicht in RGSS umsetzen, das macht nur unnötig Arbeit.
Dann lieber ein Event mit Script aufrufen.
Mfg Monsta
Skripte:
Animations "Entruckler"
Console
Drunken Mode
Eventskript Debugger
Flat-Events
Impassable Script
Item Shortcut
MSS: Monsta's Shoot System (Neu)
Radius Skript
Random Event Teleport
RMXP Leistungstest
Single Rotate
Split Screen (Beta)
Tutorials:
'alias' Bug beheben
Eigenes RTP
Standard KS komplett Übersetzen
RGSS: Eigener HUD
Programme:
Maker Exchange [ MEX ]
RMXP Skript Explorer
RPGXP Code Converter
Spiele:
[Minispiel] Stampfi V1.5 (Gold)
[Minispiel] Mastermind XP
[Humor] Verfressene Klone
______________________________
[Zukunft] Evil Science
zum Lesen den Text mit der Maus markieren
