조회 수 970 추천 수 0 댓글 8
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부

먼저, 객체 지향 프로그래밍(Object Oriented Programming)이란 무엇인가?


 


간단히 말하자면, 클래스를 정의해놓고 그 클래스대로 객체를 찍어내는 방식의 프로그래밍입니다.


가령, 슬라임 클래스에 체력, 공격력, 방어력이 있다고 설정한 후에, 슬라임을 그대로 찍어내는 방식이죠.


 


이 방식의 장점은, 가령 기존에 액션 RPG를 만들 경우, 이벤트 하나를 복사할 때마다 최소 10개 이상의 변수를 직접 바꿔주는 노가다가 필요하였습니다. 그러나 이 방법을 쓸 경우, 하나를 만들어놓고 계속 복사만 하면 끝입니다.


 


예제에서는 빠르게 만드느라 몬스터별로 능력치를 주는 것과 몬스터에게 결정키를 누를 경우 데미지를 받는 루틴 밖에 없으나, 그건 구현자에 따라서 얼마든지 바뀔 수 있는 부분입니다.


 


용어 설명


클래스 : 객체의 설계도를 뜻합니다. 클래스를 정한 대로 찍어냅니다.


객체, 오브젝트, 인스턴스 : 클래스를 기반으로 생성된 실체입니다.


필드 : 각 클래스가 가지는 값을 뜻하는데 예제에서는 체력, 공격력, 방어력이 있겠습니다.


메소드 : 각 클래스가 가지는 함수를 뜻하는데, 예제에서는 데미지 처리가 있겠습니다.


 


자세한 부분은 예제를 참고해주시면 감사하겠습니다.


단순히 설명하자면, 참조 연산(????번호의 변수)을 이용하여 실행된 후에 만들고 싶은 개수만큼 이벤트를 생성하는 방법입니다.

