private void LateUpdate() { anim.SetFloat("change_x", change.x); anim.SetFloat("change_y", change.y); if (change.y <= -1f) { anim.SetFloat("lookAt", 0f); } else if (change.x <= -1f) { anim.SetFloat("lookAt", 1f); } else if (change.y >= 1f) { anim.SetFloat("lookAt", 2f); } else if (change.x >= 1f) { anim.SetFloat("lookAt", 3f); } //Anwenden der in change gesetzten Bewegung: float step = RoundToPixelGrid(1f * Time.deltaTime); Vector3 oldPos = transform.position; transform.position += change * step; if (IsColliding()) { transform.position = oldPos; //auf alte Position sptingen (d.h. nicht in den Collider laufen). for (int i = 0; i < numFound; i++) { TouchableBlocker tb = colliders[i].GetComponent <TouchableBlocker>(); if (tb != null) { tb.OnTouch(); } } } change = Vector3.zero; }
private void LateUpdate() { animator.SetFloat("change_Y", change.y); animator.SetFloat("change_X", change.x); if (change.y <= -1f) { animator.SetFloat("lookAt", 0f); } else if (change.x <= -1f) { animator.SetFloat("lookAt", 1f); } else if (change.y >= 1f) { animator.SetFloat("lookAt", 2f); } else if (change.x >= 1f) { animator.SetFloat("lookAt", 3f); } float step = roundToPixelGrid(1f * Time.deltaTime); Vector3 oldPos = transform.position; transform.position += change * step * speed; if (isColliding()) { transform.position = oldPos; for (int i = 0; i < numFound; i++) { TouchableBlocker tb = colliders[i].GetComponent <TouchableBlocker>(); if (tb != null) { tb.OnTouch(); } } } change = Vector3.zero; }