İlk önce animasyon tabına geliyoruz.
Koşma animasyonu ile bekleme animasyonu arasında köprü kuruyoruz.
Parametre bölümüne gelip PlayerSpeed adında yeni bir parametre oluşturuyoruz.
Şimdi idleden run animasyonuna giden oka tıklıyoruz.
Ve şekildeki gibi ayarlıyoruz.
Ve diğer oka tıklayalım.
Şekildeki gibi yapalım.
Kodumuzu düzenleyelim.
Not : Kodun içinde kontlor için yazılmış kodlarda vardır.
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class PlayerController : MonoBehaviour
{
Rigidbody2D playerRB;
Animator playerAnimator;
public float moveSpeed = 1f;
//yorum satırları kodun üstüne yazılmıştır
//yüzçevirme
bool facingRight = true;
void Awake()
{
}
// Start is called before the first frame update
void Start()
{
playerRB = GetComponent<Rigidbody2D>();
//animasyon geçişleri için yazılmıştır
playerAnimator = GetComponent<Animator>();
}
// Update is called once per frame
void Update()
{
//hareket etme kodunu çağırır
HorizontalMove();
if (playerRB.velocity.x < 0 && facingRight)
{
FlipFace();
//yüz çevirme
}
else if (playerRB.velocity.x > 0 && !facingRight)
{
FlipFace();
//yüz çevirme
}
}
void FixedUptade()
{
}
void HorizontalMove()
{
//hareket etme
playerRB.velocity = new Vector2(Input.GetAxis(“Horizontal”) * moveSpeed, playerRB.velocity.y);
//animasyon geçişleri için yazılmıştır
playerAnimator.SetFloat(“playerSpeed”, Mathf.Abs(playerRB.velocity.x));
}
//yüz çevirme flip face
void FlipFace()
{
facingRight = !facingRight;
Vector3 tempLocalScale = transform.localScale;
tempLocalScale.x *= -1;
transform.localScale = tempLocalScale;
}
}
Discord Sunucusu : https://bit.ly/3nEpmoS