본문으로 바로가기

이번시간에는 각 스크립트에 들어가 있는 변수와 역할에 대해서 살펴보겠습니다.

최종적으로 이 변수들을 한데 모아서 관리하는 부분을 구현하는 것이 목표입니다. 그러기 위해선 분석이 선행되어야겠죠.

코드만큼이나 변수가 많을 것 같습니다. 자 ~ 살펴봅시다.


1. UI & Scene

변수 이름

설명

변수 위치

 g_playername

 플레이어 이름을 저장하는 변수.

 YesButtonAction.cs

 g_bombcount

 폭타의 개수를 저장하는 변수.

 BombControl.cs

 vec

 'Main Camera'의 위치를 저장하고 바꾸는데 사용.

 BombTrigger.cs

 bombtime

 폭탄의 시간효과를 담당하는 변수.

 BombTrigger.cs

 time

 선언되어있으나 쓰이지 않는 변수.

 BombTrigger.cs

 temp

 폭탄버튼이 눌렸는지 눌리지 않았는지 판별 조건 변수 중 하나

 BombTrigger.cs

 stopper

 사용되고있으나 용도 불분명.

 BombTrigger.cs

 g_property

 플레이어의 속성을 지정하는 변수.

 ChangeProperty.cs

 y

 용도 불분명.

 DragButtonTest.cs

 playerHP

 값이 보정된 플레이어 에너지바 길이 변수.

 EnergyControl.cs

 bossHP

 값이 보정된 보스 에너지바 길이 변수.

 EnergyControl.cs

 correctPlayer

 플레이어 에너지바 길이 보정치.

 EnergyControl.cs

 correctBoss

 보스 에너지바 길이 보정치.

 EnergyControl.cs

 targetBoss

 보정할 대상의 보스 에너지바.

 EnergyControl.cs

 g_eventcheck1

 슬라이더1 이벤트 체크 변수.

 EventSlider1.cs

 time

 선언되어있으나 쓰이지 않는 변수.

 EventSlider1.cs

 g_eventcheck2

 슬라이더2 이벤트 체크 변수.

 EventSlider2.cs

 time

 선언되어있으나 쓰이지 않는 변수.

 EventSlider2.cs

 g_eventcheck3

 슬라이더3 이벤트 체크 변수.

 EventSlider3.cs

 g_eventcheck4

 슬라이더4 이벤트 체크 변수.

 EventSlider4.cs

 score

 GameManger의 g_score변수를 내부변수로 받는 역할.

 ScoreChecker.cs

 g_playerstop

 일시정지여부를 판단하는 변수.

 StopAllObjects.cs

 eventchecker

 g_eventcheck1~4를 받아오도록 하는 내부변수로 설계, 사용하지않음.

 ViewActivator.cs

 score

 GameManager의 g_score 변수를 내부변수로 받는 역할.

 HitandScoreCheck.cs

 hit

 GameManager의 g_kill 변수를 내부변수로 받는 역할.

 HitandScoreCheck.cs

 score

 GameManager의 g_score 변수를 내부변수로 받는 역할.

 RankActivate.cs

 score

 GameManager의 g_score 변수를 내부변수로 받는 역할.

 SubmitScore.cs

 hit

 GameManager의 g_kill 변수를 내부변수로 받는 역할.

 SubmitScore.cs

 playername

 YessButtonAction의 g_player 변수를 내부변수로 받는 역할.

 SubmitScore.cs

 url

 DB서버 연결주소를 가지는 변수.

 SubmitScore.cs

 finishmeter

 선언되어있으나 쓰이지 않는 변수.

 ScoreBoard.cs

 finishscore

 선언되어있으나 쓰이지 않는 변수.

 ScoreBoard.cs

 url

 DB서버 연결주소를 가지는 변수.

 ScoreBoard.cs

 checkStart

 서버와의 연결여부를 결정하는 변수.

 ScoreBoard.cs

 dealy

 선언되어있으나 쓰이지 않는 변수.

 AnimGUI.cs



