using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Forever_MoveH_OnCollision_Flip : MonoBehaviour
{
ย ย public float speed = 1;
ย ย Rigidbody2D rbody;
ย ย void Start()
ย ย {
ย ย ย ย rbody = GetComponent<Rigidbody2D>();
ย ย ย ย rbody.gravityScale = 0;
ย ย ย ย rbody.constraints = RigidbodyConstraints2D.FreezeRotation;
ย ย }
ย ย void FixedUpdate()
ย ย {
ย ย ย ย rbody.velocity = new Vector2(speed, 0);
ย ย }
ย ย void OnCollisionEnter2D(Collision2D collision)
ย ย {
ย ย ย ย speed = -speed;
ย ย ย ย this.GetComponent<SpriteRenderer>().flipX = (speed < 0);
ย ย }
}
์ด๋ ๊ฒ ๋ฐ๊ฟ๋ ์๊ด ์์๊น์? ๋ฐ๊พธ๊ณ ์คํํ๋ฉด ์๋์ ๋ฉ์ฉกํ๊ฒ ํ๋๋ฐ ๋ญ๊ฐ ๋ฌธ์ ์์๊น ์ถ์ด์ ์ฌ๋ฆฝ๋๋ค
this.GetComponent().flipX =ย (speed < 0); ๋ speed๊ฐ ์์์ผ ๋ true ๊ฐ์ด ๋ค์ด๊ฐ๊ณ ์์๊ฐ ์๋ ๋ false ๊ฐ์ด ๋ค์ด๊ฐ this.GetComponent().flipX = true; ๋ true๋ฅผ ์ง์ด๋ฃ์ผ๋๊น speed ๊ฐ๊ณผ ์๊ด์์ด flipX๊ฐ true๋ก ๋ณ