본문으로 바로가기



Angel In Earth에는 다양한 스크립트가 존재합니다.


각 스크립트들은 게임의 씬과 오브젝트들과 유기적으로 동작하며, 처음 설계시에는 추후 확장성등을 고려해서 최대한 잘게 세분화하여 짜는 것을 목표로 하였으나, 여러 인원이 작업하다보니 나중에는 이리저리 뒤섞이는 현상이 발생하고 말았습니다. ㅠ_ㅠ)

따라서 이번 포스팅에서는 각 스크립트가 어느 분류에 속하고 어느 오브젝트와 연동되어 동작하고 어디에 영향을 미치는지 알아보도록 하겠습니다.



1. UI & Scene


스크립트 명

설명

비고

 ChallengeActivator.cs

 도전과제를 작동시키는 스크립트. (내부로직은 구현되있지 않음)

 플레이어의 정보를 로컬에 저장하는 기술필요

 GoToScore.cs

 메인메뉴(스코어보드) 씬 이동 스크립트.

 중복 #1

 GoToTitle.cs

 타이틀 씬 이동 스크립트.

 gameover scene

 BackToMenu.cs

 메인메뉴(스코어보드) 씬 이동 스크립트.

 중복 #1

 ChangeContent.cs

 도움말 씬 내부 메뉴 동작 스크립트

 SetActive가 모두 False로 동작

 GoToMenu.cs

 메인메뉴(스코어보드) 씬 이동 스크립트.

 중복 #1

 IDPopUp.cs

 플레이어이름 입력 팝업패널을 활성화 시키는 스크립트.

 id scene

 NoButtonAction.cs

 입력된 이름을 지워주는 스크립트.

 id scene

 YesButtonAction.cs

 입력된 이름을 플레이어이름으로 설정하는 스크립트.

 id scene, 빈 이름입력시 기본 이름으로 동작하도록 예외처리 되어있음

 BombControl.cs

 폭탄사용시 UI의 아이콘 개수를 컨트롤 하는 스크립트.

 play scene

 BombTrigger.cs

 폭탄사용시 폭탄의 효과와 애니메이션을 컨트롤하는 스크립트.

 play scene. itween과 사용

 ChangeProperties.cs

 속성컨트롤 UI 활성화/비활성화 동작 스크립트.

 play scene

 Continue.cs

 일시정지 해제시 UI동작과 소리를 컨트롤하는 스크립트.

 play scene

 DragButtonTest.cs

 테스트용 스크립트

 play scene

 EnergyControl.cs

 플레이어와 보스의 에너지바를 계산하고 작동시키는 스크립트.

 play scene. 로직상 완벽한 부분이 어떤부분과 충돌이 나는지 동작을 하지 않는 경우가 있었음

 EventSlider1.cs

 화면 종->횡 전환시 사용되는 상단에 위치한 슬라이더 스크립트.

 play scene

 EventSlider2.cs

 화면 종->횡 전환시 사용되는 하단에 위치한 슬라이더 스크립트.

 play scene

 EventSlider3.cs

 화면 횡->종 전환시 사용되는 상단에 위치한 슬라이더 스크립트.

 play scene

 EventSlider4.cs

 화면 횡->종 전환시 사용되는 하단에 위치한 슬라이더 스크립트.

 play scene

 GoToResult.cs

 결과 씬 이동 스크립트.

 play scene

 ScoreChecker.cs

 플레이 씬에서 표시되는 점수 스크립트.

 play scene

 StopAllObjects.cs

 일시정지 스크립트.

 play scene

 sv.cs

 사운드? (슬라이더 이벤트 성공했을때 나오는)

 play scene

 ViewActivator.cs

 이벤트가 발생되었을때 특정 UI부분을 활성/비활성 시키는 스크립트.

 play scene. 이부분에서 sv와 sh를 활성화시킴

 HitandScoreCheck.cs

 최종 히트수(킬수)와 점수를 화면에 보여주는 스크립트.

 result scene

 RankActivate.cs

 점수에 따라 랭크를 결정하는 스크립트.

 result scene

 SubmitScore.cs

 플레이어의 이름/히트수(킬수)/점수 를 DB에 업로드하는 스크립트.

 result scene

 TimeCheck.cs

 플레이 타임을 계산하고 화면에 출력하는 스크립트.

 result scene

 GoToHelp.cs

 도움말 씬 이동 스크립트.

 scoreboard scene

 GoToTuto.cs

 튜토리얼 씬 이동 스크립트.

 scoreboard scene

 ScoreBoard.cs

 플레이어 이름과 점수를 DB에서 가져와 화면에 출력하는 스크립트.

 scoreboard scene

 AnimGUI.cs

 타이틀 씬 요소 활성화 스크립트.

 title scene

 GoToID.cs

 아이디 씬 이동 스크립트.

 title scene

 SkipIntro.cs

 타이틀 인트로 스킵동작 스크립트.

 title scene

 GoToNext.cs

 튜토리얼 넘김 스크립트.

 tutorial scene

 GoToPlay.cs

 게임에 들어가는 각 수치들 초기화 및 플레이 씬 이동 스크립트.

 tutorial scene

 A_Test.cs

 게임오버 씬 이동 스크립트. + 오디오 정지 풀림

 테스트용 스크립트. 일시정지 부분에서 end게임 눌렀을 시 쓰이는 스크립트.

 B_Test.cs

 도전과제 씬 이동 스크립트.

 테스트용 스크립트.



