InviZzzible
Мудрец
(10825)
1 год назад
У тебя функция в обработчике Update.
Нет переменной flipRight.
Так же и theScale.
Если продолжишь так похабно юзать GetComponent вапдейте то производительности лучше от игры не ждать...
SataУченик (194)
1 год назад
GetComponent получают только раз , только вот где лучше в методе Start() или Awake() ???
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;
}
}
}