2016-09-19 5 views
0

私が作っているもの:簡単なRPG。クラス変数にアクセスしてそれらとやりとりする靴?

私がしたいこと: 1.ユーザーの現在の統計情報は、カスタムクラスに格納され、プログラムの開始時に1に初期化されます。 2.ユーザーが「1を追加」ボタンをクリックする(またはリスト内で選択する、またはチェックボックスをクリックするなど) 3.プログラムは現在のスコアを取得して追加します。 4.プログラムは数字「2」を表示します

私はコマンドラインでこれを実行できます。私はルービー(2年間のアマチュアドゥードリー)とシューズに新しいものを使い、一緒に遊ぶように奮闘しています。

特定の質問: 1)私はRubyのクラスを書きました。彼らはShoes.appの流れの中または外に入るのですか? 2)私のコマンドラインバージョンでは、strength.nameとstrength.levelを使用して "Strength:6"を出力します。

(Strengthはスキルのインスタンスです。新しいプログラマは、抽象的ではなく具体的​​に思考する方が簡単です!)

私はこれを靴で試してみましたが動作しません。私もstrength.name = paraを試しました。これはShoesがサンプル内に独自の変数を表示する方法です。

私のエラーはどこですか?

靴のようなクラスは使用できませんか?それとも、インスタンス変数のものと関係があり、場所データがプログラムにありますか? (私の一般的なエラー)または私は基本的な構文が間違っている?

乾杯。私は、90年代のプログラムだとは言え、プログラムのようなプログラムを最終的に書いたことに全面的に盛り上がっていると言わなければならない。今はすべてが開かれていますが。それでも、私は、デジタル波のサーフマスターのように感じる^ _^

+0

私の答えはhttp://stackoverflow.com/questions/39871055/my-classes-cant-use-shoes-methods-like-paraどこに似ているかを参照 – peter

答えて

1
あなたはまた、別のファイルでそれを宣言し、

を使用して、それをインポートすることができ

class YourClass 
    # Class stuff 
end 

Shoes.app do 
    foo = YourClass.new(......) 
    # Shoes app stuff 
end 

同じルビーファイル内のクラスを宣言することができ

require_relative 'yourfile.rb' # The relative is optional 

また、

strength.name = para 

は、私は本当にあなたがやりたいたくないんだにもかかわらず、明らかに間違っています。あなたがStrength.nameの値を表示したい場合は、使用することができます。

para "#{strength.name}" # if the para doesn't exist yet 
# OR # 
@@the_name_of_your_para.replace "#{strength.name}" # if the para exists and you want to change the content 

を私は教えてくださいしなかった場合、私は難しく試して喜んでいるよ、私はあなたを助け願っています! ハッピールビーコーディング。

+0

ありがとう、ありがとう。私はスペルミスをしたために自分のプログラムが動作していないのか、四角い穴に丸いペグを合わせようとしているのかわからない、基本コンセプトのいくつかをダウンさせるのに苦労しました。これは超便利、歓声です – Unmutual

関連する問題