[RMXP] > [RUBY] Variableninhalt als Variablennamen?
Hi,
ich habe folgendes Problem: Ich möchte gerne im Ruby einer Variable/Konstante/ect. den Wert einer anderen Variable/Konstante/ect. zuweisen, also etwa so: nur will ich den Namen des zweiten Postens nicht direkt eingeben sondern aus einer dritten Variable beziehen, etwa $aktchara_name!
Wie muß ich das schreiben damit Ruby versteht was ich will? Ich hab' von Ruby noch nicht soviel Ahnung, war die halbe nacht auf und hab dran gesessen aber in Helpdatei und anderen Scripten nichts Vergleichbares gefunden. hoffe das geht irgendwie...
Eval nimmt einen String entgegen und interpretiert diesen String als Ruby-Code, und gibt entsprechend einen Wert zurück.
Innerhalb von Strings kann man auch noch anders Rubycode einbetten:
Der String zwischen #{ und } wird hier als Rubycode interpretiert und der Rückgabewert als String genommen. Damit Ruby diese Sonderzeichen ('#{' und '}') so interpretiert, muss der konstante String mit doppelten Hochkommata eingeschlossen werden. Wenn der String nur mit einfachen Hochkommata eingeschlossen wird, nimmt Ruby diese Ersetzung nicht vor.
Das ganze geht natürlich auch mit komplexerem Code:
Bei größeren mehrzeiligem Code sollte man allerdings zu eval greifen.
Bis auf Integer/Floats und so Kleinkram, sind alle Variablen in Ruby eigentlich Pointer, sprich es wird immer nur die Referenz auf ein Objekt übergeben (in Ruby ist ja alles ein Objekt).
In sofern ja, solange sie auf ein komplexeres Objekt zugreifen will und nicht auf einen Integer, kann man auch einfach die Variablen als native Pointer benutzen, aber das sorgt mMn zu schnell für Konfusion.
@MagicMagor: Danke, werd's nacher gleich mal ausprobieren!
Mal noch 'ne kleine Frage: Weißt du ob es ein Buch oder so über Ruby in Printform zu kaufen gibt? Ich werd vorraussichtlich im Februar viel Zeit zu lesen kriegen da ich zu so 'ner komischen Schulung muß und meinen PC nicht mitnehmen kann und das wäre die ideale Gelegenheit meinen inneren Schweinehund auszutricksen der mich von sonstigen Lernaktivitäten bisher erfolgreich abgehalten hat...
Achso: Wenn du noch Zeit hast wäre ich dir auch dankbar wenn du mir erklären könntest wie ich es schaffe das der Bildschirm festgestellt wird (wie die Fix-Screen-Option im Pan-Screen-Befehl beim 2k eben). Das hatte ich neulich schonmal wen gefragt, aber seine Methode hat nicht funktioniert...
Mal noch 'ne kleine Frage: Weißt du ob es ein Buch oder so über Ruby in Printform zu kaufen gibt? Ich werd vorraussichtlich im Februar viel Zeit zu lesen kriegen da ich zu so 'ner komischen Schulung muß und meinen PC nicht mitnehmen kann und das wäre die ideale Gelegenheit meinen inneren Schweinehund auszutricksen der mich von sonstigen Lernaktivitäten bisher erfolgreich abgehalten hat...
...
Es gibt die neuste Auflage des Buchs "Programming Ruby" wohl. Meiner Meinung nach so ziemlich DAS Buch, wenn es darum geht Ruby zu lernen, aber ich kenne ehrlich gesagt auch sonst kein anderes =). Gut ist es wohl trotzdem (nicht umsonst empfehl ich jedem die OnlineVersion zum lernen) Klick mich!
Mit der ISBN kannst du das in jedem Buchladen bestellen, ob es davon auch eine deutsche Printversion gibt weiß ich nicht.
Zitat
Achso: Wenn du noch Zeit hast wäre ich dir auch dankbar wenn du mir erklären könntest wie ich es schaffe das der Bildschirm festgestellt wird (wie die Fix-Screen-Option im Pan-Screen-Befehl beim 2k eben). Das hatte ich neulich schonmal wen gefragt, aber seine Methode hat nicht funktioniert...
...
Vermutlich wird es ne Eigenschaft von Game_Screen geben, die das Scrollen verhindert, aber da ich mich recht wenig mit den Standardklassen beschäftige kann ich dir auch nichts genaueres sagen. Und da ich immer noch auf meinen Key warte, kann ich auch leider nicht selber nachgucken. Vermutlich musst du selber im Code suchen, oder jemand anderes wird die Frage beantworten..
das liegt vielleicht dadran, dass Ruby eine echte Script/Programmiersprache ist, die es schon vor dem RMXP gab. Das sind also alles einfuehrungen in Ruby und werden sich garantiert NICHT auf den rmXP beziehen ...
Das ist schon klar, nur wurde auch schon oft gesagt das Ruby auserhalb japans nicht sehr bekannt ist! Das es nicht um den XP oder RGSS geht ist logisch.
Hab das Buch jetzt bestellt! Sollte ich es tatsächlich schaffen es komplett durchzulesen werd' ich euch wissen lassen ob sich's gelohnt hat oder nicht!