私は初心者のプログラマーですので、これは本当にばかげた質問です。あるクラスから別のクラスに値を渡す必要があります。私が間違っていないなら、これは継承によって行われますが、私が紛失しているものがあるようです。どんな助けも歓迎されるでしょう。私はUnity内でC#で書いています。継承 - ガイダンスが必要
public class baseStats{
private int STAMINA;
public static int Stamina{
get{return STAMINA;}
set{STAMINA = value;}
}
}
上記は私の親クラスのサンプルです。ここに私の子クラスである:
public class Profile : baseStats {
private static int PROFILE_STAMINA;
private void Stats()
{
PROFILE_STAMINA = Stamina;
}
public static int profileStamina
{
get{return PROFILE_STAMINA;}
}
}
私は、デバッグの目的で作成された第三のスクリプトでは、私が書いた:
はpublic class debug:MonoBehaviour{
void Start(){
Debug.Log(Profile.profileStamina.ToString());
}
}
それは私が非静的フィールド、メソッドのオブジェクト参照を必要とすると言います、またはプロパティー 'Profile.Profile.Stamina'。簡単な修正:すべての静的なものを作る(私は静的なものを使うのを避けるためにコンストラクタやそのようなものを作る必要があると信じています。エラーがなくなると、私はプログラムを実行し、コンソールのスタミナに0を出力します。私は本当に何が起こっているのか混乱しています。申し訳ありませんが、このような長い投稿です。
3番目のスクリプトの 'profileStamina'はどのように定義されていますか?コードを更新してください。他の人と同じように、完全な3番目のスクリプトを用意してください。 – Programmer
これは完全なスクリプトです。 http://imgur.com/tasBn6r –
画像に 'Profile.profileStamina'があります。なぜそれであなたの質問を更新しないでください。人々からの不必要な質問を避けるために、あなたのIDEから直接SOのコードをコピーするのは良いことです。また、あなたの 'Profile'スクリプトは質問に含まれていません。私は人々がこれなしでどのように助けることができるか分かりません。ここの他のコードがIDEのコードと同じであることを確認してください。 – Programmer