?
  • ?
    Roam 2010.08.02 10:01
    이 문제는 쯰꾸르2k 제작자라면 누구나 해결하고 싶어하는 문제이지만
    이벤트 ID가 연속되어야만 한다는 것이 큰 한계입니다.
    나중에 밸런스를 조절하기 위해 적의 수를 줄여야 할 때 골치아프고
    보물상자 이벤트나, NPD 이벤트, 기타 다른 이벤트를 맵상에 추가할 일이 생긴다면 더 골치아파지죠
    만들기는 쉬우나 관리하기가 상당히 번거로워지는 방법입니다.
  • ?
    Black-☆ 2010.08.02 10:15
    그건.. 최종적으로 완성되었을 때 해결할 수 있는데요. 먼저 그런 몬스터 이외의 이벤트를 십수개 복사 - 붙여넣기 합니다. 그러면 이벤트 아이디가 많이 늘어나 있을텐데요, 이제 제일 이벤트 아이디가 큰 것만 빼고 전부 삭제합니다. 그 후 몬스터를 잘라내기 - 붙여넣기 하면 빈 이벤트 아이디로 채워져있을겁니다. 결론적으로 말하자면 몬스터를 1번부터 놓는게 편하다...가 되겠네요.
  • ?
    Roam 2010.08.02 10:31
    빈 이벤트로 ID를 채우는 해결방법은 아마 2K좀 다뤄본 사람이라면 다 알 겁니다.
    하지만 이벤트 추가좀 하자고 그때마다 빈 이벤트로 맵을 채우면
    최적화에도 문제가 생기고 제작자에게 혼동을 주죠.
    그게 관리의 어려움입니다.
  • ?
    Roam 2010.08.02 10:43
    그리고 같은 종류의 적을 계속 복사하는 경우라면, 복사할때마다 수정해줘야 할 변수는 최소 2개입니다.
    적HP의 게이지바를 만들 경우 1개 더 써서 딱 3개만 수정하면 됩니다.
    수정해야 할 변수가 최소 10개까지 갈 필요는 전혀 없습니다.
  • ?
    Black-☆ 2010.08.02 17:21
    음, 2개만 고치면 된다니 몬스터가 체력밖에 없나요? 아무튼 제가 이런 고급 기법을 겨우 이런 장난감에 적용하려한게 큰 실수였군요.
  • ?
    Roam 2010.08.03 04:45
    같은 몹 복사할때마다 체력 관련된 2개 변수만 수정해주고
    나머지 공격력, 돈, 아이템 등은 커먼이벤트로 관리하면 됩니다.
    커먼이벤트로 그것들을 관리하면 나중에 밸런스 조정이 필요할때도 훨씬 수월하죠.
  • ?
    Roam 2010.08.03 04:52
    어떤 방법이든 추후 수정과 관리의 용이함을 생각하지 않는다면 고급기법도 저질기법이 됩니다.
    추후 수정과 관리를 염두할 필요가 없다면 프로그래머들이 엔진을 만들 이유도 없겠죠.
  • ?
    Iriaroan。 2010.11.16 08:20
    이벤트의 조건분기에 '변수번호의변수'가 없기때문에 돌아가는 방법을 사용하면 이벤트복사붙여넣기만으로도 몹증식이 가능하긴합니다.

    맨윗페이지에 이이벤트의 X,Y좌표를 변수에 대입받고, 대입받은 변수의 좌표에 있는 이벤트 ID를 받아오면 몹번호가 나오겠죠.

    역시이것도 Roam님이 지적하신대로 몹이벤트가 차례로 나열되어야한다는 단점이 있긴 합니다만 [..

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
1004 언어/기타 흥크립트 팁 A. 미스릴 2007.12.30 1585
1003 언어/기타 흠..스토리 짜는 법? Mr.kim 2006.02.12 842
1002 RPG Maker 흠.. 그림의 표시로 던파를 만들어볼까? 예화 2005.10.01 930
1001 언어/기타 흠. 돈을 무제한으로만드는건... 상한굴비 2005.10.05 766
1000 언어/기타 흔한 스토리.. 지겹지 않니? MiNi'M' 2006.01.06 755
999 언어/기타 흐흐응. 끄덕일만한 아이디어. 다크세이버™ 2006.07.09 869
998 언어/기타 후훗.. 피군 2006.08.08 658
997 RPG Maker 후냐.. RPG M2K로 제작한 뽑기입니다.^^ The_cat 2005.10.16 761
996 언어/기타 획기적인 게임 제작 제1편(게임의 전체적인 분위기의 선택) Santiago 2006.12.04 1389
995 언어/기타 확인 dnajs 2006.09.24 423
994 언어/기타 화성학 기초 2 file C코드선생 2009.07.21 1020
993 언어/기타 화면 좌표의 이해와 활용 file CC(虎) 2005.08.18 818
992 언어/기타 호러게임을 만들고 싶다면..? 필기도구 2005.12.10 728
991 언어/기타 허접들의 nwc 다루기 - 멜로디 쓰기 file 예쓰™ 2005.07.12 1298
990 언어/기타 허기와 피로도 『연금술사』 2005.12.27 544
989 언어/기타 항해시대에 들어가는 시스템.(몇가지) Ress 2006.01.06 752
988 언어/기타 항해시대 게임에서의 아이디어 ! 다크세이버™ 2006.01.04 446
987 언어/기타 함정 file 『레드』 2006.07.29 663
986 RPG Maker 한방씩 주고 받는 턴제식 rpg 잠시 30분동안 만들어봣습니다 .ㅋ *YeNa* 2005.12.30 388
985 언어/기타 한국 위키백과를 추천합니다. MrGeek 2006.08.29 408
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 51 Next
/ 51






[개인정보취급방침] | [이용약관] | [제휴문의] | [후원창구] | [인디사이드연혁]

Copyright © 1999 - 2016 INdiSide.com/(주)씨엘쓰리디 All Rights Reserved.
인디사이드 운영자 : 천무(이지선) | kernys(김원배) | 사신지(김병국)