Если, например, у меня есть игра, состоящая всего из одной сцены, и в этой сцене я делаю выбор пользователем между обычным режимом воспроизведения или режимом учебного воспроизведения. В игре есть 4 разных объекта: мяч, 4 квадрата и квадратный контроллер. В режиме обучения я хочу предоставить пользователю стрелку с указателем при приостановке игры и продолжить после нажатия пользователем объекта, на который указывает. Должен ли я сделать сценарий для обычного режима, а другой для режима учебника, сделать один скрипт и проверить, является ли логическое значение boolean истинным или ложным в каждой функции (логическое значение должно быть истинным, если пользователь нажал кнопку учебника) или сделать какой-то Предварительная обработка?Как работать с двумя игровыми режимами в одном скрипте?
В squarescript, например:
void OnCollisionEnter2D() {
if (isTutorial) {
PauseGame();
arrow.position = GetRelativePosition();
arrow.setActive(true);
} else {
if (canCollide) {
score++;
} else {
GameOver();
}
}
В ballscript:
void OnMouseDown() {
if (!isTutorial) {
return;
}
ResumeGame();
}
Итак, TutorialCollisionHandler, ScoreCollisionHandler и HazardCollisionHandler - это отдельные скрипты, которые могут быть добавлены кодом? – user24028
MonoBehaviours, которые вы можете добавить в Square GameObject, как коллайдер или жесткий диск и т. Д. – CaTs