2012-03-31 4 views
0

Ich bin Test SciTe Editor und Gosu für Ruby Spielentwicklung. Ich beschloss, eine Klasse zu machen, um meine Sprites zu kontrollieren. Die Klasse wurde in einer separaten .rb-Datei im selben Ordner wie die Hauptdatei .rb geschrieben. Allerdings kann ich Sprite.new nicht in der Hauptdatei verwenden. Wie kann ich das machen?Wie verwendet man Remote-Dateien für Klassen/etc mit Ruby?

+0

(Das ist nicht wirklich eine "Remote" -Datei; Fernbedienung bedeutet fast immer, dass es sich um eine separate Maschine handelt. Dies wäre eine "externe" Datei oder Bibliothek.) –

Antwort

0
require File.join(File.dirname(__FILE__), '', 'MyFile') 

Ich weiß nicht, warum. Aber nur require funktioniert einfach nicht immer auf verschiedenen Betriebssystemen. Aber der obige Code funktioniert immer für mich.

0
require 'sprite' 

(oder was auch immer es genannt wird.)

Wie Frederick stellt fest, wenn Sie Ruby-verwenden 1.9, ist das aktuelle Verzeichnis nicht automatisch Teil des Lastpfades (nicht sicher, ob ich mit dem zustimmen Entscheidung). Sie können es auf der Kommandozeile wie folgt hinzu:

ruby -I. main.rb 
+0

Weder 'system' 'System' 'System. rb '' system.rb 'scheint zu funktionieren. "No solche Datei zu laden" – Voldemort

+0

@Omega Dann müssen Sie weitere Informationen zur Verfügung stellen, wie die tatsächliche Datei/Verzeichnisstruktur, wie Sie es ausführen, etc. –

+0

Nun, alles was ich tat war: Installieren Sie Gosu mit RubyGems, und dann Ich habe zwei .rb-Textdateien in einem Ordner auf meinem Desktop erstellt. Ich bearbeite beide mit SciTe. Das ist alles wirklich. Ich habe diesen Fehler: C: /Ruby192/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb: 36: in 'require ': keine solche Datei zu laden - System.rb (LoadError) \t von C : /Ruby192/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb: 36: in 'require ' \t von Game.rb: 2: in'

' – Voldemort

Verwandte Themen