PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Variablennummern beim RPG Maker XP?



dasDull
25.01.2008, 19:55
Hallo,
beim RPG Maker 2000/2003 gab es ja eine bestimmte Variablenfunktion, die(glaub ich) als Variablennummerfunktion bezeichnet wurde. (s. Link)
http://www.npshare.de/files/36/3487/Problem.PNG
Gibt es eine vergleichbare Funktion auch beim RPG Maker XP?

-KD-
25.01.2008, 20:14
Leider nicht. Du kannst sowas nur per Ruby machen. Allerdings ist hierfür auch kein weitreichendes Wissen erforderlich.
Du kannst per "Script..."-Befehl Rubyskripte ausführen.

$game_variables[NUMMER] = $game_variables[NUMMER2]
Damit belegst du eine Variable mit einem Wert einer anderen Variable. Statt Nummer gibst du eben die ID der Variable (z.B. 25) ein, die belegt werden soll, statt NUMMER2 eben die ID der Variable, deren Wert übertragen werden soll.

z.B. wäre folgender Script-Befehl äquivalent zu dem EventCommand change Variable #47 No. Variable #66.

$game_variables[47] = $game_variables[66]

sorata08
26.01.2008, 08:47
Wieso? Du kannst das doch einfach per Eventbefehl machen. Unter dem Befehl Variablen (1. Eventseite, rechte Spalte, zweites von oben) kannst du etliche Befehle mit einer Variablen ausführen. Und eben im unteren Teil des Fensters auch eine zweite Variable aussuchen, die dann den Wert der ersten übernimmt.

Rosa Canina
26.01.2008, 08:53
@Sorata08:


Es geht hier nicht darum den Wer einer Vari in eine andere zu kopieren, sondern um den 23/3-Befehl VariableNo, der im XP und VX fehlt, für einiges aber elementar wichtig ist.


Beim VX haben sie ja auch noch die Terrain IDs gestrichen. Wenn so bleibt makern wir in 20 Jahren immer noch mit dem 2k ^^
Ninja

Kelven
26.01.2008, 09:25
@-KD-
Vielleicht bin ich nur noch zu müde, aber dein Beispiel ist doch eine ganz normale Zuweisung für die man kein Ruby braucht. Meinte dasDull nicht eher so was?



$game_variables[$game_variables[n]] = m


Die 3. Option beim Chance-Variable-Dialog sagt ja "Nimm die Variable an der Position x, die durch den Wert der Variable an Stelle n angegeben wird".

dasDull
26.01.2008, 09:55
Danke!
Kelvens Methode hat funktioniert und ist zudem noch unkompliziert.

Trotzdem danke ich euch allen für die schnellen Antworten!

dasDull

Cherry
26.01.2008, 10:42
für die Bedingungen geht das dann ähnlich:

Bei den Forks "Script" wählen und dann z.B. "$game_variables[$game_variables[n]] == m" (oder >, <, >=, <=, !=)

dasDull
26.01.2008, 14:03
Gut, das hat mir schon sehr weitergeholfen. Aber jetzt habe ich schon wieder ein Problem: Ist es (vielleicht mit RGSS) möglich, die Picture ID eines Bildes zum Wert einer Variable zu setzen? So würde ich mir sehr viel Arbeit ersparen können. Im normalen "show picture"-Fenster erhalte ich immer nur die Nachricht eine ganze Zahl von 1-50 einzugegben.

DasDull

Kelven
26.01.2008, 14:16
$game_screen.pictures[n].show
("Name des Bildes",
Ursprung,
X-Koordinate,
Y-Koordinate,
Zoom-X,
Zoom-Y,
Transparenz,
blend_type)


Bei n kannst du dann wieder $game_variables[m] benutzen.

dasDull
26.01.2008, 14:40
Wow! Ich sollte mich auch mal noch etwas mehr mit RGSS beschäftigen, bietet ja doch einige Vorteile gegenüber Ereigniskommandos.
Ich hab das Ganze mal so ausprobiert:

$game_screen.pictures[$game_Variables[85]].show
("Herz7",
Upper Left Pixel,
0,
0,
100,
100,
255,
normal)

????????SYNTAX ERROR?????????

Ich nehme mal an, das mit "Ursprung" etwas anderes gemeint ist als die relative Position...
Muss ich da etwa das Verzeichnis angeben?

Kelven
26.01.2008, 14:59
Ne, das war mein Fehler. ^^" Ich hätte schreiben sollen welche Werte erlaubt sind. Wenn ich mich nicht ganz irre sind sie wie folgt:

Ursprung
0 = Ecke links-oben
1 = Zentrum

Blend_type
0 = Normal
1 = Add
2 = Sub

dasDull
26.01.2008, 15:13
Ne, das war mein Fehler. ^^"

Du kannst ja nichts dafür, dass ich mich damit nicht auskenn...




$game_screen.pictures[1].show
("Hell",
0,
1,
1,
100,
100,
255,
0)



Diesmal habe ich das mit den Variablen noch mal weggelassen, aber ich bekomm immer noch eine Fehlermeldung. Ich hab mittlerweile schon ausprobiert bei Zoom 100% oder bei den Koordinaten 1 statt 0 zu schreiben usw, aber es hilft alles nichts. :(
Vielen Dank, das du trotzdem die Zeit aufwendest, mir, dem RGSS-Newbie zu helfen!

dasDull

Kelven
26.01.2008, 15:17
Das Script-Event-Kommando ist da ein bißchen empfindlich. Die erste Klammer muss in der Zeile mit dem show stehen. Also:


$game_screen.pictures[1].show(
"Hell",
0,
1,
1,
100,
100,
255,
0)

dasDull
26.01.2008, 15:26
Oh my god! I can´t believe it!
Es funktioniert!http://www.multimediaxis.de/images/smilies/old/sm_12.gif
Danke, danke, danke!
Das ist so toll, das gibt einen Credits-Eintrag für Kelven.

In unterwürfiger Dankbarkeit,

dasDull