Animator działa, ale nie animuje? WHY ?

Tu opis jest zbędny:)

Animator działa, ale nie animuje? WHY ?

Postprzez PanBorsuk » 27 Lip 2017, 18:59

Chciałem się zapytać, czy zdarza się by Animator pokazywał, że działa, a animacja wcale się nie wykonuje i dlaczego mogło by się tak dziać. Kolejną sprawą jest że następuje konflikt podczas zmiany kierunków mam ustawiony button z pointer enter i exit i to on wyzwala Add.Force prawo i lewo. Są zrobione symetrycznie więc nie wiem w czym problem. Dodaje gif z problemem

https://gfycat.com/gifs/detail/WindyTepidEnlightened

i skrypt odpowiadający za ruch.

public class TouchButtonManager : MonoBehaviour {
// add to the top


private bool moveLeft = false;
private bool moveRight = false;
public GameObject borsuk;
public Rigidbody2D rb;
int forwardSpeed = 13000;
public Animator anim;

void Start()
{
anim = GetComponent<Animator>();
}

public GameObject destroyObject;
void Update()
{
if (moveLeft && !moveRight)
{
rb.AddForce(Vector2.left * forwardSpeed);
anim.SetBool("biega", true);
anim.SetFloat("speed", forwardSpeed);
}
else
{
anim.SetBool("biega", false);
anim.SetFloat("speed", 0);
}


if (moveRight && !moveLeft)
{
rb.AddForce(Vector2.right * forwardSpeed);
anim.SetBool("biega", true);
anim.SetFloat("speed", forwardSpeed);
}
else
{
anim.SetBool("biega", false);
anim.SetFloat("speed", 0);
}

}


public void MoveMeLeft()
{

DestroyObject destroyScript = destroyObject.GetComponent<DestroyObject>();
if (destroyScript.reverseMovement == false) {

moveLeft = true;
borsuk.transform.eulerAngles = new Vector3 (0, 180, 0); // Flipped
}
else
{

moveRight = true;
borsuk.transform.eulerAngles = new Vector3 (0, 0, 0); // Flipped
}

}

public void StopMeLeft()
{

DestroyObject destroyScript = destroyObject.GetComponent<DestroyObject>();
if (destroyScript.reverseMovement == false) {
moveLeft = false;
}
else
{
moveRight = false;
}

}

public void MoveMeRight()
{

DestroyObject destroyScript = destroyObject.GetComponent<DestroyObject>();
if (destroyScript.reverseMovement == false) {

moveRight = true;
borsuk.transform.eulerAngles = new Vector3 (0, 0, 0); // Flipped
} else {

moveLeft = true;
borsuk.transform.eulerAngles = new Vector3 (0, 180, 0); // Flipped
}


}

public void StopMeRight()
{


DestroyObject destroyScript = destroyObject.GetComponent<DestroyObject>();
if (destroyScript.reverseMovement == false) {
moveRight = false;
}
else
{
moveLeft = false;
}
}

}
PanBorsuk
 
Posty: 9
Rejestracja: 08 Sty 2017, 05:49
Has thanked: 0 time
Been thanked: 0 time

Wróć do Śmietnik

Kto jest na forum

Użytkownicy przeglądający to forum: Brak zarejestrowanych użytkowników oraz 1 gość