Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Пишу код передвижения игрока в unity, возникает ошибка: error CS0106: The modifier 'private' is not valid for this

Костя Мохин Ученик (134), закрыт 1 год назад
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class ДВИЖЕНИЕ : MonoBehaviour
{
public float maxSpeed = 10f;
private bool flopRight = true;

void Start()
{

}

void Update()
{
float move = Input.GetAxis("Horizontal");
GetComponent<Rigidbody2D>().velocity = new Vector2(move * maxSpeed, GetComponent<Rigidbody2D>().velocity.y);

if (move > 0 && !flipRight)
{
Flip();
}

else if (move < 0 && flipRight)
{
Flip();
}


private void Flip()
{
flipRight = !flipRight;
Vector3 theSkale = transform.localScale;
theSkale.x *= -1;
transform.localScale = theSkale;

}
}


}
Лучший ответ
zerX XX Профи (731) 1 год назад
Просто убери private
Остальные ответы
InviZzzible Мудрец (10825) 1 год назад
У тебя функция в обработчике Update.
Нет переменной flipRight.
Так же и theScale.

Если продолжишь так похабно юзать GetComponent вапдейте то производительности лучше от игры не ждать...
SataУченик (194) 1 год назад
GetComponent получают только раз , только вот где лучше в методе Start() или Awake() ???
InviZzzible Мудрец (10825) Sata, ага, принципиальной разницы нет. Да, как и другие тяжёлые методы ссозданием и инстанцированием объектов... Также и с выделением оперативной памяти...
Похожие вопросы