2024-04-17 TIL

이재형·2024년 4월 17일
0

구현 내용 정리

1. 규칙 설명 이미지, 생성 버튼 구현

// 룰 버튼 기능 추가
public void RuleButton()
    {
        RuleImg.SetActive(true);
    }

룰 규칙 버튼


룰 설명 이미지


2. 결과창이 활성화가 되면 사운드 변경되게 구현

● 사운드 클립 추가

// 노래 변경
    public void ChangeMusic(int number)
    {
        // 느린 노래
        if (number==0)
        {
            audioSource.clip = clip[0];
            audioSource.Play();
        }
        // 빠른 노래
        else if (Gamemanager.instance?.time > 15.0f && soundCheck && number == 1)
        {
            audioSource.clip = clip[1];
            audioSource.Play();
            soundCheck = false;
        }
        // 결과 노래
        else if(number == 2)
        {
            audioSource.clip = clip[2];
            audioSource.Play();
        }
    }

number가 2일때의 조건을 생성하여 매개변수가 2로 받아졌을 때 사운드가 변경되게 함

● 결과판 메서드 실행 시 사운드 변경

// 게임 종료 후 점수판
    public void ResultText(int number)
    {
        // 점수판 활성화
        ResultImg.SetActive(true);
        // 결과창 노래 출력
        AudioManager.instance.ChangeMusic(2);
        // number == 0 즉 게임 클리어했을 경우
        if (number == 0)
        {
            ClearText.text = "Game Clear!!!";
            float TT = 30 - time;
            timeText.text = TT.ToString("N0");

            if (stage == 1)
            {
                next.SetActive(true);
                stage1Clear = true;
            }
            else if (stage == 2)
            {
                next.SetActive(true);
                if (CardCount == 0)
                {
                    stage2Clear = true;
                }
            }
            else if(stage == 3)
            {
                next.SetActive(false);
            }
        }
        // 그 외는 게임 오버
        else
        {
            ClearText.text = "Game Over...";
            timeText.text = "X";
            next.SetActive(false);

        }
        // 점수는 기본 1000에 매칭 횟수의 2배에 남은 시간 당 100점을 더함
        ST = 1000 - matchCount * 30 + (30 - (int)time) * 100;
        scoreText.text = ST.ToString();

        ScoreUi.instance.UpdateHighScore(stage, ST);
    }

게임이 끝났을 때 나오는 실행되는 ResultText(int number)를 사용하고 AudioManager.instance.ChangeMusic(2);를 이용하여 AudioManager에 있는 3번째 클립을 실행하게 함

정리

진행 사항

1. 깃허브를 활용하여 각자의 Branch를 만들어 개발 후 통합

2. 코드의 머지가 생겼을 때 해결

3. 게임 규칙과 사운드 추가

해결 못한 문제

1. 엄청 낮은 확률로 모든 카드를 없앴는데 게임이 안끝나는 상황

문제점

1. 씬의 개수 적고 UI를 자주 건들이는 게임이다보니 팀원들과 씬 편집으로 인한 충돌이 잦아져 해결하기 힘든 상황이 여럿 생김

profile
한국사람

0개의 댓글