공hannah부
CJ UNIT 7기 게임TF #3(급식실 게임 - 학생 표정 바꾸기) 본문
오늘의 내용
학생들을 클릭/드레그하면 각 구간에 맞게 웃는/우는 표정의 창캐미로 바꿔야한다.
처음에는 학생이 눌리면 그 학생을 멈추고 웃는/우는 애니메이션을 넣으려고 했지만 애니메이션을 창캐미가 눌린 x값의 위치에 넣는 방법을 모르겠어서 pass..
또 학생을 멈추니 그 자리에 있는 학생을 연속으로 누르면 점수가 올라간다..
→ 학생을 누르면 학생이 사라지고 그 자리에 웃는/우는 모습의 창캐미 이미지를 새로 생성해주기로 결정!
NoteManager
- 급식판 들고 있는 학생 웃기 / 급식판 들고 있는 학생 울기 / 급식판 안들고 있는 학생 웃기 / 급식판 안들고 있는 학생 울기의 4가지 함수를 만들어 각 학생 스크립트에서 꺼내쓸 수 있도록 하였다.
- 각 함수에는 instantiate를 사용해 학생을 생성해주는 코드가 들어가 있다. 이때 parent 생성은 필수!
- 이때 각각의 학생들은 prefab으로 만들어 관리해주었다.
- 만들어진 학생들은 5초뒤 사라진다.
//식판 들고있는 학생 웃기
public void ChangeStudentOHappy(int x)
{
GameObject theStudentOHappy = Instantiate(StudentOHappy, new Vector3(x, 0, 0), Quaternion.identity);
theStudentOHappy.transform.SetParent(this.transform,false);
Destroy(theStudentOHappy,0.5f);
}
NoteO / NoteX
- 학생 클릭 / 드레그가 인식되면 그 학생을 destroy시키고 Notemanager에서 구간에 맞는 학생 함수 가져와 이미지를 생성시킨다.
//식판 들고있는 학생 클릭했을 때
public void OnPointerClick(PointerEventData eventData)
{
int PerfectX1=-50, PerfectX2=50, CoolX1=-100, CoolX2=100, GoodX1=-200, GoodX2=200, BadX1=-400, BadX2=400; //P,C,G,B 구역 설정
int PositionX = Mathf.RoundToInt(transform.localPosition.x);
if(PerfectX1 <= PositionX && PositionX <= PerfectX2)
{
Destroy(gameObject);
theNoteManager.ChangeStudentOHappy(PositionX); //클릭한 위치에 웃는 표정 학생 생성
}
}
실행 영상
'프로젝트 > CJ UNIT 7기 게임TF' 카테고리의 다른 글
CJ UNIT 7기 게임TF #7(급식실 게임 - 결과창) (0) | 2022.11.26 |
---|---|
CJ UNIT 7기 게임TF #6(급식실 게임 - BGM) (0) | 2022.11.25 |
CJ UNIT 7기 게임TF #5(급식실 게임 - 점수 시스템) (0) | 2022.11.25 |
CJ UNIT 7기 게임TF #4(급식실 게임 - 판정 효과) (0) | 2022.11.24 |
CJ UNIT 7기 게임TF #2(급식실 게임 - 학생) (0) | 2022.11.23 |