반응형

전체보기 200

유니티 게임 오브젝트와 UI 클릭을 구분하기 - [EventSystem.IsPointerOverGameObject]

입력을 하나의 스크립트에서 처리를 한다고 할 때, 이런 경우가 있을것이다. Player 캐릭터의 움직임에도 마우스 클릭이 사용되고 UI 버튼을 사용할때에도 마우스 클릭이 사용된다. 이 경우, UI 버튼만 누르고 싶어서 누른건데 Player 캐릭터또한 UI 버튼 방향으로 이동한다면? 대충 이런 상황에서 사용되는게 IsPointerOverGameObject이다. https://docs.unity3d.com/kr/530/ScriptReference/EventSystems.EventSystem.IsPointerOverGameObject.html Unity - 스크립팅 API: EventSystems.EventSystem.IsPointerOverGameObject If you use IsPointerOverGam..

State 패턴

게임을 만들다보면, 하나의 캐릭터는 굉장히 많은 동작을 수행해야한다. 대기, 걷기, 뛰기, 앉기, 공격 등등등... 그런데 스크립트 상에서 이러한 동작을 전환시키려면 어떻게 해야할까? 각 상태별로 Boolean 변수를 만들어서 각 변수를 체크한다? 동작이 한 두개라면 쓸 수 있는 방법이겠지만, 동작이 많아지면 많아질수록 관리가 감당이 안될것이다. 이럴때 사용하는 방법이 바로 State 패턴. public enum PlayerState { Die, Moving, Idle, Channeling, Jumpling, Falling, } PlayerState _state = PlayerState.Idle; 우선 이렇게 동작을 정의? 해준다. void Update() { switch (_state) { case P..

백준 1011번: Fly me to the Alpha Centauri [C++]

https://www.acmicpc.net/problem/1011 1011번: Fly me to the Alpha Centauri 우현이는 어린 시절, 지구 외의 다른 행성에서도 인류들이 살아갈 수 있는 미래가 오리라 믿었다. 그리고 그가 지구라는 세상에 발을 내려 놓은 지 23년이 지난 지금, 세계 최연소 ASNA 우주 비행 www.acmicpc.net 코드 #include using namespace std; int solve(int dis){ int answer = 0; int k = 2; if(dis == 1) return -1; else if(dis == 2) return 0; else{ dis -= 2; while(dis > 0){ if(dis >= k * 2){ dis -= k * 2; an..

백준 10757번: 큰 수 A+B [C++]

https://www.acmicpc.net/problem/10757 10757번: 큰 수 A+B 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. www.acmicpc.net 코드 #include #include #include using namespace std; int main() { vector vec_A; vector vec_B; vector answer; string A, B; cin >> A >> B; for(char & char_A : A){ vec_A.push_back(char_A - '0'); } for(char & char_B : B){ vec_B.push_back(char_B - '0'); } reverse(vec_A.begin(), vec_A.end());..

백준 2839번: 설탕 배달[C++]

https://www.acmicpc.net/problem/2839 2839번: 설탕 배달 상근이는 요즘 설탕공장에서 설탕을 배달하고 있다. 상근이는 지금 사탕가게에 설탕을 정확하게 N킬로그램을 배달해야 한다. 설탕공장에서 만드는 설탕은 봉지에 담겨져 있다. 봉지는 3킬로그 www.acmicpc.net 코드 #include using namespace std; int main() { int n; cin >> n; int a, b, min = 5000; // a is number of 3kg and b is number of 5kg for(a = 0; a * 5

백준 2775번: 부녀회장이 될테야 [C++]

https://www.acmicpc.net/problem/2775 2775번: 부녀회장이 될테야 첫 번째 줄에 Test case의 수 T가 주어진다. 그리고 각각의 케이스마다 입력으로 첫 번째 줄에 정수 k, 두 번째 줄에 정수 n이 주어진다 www.acmicpc.net 코드 #include using namespace std; int solution(int k, int n) { if(k == 0 || n == 1) { return n; } else { return solution(k, n-1) + solution(k - 1, n); } } int main() { int t; int k, n; cin >> t; for(int i=0; i> k >> n; cout

백준 10250번: ACM호텔[C++]

https://www.acmicpc.net/problem/10250 10250번: ACM 호텔 프로그램은 표준 입력에서 입력 데이터를 받는다. 프로그램의 입력은 T 개의 테스트 데이터로 이루어져 있는데 T 는 입력의 맨 첫 줄에 주어진다. 각 테스트 데이터는 한 행으로서 H, W, N, 세 정수 www.acmicpc.net 코드 #include using namespace std; int main() { int t; int H, W, N; cin >> t; for(int i=0; i> H >> W >> N; if(N % H){ cout

반응형