728x90
실행 모습이 한번밖에 나오지 않지만 아래 영상을 한번 봐 주세요 ! 하하
EnemyScript
public class enemyScript : MonoBehaviour
{
public bool isNotPress = true;
public KeyCode key1;
public KeyCode key2;
public Sprite DestroySprite;
public GameObject LineObj;
public Animator anim;
public AudioSource odio;
public AudioClip clip;
public float fadeDuration = 1f;
private SpriteRenderer spriteRenderer;
void Start()
{
spriteRenderer = GetComponent<SpriteRenderer>();
}
void OnTriggerEnter2D(Collider2D other)
{
if (other.CompareTag("Player"))
{
isNotPress = false;
if (!isNotPress && (Input.GetKeyDown(key1) || Input.GetKeyDown(key2) ))
{
StartCoroutine(FadeOutAndDestroy());
}
}
}
void OnTriggerExit2D(Collider2D other)
{
if (other.CompareTag("Player"))
{
isNotPress = true;
Invoke("Deactivate", 0.5f);
}
}
IEnumerator FadeOutAndDestroy()
{
spriteRenderer.sprite = DestroySprite;
anim.enabled = false;
LineObj.SetActive(false);
odio.PlayOneShot(clip);
Color originalColor = spriteRenderer.color;
Color targetColor = Color.gray;
float elapsedTime = 0;
while (elapsedTime < fadeDuration)
{
spriteRenderer.color = Color.Lerp(originalColor, targetColor, elapsedTime / fadeDuration);
transform.position += new Vector3(-3, 3, 0) * Time.deltaTime;
transform.Rotate(0, 0, 180 * Time.deltaTime);
elapsedTime += Time.deltaTime;
yield return null;
}
spriteRenderer.color = targetColor;
Destroy(gameObject);
}
void Deactivate()
{
gameObject.SetActive(false);
}
}
IEumerator 안에 있는 코드 내용이 색이 변하고 몬스터가 회전하면서 날라가는 코드입니다.
모르는것 있으면 댓글 작성해주세요 !
최대한 빨리 답글 드리겠습니다 !
728x90
'🧩 코딩 > 사용한 코드' 카테고리의 다른 글
유니티로 리깅하기 ! IDle Animation을 만들어보자 ! (0) | 2023.06.05 |
---|---|
유니티로 리깅 하기 ! 유니티와 포토샵으로 간편하게 애니메이션 만드는 방법. (0) | 2023.06.02 |
UnknownHero 코드 공유 / 오브젝트 360도 회전,아이템 떨어지기 (0) | 2023.05.15 |
UNITY MBTI 테스트 앱 코드 / List 사용법 (0) | 2023.04.04 |
Unity2D 모바일 조이스틱을 이용한 움직임 코드 🏃♀️ Transform.localScale을 이용한 이미지 회전 (0) | 2022.10.20 |