-
[TIL]2024-04-15TIL 2024. 4. 15. 21:56
일단 반드시 구현해야 할 기능은 사다리 타기로 정했고
챌린지 부분은 겹쳐서 구현해도 상관없을 것 같다 생각해서 남는 시간에 구현해봤습니다.
3. 타이머 시간이 촉박할 때 게이머에게 경고하는 기능 작성해보기(시간이 붉게 변하거나 긴박한 배경음악으로 변경)
*GameMaanager.cs의 time을 public으로 변경
*AudioManager.cs의 audioSource를 public으로 변경
Canvas의 TimeTxt에 스크립트 붙이기
//TimerWarning.cs using UnityEngine; using System.Collections; using UnityEngine.UI; public class TimerWarning : MonoBehaviour { //타이머 시간이 촉박할 떄 게이머에게 경고하는 기능 작성 /* *GameMaanager.cs의 time을 public으로 변경(참조하기 위함) *AudioManager.cs의 audioSource를 public으로 변경(참조하기 위함) *이 스크립트는 Canvas TimeTxt에 붙입니다. */ Text timeText; bool runningCorutine; Coroutine coroutine; void Start() { timeText = GetComponent<Text>(); } void Update() { /* *게임이 끝나기 5초 전 *코루틴이 실행중이 아니고 *타임 스케일이 0이 아니여야한다. */ if (GameManager.Instance.time>=25f&& runningCorutine==false&&Time.timeScale!=0) { coroutine= StartCoroutine(Warning()); } else if(Time.timeScale==0) { StopCoroutine(coroutine); timeText.color = new Color(1f, 0f, 0f, 1); AudioManager.Instance.audioSource.pitch = 1.0f; runningCorutine = false; } } //5초가 남았을 때 시간의 색깔이 점점 빨간색으로 변하기+ 음악 속도 빠르게 하기 IEnumerator Warning() { runningCorutine = true; float count = 255f; for (int i = 0; i<5;i++) { count -= 51f; timeText.color = new Color(1f, count/255f, count/255f, 1);//시간텍스트 빨개짐 AudioManager.Instance.audioSource.pitch += 0.1f;//소리속도 빨라짐 yield return new WaitForSecondsRealtime(1f); } AudioManager.Instance.audioSource.pitch = 1.0f; runningCorutine = false; }
[Challenge]
7. 실패할 때 마다 시간 감소 효과 넣어보기
Canvas의 TimeTxt를 복사하고 이름을 penlatyTxt로 변경
PosX= 180 PosY=400
FontSize: 50
Color : 255, 0, 0, 255
GameManager.cs public penaltyTxt; ... public void isMatched() { if(firstCard.index==secondCard.index) { ... } else { penaltyTxt.SetActive(true); time += 0.5f; Invoke("closeTxt", 0.5f); ... } }
8. 카드 뒤집기에서 실제로 카드가 뒤집어지는 모습 연출하기
Card 애니메이터에서 애니메이션 바꾸기
//Card.cs bool openCard; ... public void OpenCard() { if(openCard==false&&Time.timeScale==1) { openCard = true; //딜레이 주기 Invoke("openDelay", 1f); ... } } void openDelay() { openCard=false; }
GitHub를 아직 사용할줄 몰라서 팀원분들 코드를 일일히 병합해서 테스트를 해봤습니다...
몇 분은 잘 합쳐졌고 몇 분은 아직 수정이 필요한 상황이지만 첫날치고 되게 잘 만들었다 생각
처음으로 각각의 프로그래머 분들이랑 코드 합쳤는데 묘하게 잘돌아가서 신기했습니다.
내일 합친 코드의 최적화와 변수 정리 그리고 합쳐지지 않는분들의 원인을 찾고 시간적 여유가 되면 챌린지 몇 개 더 구현하기로
'TIL' 카테고리의 다른 글
[TIL]C#문법 2 (0) 2024.04.23 [TIL]C#문법1주차(수정중) (0) 2024.04.23 [TIL] 2024-04-18 협업툴 사용 (0) 2024.04.18 [TIL]2024-04-17 GitHub (1) 2024.04.17 [TIL]2024-04-16 (0) 2024.04.16