2. Control


스크립트 명

설명

비고

 Background_Move1.cs

 횡화면에서 배경플레인의 속도를 조절하는 스크립트.

 배경 레이어1

 Background_Move2.cs

 횡화면에서 배경플레인의 속도를 조절하는 스크립트.

 배경 레이어2

 Background_Move3.cs

 횡화면에서 배경플레인의 속도를 조절하는 스크립트.

 배경 레이어3

 Bomb.cs

 폭탄 동작 스크립트.

 사용하지 않음. BombTrigger와 중복

 BombBox.cs

 폭탄 물리 스크립트.

 

 BombEffect.cs

 ?

 

 Boss_Body.cs

 보스 몸통 피격데미지 및 파괴조건 조정 스크립트.

 

 Boss_Camera_Position.cs

 보스전용 카메라 위치 스크립트.

 

 Boss_Character.cs

 보스전 플레이어의 속성 및 수치를 담당하는 스크립트.

 

 Boss_Fireball.cs

 보스의 탄(파이어볼) 스크립트.

 

 Boss_Iceball.cs

 보스의 탄(아이스볼) 스크립트.

 

 Boss_Left.cs

 보스 왼쪽 팔 피격데미지 및 파괴조건 조정 스크립트.

 

 Boss_Lightingball.cs

 보스의 탄(라이트닝볼) 스크립트.

 

 Boss_Right.cs

 보스 오른쪽 팔 피격데미지 및 파괴조건 조정 스크립트.

 

 bullet.cs

 총알이 플레이어와의 일정거리 이상이면 파괴되는 스크립트.

 

 Bullet_M_BlackSmith.cs

 BlackSmith의 총알이 파괴되는 조건 스크립트.

 일정시간

 Bullet_M_DevilMage.cs

 DevilMage의 총알이 파괴되는 조건 스크립트.

 일정시간 + 카메라범위 밖으로 나가면 파괴

 Bullet_M_Firebear.cs

 Firebear의 총알이 파괴되는 조건 스크립트.

 일정시간 + 카메라범위 밖으로 나가면 파괴

 Bullet_M_Freesia.cs

 Freesia의 총알이 파괴되는 조건 스크립트.

 일정시간 + 카메라범위 밖으로 나가면 파괴

 Bullet_M_Mushroomboy.cs

 Mushroomboy의 총알이 파괴되는 조건 스크립트.

 일정시간 + 카메라범위 밖으로 나가면 파괴

 Bullett.cs

 플레이어의 총알이 파괴되는 조건 스크립트.

 카메라범위 밖으로 나가면 파괴 + 일반몬스터와 + 특정몬스터(보스)의 피격 이펙트의 구분

 Cameera_Event_Boss.cs

 보스전 카메라 이벤트 스크립트.

 itween

 Cameera_Event.cs

 카메라 이벤트 스크립트.

 itween

 Cameera_Move.cs

 스테이트에 따른 카메라 이동 스크립트.

 보스전 등의 이벤트에서는 이동이 정지

 Cameera_Position.cs

 스테이트에 따른 카메라의 포지션 스크립트.

 

 Change_Fire.cs

 ?

 

 Character.cs

 캐릭터 속성과 이벤트를 다루는 스크립트.

 캐릭터의 총알세기(레벨). 이벤트와 관련된 스테이트 로직들이 집약

 Character_Angel.cs

 수호천사 애니메이션 스크립트.

 

 Character_Boss.cs

 보스캐릭터의 속성과 이벤트를 다루는 스크립트.

 Character스크립트와 유사 및 중복

 Character_Move.cs

 캐릭터 움직임을 다루는 스크립트.

 터치조작과 마우스조작 스크립트가 존재

 Character_Texture.cs

 플레이어 캐릭터의 텍스쳐색상을 바꿔주는 스크립트.

 특정쉐이더에서 동작안함을 확인

 FireBear_Model.cs

 FireBear 애니메이션 스크립트.

 

 GameManager.cs

 스코어와 킬수를 가지고 있는 스크립트.

 쓰긴쓰나 역할이 거의 없음

 group.cs

 해당 그룹을 지정된 패스로 움직이게 하는 스크립트.

 itween

 item_bomb.cs

 폭탄 아이템 스크립트.

 아이템스피드도 랜덤범위라 버벅이는 움직임

 item_hp.cs

 에너지 아이템 스크립트.

 아이템스피드도 랜덤범위라 버벅이는 움직임

 item_p.cs

 파워 아이템 스크립트.

 아이템스피드도 랜덤범위라 버벅이는 움직임

 L_H_joy.cs

 횡 속성컨트롤 조이스틱 스크립트.

 

 L_joy.cs

 종 속성컨트롤 조이스틱 스크립트.

 

 Monster_BlackSmith.cs

 BlackSmith 몬스터 속성 스크립트. (종)

 탄막. 피격데미지. 애니메이션 등등 몬스터 속성

 Monster_BlackSmith_Move.cs

 BlackSmith 몬스터 이동 스크립트. (종)

 

 Monster_BlackSmith_Side.cs

 BlackSmith 몬스터 속성 스크립트. (횡)

 탄막. 피격데미지. 애니메이션 등등 몬스터 속성

 Monster_BlackSmith_Side_Move.cs

 BlackSmith 몬스터 이동 스크립트. (횡)

 

 Monster_Bombtory.cs

 Bombtory 몬스터 속성 스크립트.

 탄막. 피격데미지. 애니메이션 등등 몬스터 속성

 Monster_Boss.cs

 없음

 

 Monster_DevilMage.cs

 DevilMage 몬스터 속성 스크립트.

 탄막. 피격데미지. 애니메이션 등등 몬스터 속성

 Monster_DevilMage_Move.cs

 DevilMage 몬스터 이동 스크립트.

 

 Monster_Firebear.cs

 Firebear 몬스터 속성 스크립트.

 탄막. 피격데미지. 애니메이션 등등 몬스터 속성

 Monster_Freesia.cs

 Freesia 몬스터 속성 스크립트.

 탄막. 피격데미지. 애니메이션 등등 몬스터 속성

 Monster_Mushroomboy.cs

 Mushroomboy 몬스터 속성 스크립트. (종)

 탄막. 피격데미지. 애니메이션 등등 몬스터 속성

 Monster_Mushroomboy_Move.cs

 Mushroomboy 몬스터 이동 스크립트. (종)

 

 Monster_Mushroomboy_Side.cs

 Mushroomboy 몬스터 속성 스크립트. (횡)

 탄막. 피격데미지. 애니메이션 등등 몬스터 속성

 Monster_Mushroomboy_Side_Move.cs

 Mushroomboy 몬스터 이동 스크립트. (횡)

 

 R_joy.cs

 기존 이동 조이스틱.

 

 R_joy_Boss.cs

 보스전 이동 조이스틱.

 

 R_joy2.cs

 기존 이동 조이스틱 버전2.

 

 Sound.cs

 BGM 사운드 스크립트

 로직은 있으나 사용하지 않음.

 speed_revision.cs

 속도관련 스크립트.

 


노랑색 -> 스크립트가 중복되는 듯한 유형

주황색 -> 스크립트가 빠져있거나 동작하지 않는 것

초록색 -> 스크립트 내부 로직의 수정이 필요한 것

보라색 -> 스크립트가 완성은 되어있으나 구현단계에 들어가 있지 않은 것(미래)


스크립트가 어마어마하게 많았군요 -0-...... 


작성하면서 보니 필요없는 스크립트도 있고, 스크립트는 있는데 정확한 역할이 잘 기억이 나질않아 다시 찾아보게된 것들도 있네요.

다음 포스팅에는 스크립트에 대한 기억도 되살릴겸 프로젝트를 진행하면서 특별했던 코드 부분부분들을 살펴보도록 하겠습니다.