Я пытаюсь создать игру, в которой мой фон прокручивается в зависимости от того, насколько быстро я хочу, чтобы игрок шел.Как ссылаться на нестатический член другого класса C#
Я попытался создать нестационарную функцию, которая обращается к BackgroundScroller.speed как простой способ передать значение.
.
(PlayerController.cs)
void Setspeed(float setSpeed){
BackgroundScroller.speed = setSpeed;
}
BackgroundScroller.cs выглядит следующим образом:
using UnityEngine;
using System.Collections;
public class BackgroundScroller : MonoBehaviour {
public float speed = 0;
public static BackgroundScroller current;
float pos = 0;
void Start() {
current = this;
}
public void Go() {
pos += speed;
if (pos > 1.0f)
pos-= 1.0f;
renderer.material.mainTextureOffset = new Vector2 (pos, 0);
}
}
.
Я получаю ошибку, когда я пытаюсь и BackgroundScroller.speed доступа из PlayerController.cs является:. «Ссылка на объект требуется для доступа к нестатическому члену„BackgroundScroller.speed“
Я не понимаю, как чтобы получить доступ к значению BackgroundScroller.speed из PlayerController.cs по существу. Я не хочу, чтобы создать ссылку на объект, я просто хочу, чтобы просто изменить значение в другом классе.
Приветствия
Lucio
отлично работает ура. Я тоже идиот, thecurrent используется ранее в учебнике, которое я использовал, которое вызывает go(). Еще раз спасибо. – LucioMaximo