๋‚œ ์ด๋ ‡๊ฒŒ ์งฐ์„๋“ฏ

์ฝ”๋”ฉ ๋ฐ˜ ๋…ํ•™์ด๋ผ ์ง€์ ํ•ด์ฃผ๋ฉด ๋ณด๊ณ ๋ฐฐ์šธ๊ฒŒ


using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class ForTest_Delete : MonoBehaviour
{
public SpriteRenderer mysprite;
public float countHow, count;
public bool isMovingActived;
IEnumerator circleCor, boolChangerCor;
private void Update() //์ผ์ • ์‹œ๊ฐ„๋งˆ๋‹ค ์ฝ”๋ฃจํ‹ด ๋ฐ˜๋ณต ์žฌ์ƒ
{
count -= Time.deltaTime;
if(count <= 0)
{
count = countHow;
if (!isMovingActived)
{
circleCor = Moving();
StartCoroutine(circleCor);
}
else//์ด๋ฏธ true์ด๋ฉด ์‹คํ–‰์ค‘์ธ๊ฑฐ ์ทจ์†Œ์‹œํ‚ด ๋‘๋ฒˆ ์‹คํ–‰์•ˆํ•จ
{
count = 0.5f;
StopCoroutine(circleCor);
StopCoroutine(boolChangerCor);
isMovingActived = false;
mysprite.color = Color.red;
}
}
}
IEnumerator Moving()//์‹คํ–‰์ค‘์—” ํŒŒ๋ž€์ƒ‰ ๋๋‚˜๋ฉด ํ•˜์–€์ƒ‰
{
isMovingActived = true;
//boolchanger ์‹คํ–‰
boolChangerCor = BoolChanger();
StartCoroutine(boolChangerCor);

var startTime = Time.time;
while (Time.time - startTime < 0.25f)
{
mysprite.color = Color.blue;
yield return null;
}
mysprite.color = Color.white;
}
IEnumerator BoolChanger()
{//0.1์ดˆ๋’ค์— false๋กœ
var startTime = Time.time;
while (Time.time - startTime < 0.1f)
{
yield return null;
}
isMovingActived = false;
}
}


ํ˜ธ์ถœํ•˜๋ฉด 0.25์ดˆ ๋™์•ˆ ํŒŒ๋ž—๊ฒŒ ์น ํ•ด์คŒ


0.1์ดˆ์•ˆ์— ๋˜ ํ˜ธ์ถœํ•˜๋ฉด ์ฝ”๋ฃจํ‹ด ๋ฉˆ์ถ”๊ณ ย ๋นจ๊ฐœ์ง„๋‹ค์Œย 0.5์ดˆ๋™์•ˆ ๋ฉ๋•Œ๋ฆผ



2bb2c225eac076b16bbdc69528d527033f03a051920bc4


์ด๋Ÿฐ์‹์œผ๋กœ


์ฐพ๋˜๊ฑฐ ๋งž๋‹ˆ?

๋„์›€๋์œผ๋ฉด ์ข‹๊ฒ ๋‹ค