Я всегда думал, что установка переменной в public сделает ее доступной где-нибудь?
public
делает поле доступным из других классов, но вам все еще нужна ссылка на экземпляр. Где-то в классе Paddle
должна существовать ссылка на Breakout
, поскольку она вам нужна. Например, имея поле типа Breakout
, называемое «прорыв», которое вы назначаете при создании экземпляра Paddle
. Затем с Paddle
вы можете позвонить breakout.screenHeight
.
Другой вариант - сделать Breakout
синглтоном (у вас когда-нибудь будет больше?). Объявите статическое поле и сохраните свой экземпляр Breakout там, когда он будет создан. Затем выставьте свойство Instance
:
private static Breakout instance = new Breakout();
public static Breakout Instance
{
get { return instance; }
}
Затем от Paddle
:
Breakout.Instance.screenHeight
Не уверен, если вы хотите, чтобы instance
создавал экземпляр Breakout
в intiailizer, поскольку я не уверен, как создается экземпляр вашего игрового класса.