2. Play

변수 이름

설명

변수 위치

 time

 진행되는 deltaTime을 저장하는 변수.

 Background_Move1.cs

 time2

 1초당 증가되는 deltaTime을 저장하는 변수.

 Background_Move1.cs

 speed

 배경이 움직이는 속도를 저장하는 변수.(레이어별로 다르게 설정)

 Background_Move1.cs

 amtToMove

 실제 배경을 랜더링 시키는 움직임 속도 변수.(통합)

 Background_Move1.cs

 time

 진행되는 deltaTime을 저장하는 변수.

 Background_Move2.cs

 time2

 1초당 증가되는 deltaTime을 저장하는 변수.

 Background_Move2.cs

 speed

 배경이 움직이는 속도를 저장하는 변수.(레이어별로 다르게 설정)

 Background_Move2.cs

 amtToMove

 실제 배경을 랜더링 시키는 움직임 속도 변수.(통합)

 Background_Move2.cs

 time

 진행되는 deltaTime을 저장하는 변수.

 Background_Move3.cs

 time2

 1초당 증가되는 deltaTime을 저장하는 변수.

 Background_Move3.cs

 speed

 배경이 움직이는 속도를 저장하는 변수.(레이어별로 다르게 설정)

 Background_Move3.cs

 amtToMove

 실제 배경을 랜더링 시키는 움직임 속도 변수.(통합)

 Background_Move3.cs

 vec

 'Main Camera'의 위치를 저장하고 바꾸는데 사용.

 Bomb.cs

 time

 폭탄의 시간효과를 담당하는 변수.

 Bomb.cs

 bomb

 폭탄의 사용여부를 판단하는 변수.

 Bomb.cs

 speed

 선언되어있으나 쓰이지 않는 변수.

 BombBox.cs

 amtToMove

 선언되어있으나 쓰이지 않는 변수.

 BombBox.cs

 time

 선언되어있으나 쓰이지 않는 변수.

 BombBox.cs

 count

 선언되어있으나 쓰이지 않는 변수.

 Boss_Body.cs

 hp

 보스몸통의 체력을 저장하는 변수.

 Boss_Body.cs

 vec

 선언되어있으나 쓰이지 않는 변수.

 Boss_Body.cs

 speed

 선언되어있으나 쓰이지 않는 변수.

 Boss_Body.cs

 randomtime

 랜덤시간을 저장하는 변수.

 Boss_Body.cs

 time

 시간을 저장하는 변수.

 Boss_Body.cs

 pos

 선언되어있으나 쓰이지 않는 변수.

 Boss_Camera_Position.cs

 G_cha_level

 캐릭터의 파워레벨을 나타내는 변수.

 Boss_Character.cs

 G_bullet_type

 캐릭터의 총알 타입을 나타내는 변수.

 Boss_Character.cs

 G_cha_state

 캐릭터가 종방향인지 횡방향인지 나타내는 변수.

 Boss_Character.cs

 G_game_state

 게임이 현재 어떤상태(일반/이벤트 등)인지 나타내는 변수.

 Boss_Character.cs

 G_game_event

 몇번째 이벤트인지를 나타내는 변수.

 Boss_Character.cs

 G_game_event_VerticalEvSlider

 선언되어있으나 쓰이지 않는 변수.

 Boss_Character.cs

 time

 시간을 저장하는 변수.

 Boss_Character.cs

 isOneShot

 선언되어있으나 쓰이지 않는 변수.

 Boss_Character.cs

 speed

 속도를 저장하는 변수.

 Boss_Fireball.cs

 amtToMove

 파이어볼의 이동속도를 지정하는 변수.

 Boss_Fireball.cs

 time

 시간을 저장하는 변수.

 Boss_Fireball.cs

 speed

 속도를 저장하는 변수.

 Boss_Iceball.cs

 amtToMove

 아이스볼의 이동속도를 지정하는 변수.

 Boss_Iceball.cs

 time

 시간을 저장하는 변수.

 Boss_Iceball.cs

 speed

 속도를 저장하는 변수.

 Boss_Lightingball.cs

 amtToMove

 라이트닝볼의 이동속도를 지정하는 변수.

 Boss_Lightingball.cs

 time

 시간을 저장하는 변수.

 Boss_Lightingball.cs

 count

 선언되어있으나 쓰이지 않는 변수.

 Boss_Left.cs

 hp

 보스왼쪽팔의 체력을 저장하는 변수.

 Boss_Left.cs

 vec

 선언되어있으나 쓰이지 않는 변수.

 Boss_Left.cs

 speed

 선언되어있으나 쓰이지 않는 변수.

 Boss_Left.cs

 randomtime

 랜덤시간을 저장하는 변수.

 Boss_Left.cs

 time

 시간을 저장하는 변수.

 Boss_Left.cs

 count

 선언되어있으나 쓰이지 않는 변수.

 Boss_Right.cs

 hp

 보스왼쪽팔의 체력을 저장하는 변수.

 Boss_Right.cs

 vec

 선언되어있으나 쓰이지 않는 변수.

 Boss_Right.cs

 speed

 선언되어있으나 쓰이지 않는 변수.

 Boss_Right.cs

 randomtime

 랜덤시간을 저장하는 변수.

 Boss_Right.cs

 time

 시간을 저장하는 변수.

 Boss_Right.cs

 speed

 속도를 저장하는 변수.

 Bullet_M_DevilMage.cs

 amtToMove

 Devilmage의 움직임 속도를 지정하는 변수.

 Bullet_M_DevilMage.cs

 vec

 플레이어의 위치가 저장되어 있는 변수.

 Bullet_M_Mushroomboy.cs

 speed

 속도를 저장하는 변수.

 Bullet_M_Mushroomboy.cs

 pos

 카메라의 위치를 월드좌표로 변환한 값을 가지는 변수.

 Bullett.cs

 speed

 속도를저장하는 변수.

 Camera_Move.cs

 amtToMove

 카메라의 움직임 속도를 지정하는 변수.

 Camera_Move.cs

 time

 시간을 저장하는 변수.

 Camera_Move.cs

 time2

 시간을 저장하는 변수.

 Camera_Move.cs

 pos

 카메라의 위치를 월드좌표로 변환한 값을 가지는 변수.

 Camera_Position.cs

 pos

 basic_pos의 좌표를 가지는 변수.

 Character.cs

 G_cha_hp

 플레이어의 체력을 저장하는 변수.

 Character.cs

 G_cha_level

 플레이어의 파워 레벨을 저장하는 변수.

 Character.cs

 G_bullet_type

 플레이어의 총알 타입을 저장하는 변수.

 Character.cs

 G_cha_state

 플레이어의 속성(불/물/빛)을 저장하는 변수.

 Character.cs

 G_game_state

 플레이어의 상태(종/횡)를 저장하는 변수.

 Character.cs

 G_game_event

 어떤 이벤트가 발생했는지 나타내는 변수.

 Character.cs

 G_game_event_boss

 보스 이벤트의 발생여부를 나타내는 변수

 Character.cs

 G_game_event_boss_hp

 선언되었으나 쓰이지 않는 변수.

 Character.cs

 G_game_event_VerticalEvSlider

 선언되었으나 쓰이지 않는 변수.

 Character.cs

 G_game_event_HorizontalEvSlider

 선언되었으나 쓰이지 않는 변수.

 Character.cs

 time

 시간을 저장하는 변수.

 Character.cs

 isOneShot

 파워업 아이템의 총알 타입을 지정하는 변수.(하나/3방향)

 Character.cs

 pos

 선언되었으나 쓰이지 않는 변수.

 Character_Boss.cs

 G_cha_level

 플레이어의 파워 레벨을 저장하는 변수.

 Character_Boss.cs

 G_bullet_type

 플레이어의 총알 타입을 저장하는 변수.

 Character_Boss.cs

 G_cha_state

 플레이어의 속성(불/물/빛)을 저장하는 변수.

 Character_Boss.cs

 G_game_state

 플레이어의 상태(종/횡)를 저장하는 변수.

 Character_Boss.cs

 G_game_event

 어떤 이벤트가 발생했는지 나타내는 변수.

 Character_Boss.cs

 G_game_event_VerticalEvSlider

 선언되었으나 쓰이지 않는 변수.

 Character_Boss.cs

 time

 시간을 저장하는 변수.

 Character_Boss.cs

 isOneShot

 선언되었으나 쓰이지 않는 변수.

 Character_Boss.cs

 oldPos

 처음 클릭한 부분의 위치를 월드좌표로 변환한 값을 가지는 변수.

 Character_Move.cs

 targetPos

 처음과 나중클릭한부분을 계산하여 실제 움직인 위치를 가지는 변수.

 Character_Move.cs

 movePos

 나중 터치한 부분의 위치를 월드좌표로 변환한 값을 가지는 변수.

 Character_Move.cs

 Pos

 target_res의 좌표를 가지는 변수.

 Character_Move.cs

 inputPosition

 클릭한 위치를 입력받는 변수.

 Character_Move.cs

 g_score

 스코어를 저장하는 변수.

 GameManager.cs

 g_kill

 킬수를 저장하는 변수.

 GameManager.cs

 time2

 시간을 저장하는 변수.

 item_bomb.cs

 speed

 속도를 저장하는 변수.

 item_bomb.cs

 amtToMove

 폭탄 아이템의 이동속도를 지정하는 변수.

 item_bomb.cs

 isOneShot

 선언되었으나 쓰이지 않는 변수.

 item_bomb.cs

 x

 x축 좌표값.

 item_bomb.cs

 z

 z축 좌표값.

 item_bomb.cs

 time2

 시간을 저장하는 변수.

 item_hp.cs

 speed

 속도를 저장하는 변수.

 item_hp.cs

 amtToMove

 폭탄 아이템의 이동속도를 지정하는 변수.

 item_hp.cs

 isOneShot

 선언되었으나 쓰이지 않는 변수.

 item_hp.cs

 x

 x축 좌표값.

 item_hp.cs

 z

 z축 좌표값.

 item_hp.cs

 time2

 시간을 저장하는 변수.

 item_p.cs

 speed

 속도를 저장하는 변수.

 item_p.cs

 amtToMove

 폭탄 아이템의 이동속도를 지정하는 변수.

 item_p.cs

 isOneShot

 파워업 아이템의 총알 타입을 지정하는 변수.(하나/3방향)

 item_p.cs

 x

 x축 좌표값.

 item_p.cs

 z

 z축 좌표값.

 item_p.cs

 temp

 선언되었으나 쓰이지 않는 변수.

 Monster_BlackSmith.cs

 time2

 선언되었으나 쓰이지 않는 변수.

 Monster_BlackSmith.cs

 time

 선언되었으나 쓰이지 않는 변수.

 Monster_BlackSmith.cs

 hp

 BlackSmith의 체력 변수.

 Monster_BlackSmith.cs

 count

 BlackSmith의 탄 쏘는 간격을 위한 누적변수.

 Monster_BlackSmith.cs

 itemCount

 BlackSmith가 죽고 난뒤 스폰할 아이템의 종류를 나타내는 변수.

 Monster_BlackSmith.cs

 temp

 BlackSmith가 소멸되는 조건변수.

 Monster_BlackSmith_Move.cs

 time

 시간을 저장하는 변수.

 Monster_BlackSmith_Move.cs

 speed

 속도를 저장하는 변수.

 Monster_BlackSmith_Move.cs

 amtToMove

 BlackSmith의 이동속도를 지정하는 변수.

 Monster_BlackSmith_Move.cs

 temp

 선언되었으나 쓰이지 않는 변수.

 Monster_BlackSmith_Side.cs

 time2

 선언되었으나 쓰이지 않는 변수.

 Monster_BlackSmith_Side.cs

 time

 선언되었으나 쓰이지 않는 변수.

 Monster_BlackSmith_Side.cs

 speed

 선언되었으나 쓰이지 않는 변수.

 Monster_BlackSmith_Side.cs

 amtToMove

 선언되었으나 쓰이지 않는 변수.

 Monster_BlackSmith_Side.cs

 hp

 BlackSmith의 체력 변수.

 Monster_BlackSmith_Side.cs

 count

 BlackSmith의 탄 쏘는 간격을 위한 누적변수.

 Monster_BlackSmith_Side.cs

 itemCount

 BlackSmith가 죽고 난뒤 스폰할 아이템의 종류를 나타내는 변수.

 Monster_BlackSmith_Side.cs

 temp

 BlackSmith가 소멸되는 조건변수.

 Monster_BlackSmith_Side_Move.cs

 time

 시간을 저장하는 변수.

 Monster_BlackSmith_Side_Move.cs

 speed

 속도를 저장하는 변수.

 Monster_BlackSmith_Side_Move.cs

 amtToMove

 BlackSmith의 이동속도를 지정하는 변수.

 Monster_BlackSmith_Side_Move.cs

 hp

 BlackSmith의 체력 변수.

 Monster_BlackSmith_Side_Move.cs

 time

 시간을 저장하는 변수.

 Monster_Bombtory.cs

 temp

 Bombtory가 소멸되는 조건변수.

 Monster_Bombtory.cs

 count

 선언되었으나 쓰이지 않는 변수.

 Monster_Bombtory.cs

 hp

 Bombtory의 체력 변수.

 Monster_Bombtory.cs

 vec

 플레이어와 Bombtory간의 거리를 계산한 벡터 변수.

 Monster_Bombtory.cs

 speed

 속도를 저장하는 변수.

 Monster_Bombtory.cs

 time

 선언되었으나 쓰이지 않는 변수.

 Monster_DevilMage.cs

 speed

 선언되었으나 쓰이지 않는 변수.

 Monster_DevilMage.cs

 hp

 DevilMage의 체력변수.

 Monster_DevilMage.cs

 count

 DevilMage의 탄 쏘는 간격을 위한 누적변수.

 Monster_DevilMage.cs

 i

 선언되었으나 쓰이지 않는 변수.

 Monster_DevilMage.cs

 r

 선언되었으나 쓰이지 않는 변수.

 Monster_DevilMage.cs

 dir

 선언되었으나 쓰이지 않는 변수.

 Monster_DevilMage.cs

 bulletSpeed

 선언되었으나 쓰이지 않는 변수.

 Monster_DevilMage.cs

 temp

 DevilMage가 소멸되는 조건변수.

 Monster_DevilMage.cs

 itemCount

 DevilMage가 죽고 난뒤 스폰할 아이템의 종류를 나타내는 변수.

 Monster_DevilMage.cs

 temp

 DevilMage가 소멸되는 조건변수.

 Monster_DevilMage_Move.cs

 time

 시간을 저장하는 변수.

 Monster_DevilMage_Move.cs

 amtToMove

 DevilMage의 이동속도를 지정하는 변수.

 Monster_DevilMage_Move.cs

 speed

 속도를 저장하는 변수.

 Monster_DevilMage_Move.cs

 dir

 선언되었으나 쓰이지 않는 변수.

 Monster_Firebear.cs

 i

 임시 변수.

 Monster_Firebear.cs

 r

 선언되었으나 쓰이지 않는 변수.

 Monster_Firebear.cs

 count

 Firebear의 탄 쏘는 간격을 위한 누적변수.

 Monster_Firebear.cs

 g_firebear_hp

 Firebear의 체력변수.

 Monster_Firebear.cs

 vec

 선언되었으나 쓰이지 않는 변수.

 Monster_Firebear.cs

 speed

 선언되었으나 쓰이지 않는 변수.

 Monster_Firebear.cs

 time

 시간을 저장하는 변수.

 Monster_Firebear.cs

 i

 임시 변수.

 Monster_Freesia.cs

 r

 임시 변수.

 Monster_Freesia.cs

 dir

 방향을 나타내는 변수.

 Monster_Freesia.cs

 count

 Freesia의 탄 쏘는 간격을 위한 누적변수.

 Monster_Freesia.cs

 g_freezia_hp

 Freesia의 체력변수.

 Monster_Freesia.cs

 time

 시간을 저장하는 변수.

 Monster_Freesia.cs

 itemCount

 Freesia가 죽고 난뒤 스폰할 아이템의 종류를 나타내는 변수.

 Monster_Freesia.cs

 time

 시간을 저장하는 변수.

 Monster_Mushroomboy.cs

 temp

 Mushroomboy가 소멸되는 조건변수.

 Monster_Mushroomboy.cs

 count

 Mushroomboy의 탄 쏘는 간격을 위한 누적변수.

 Monster_Mushroomboy.cs

 hp

 Mushroomboy의 체력변수.

 Monster_Mushroomboy.cs

 range

 Mushroomboy의 이동 범위 변수.

 Monster_Mushroomboy_Move.cs

 temp

 Mushroomboy가 소멸되는 조건변수.

 Monster_Mushroomboy_Move.cs

 time

 시간을 저장하는 변수.

 Monster_Mushroomboy_Move.cs

 speed

 속도를 저장하는 변수.

 Monster_Mushroomboy_Move.cs

 amtToMove

 Mushroomboy의 이동속도를 지정하는 변수.

 Monster_Mushroomboy_Move.cs

 time

 시간을 저장하는 변수.

 Monster_Mushroomboy_Side.cs

 temp

 Mushroomboy가 소멸되는 조건변수.

 Monster_Mushroomboy_Side.cs

 count

 Mushroomboy의 탄 쏘는 간격을 위한 누적변수.

 Monster_Mushroomboy_Side.cs

 hp

 Mushroomboy의 체력변수.

 Monster_Mushroomboy_Side.cs

 range

 Mushroomboy의 이동 범위 변수.

 Monster_Mushroomboy_Side_Move.cs

 time

 시간을 저장하는 변수.

 Monster_Mushroomboy_Side_Move.cs

 speed

 속도를 저장하는 변수.

 Monster_Mushroomboy_Side_Move.cs

 amtToMove

 Mushroomboy의 이동속도를 지정하는 변수.

 Monster_Mushroomboy_Side_Move.cs

 amtToMove

 선언되었으나 쓰이지 않는 변수.

 R_joy.cs

 amtToMove

 선언되었으나 쓰이지 않는 변수.

 R_joy_Boss.cs

 amtToMove

 선언되었으나 쓰이지 않는 변수.

 R_joy2.cs

 speed

 속도를 저장하는 변수.

 speed_revision.cs

 amtToMove

 이동속도를 지정하는 변수.

 speed_revision.cs

 time

 시간을 저장하는 변수.

 speed_revision.cs


노랑색 -> 전역변수

주황색 -> 쓰이지 않는 변수

초록색 -> 용도가 불분명한 변수

보라색 -> Private로 선언된 변수


이렇게 변수분석을 해보았습니다. 많이 중복되는 변수들도 보이고, 쓰이지 않는 변수들도 보이며 어떤 변수인지 잘 생각이 나질 않는 것들도 있습니다. (선언용도에 따른 패턴이 보이지 않는게 가장 큰 문제...ㅠ) 스크립트와 변수만 리뷰를 바탕으로 정리하면 꽤나 깔끔한 코드구조가 나올것으로 보입니다.

이제 리뷰 마지막은 AIE에서 사용된 인상깊었던 코드들을 리뷰해 보겠습니다.