언어/기타
2006.03.22 01:50

알툴 2k 씨리즈 픽쳐 데미지 표시법

조회 수 385 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

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

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
찾아보니 이건 없는것 같더군요.
(너무 기본적인거라서 아무도 쓰지 않은거일지도 =_=;)

2k 씨리즈에서 데미지를 나타내기 위해서는 픽쳐를 이용해야만 합니다.
그 방법에 대해서 간단히 다루어 보겠습니다.

1. 준비물
0 - 9까지의 숫자픽쳐
나타내고자 하는 숫자의 자리수만큼의 변수 + 1 의 변수

2. 숫자의 변수전환
만약 3245라는 숫자를 픽쳐로 나타내기 위해서는 어떻게 해야 할까요?

천의자리가 3일때 3이라는 픽쳐를 뿌려주고
백의자리가 2일때 2라는 픽쳐를 뿌려주고
십의자리가 4일때 4라는 픽쳐를 뿌려주며
일의자리가 5일때 5라는 픽쳐를 뿌려주면 됩니다.

원리는 간단하죠.
그럼 여기서 문제는 "각자리의 숫자를 어떻게 구분해주나" 입니다.
문제는 나눗셈과 승제를 이용하면 간단히 해결됩니다.

천의 자리수를 나타내기 위해 3245를 3으로 바꾸기 위해서는 어떻게 해야 할까요?
3245를 1000으로 나누어 주면 3.245가 나옵니다.
2k 씨리즈의 나눗셈은 소수점 이하는 버림으로 계산되죠.
즉 각 자리의 숫자는 1, 10, 100, 1000 으로 나누어 주면 그 자리의 숫자가 나온다는 것입니다.

그렇다면 백의 자리수를 나타내기 위해서 3245를 2로 바꾸기 위해서는?
3245를 245로 변환한 다음 100으로 나누어주면 답이 나옵니다.
3245를 245로 바꾸어 주기 위해서는 승제를 이용하면 됩니다.
2k에서 승제란 나눈 값의 나머지를 변수에 대입하는 명령어죠.
즉, 3245 를 1000으로 승제하면 245라는 값이 변수에 대입된다는 것입니다.

이런 원리를 이용하면 몇자리의 숫자라도 간단히 나타낼 수 있습니다.
그럼 실제 예를 들어보죠

백자리 숫자를 픽쳐로 나타내기 위해서는?
0001 : 나타내고자 하는 숫자가 대입되어 있는 변수
0002 : 계산을 위한 변수
0003 : 1의자리 픽쳐를 나타내는 변수
0004 : 10의자리 픽쳐를 나타내는 변수
0005 : 100의 자리 픽쳐를 나타내는 변수

여기서 0001의 변수는 변하지 말아야 할 값이니 0002에 대입해서 사용합니다.

/-숫자가 백의 자리를 넘지 않도록 처리
◆조건분기 : 변수[0001]이 999이상
  ◆변수의 조작 : [0001]대입, 999

/-계산을 위한 변수의 대입
◆변수의 조작 : [0002] 대입, 변수[0001]의 값

/- 숫자가 1의 자리일때
◆조건분기 : 변수[0001]이 10보다 작다.
  ◆변수의 조작 : [0003]대입, 변수[0002]의 값
  ◆변수의 조작 : [0004]대입, 0
  ◆변수의 조작 : [0005]대입, 0

/- 숫자가 10의 자리일때
◆조건분기 : 변수[0001]이 100보다 작다.
  ◆변수의 조작 : [0002]나눗셈, 10
  ◆변수의 조작 : [0004]대입, 변수[0002]의 값
  ◆변수의 조작 : [0002]대입, 변수[0001]의 값
  ◆변수의 조작 : [0002]승제, 10
  ◆변수의 조작 : [0003]대입, 변수[0002]의 값
  ◆변수의 조작 : [0005]대입, 0

/- 숫자가 100의 자리일때
◆조건분기 : 변수[0001]이 100 이상이다.
  ◆변수의 조작 : [0002]나눗셈, 100
  ◆변수의 조작 : [0005]대입, 변수[0002]의 값
  ◆변수의 조작 : [0002]대입, 변수[0001]의 값
  ◆변수의 조작 : [0002]승제, 100
  ◆변수의 조작 : [0002]나눗셈, 10
  ◆변수의 조작 : [0004]대입, 변수[0002]의 값
  ◆변수의 조작 : [0002]대입, 변수[0001]의 값
  ◆변수의 조작 : [0002]승제, 10
  ◆변수의 조작 : [0003]대입, 변수[0002]의 값

여기까지 하면 끝입니다.
나머지는 각 변수 0003, 0004, 0005 가 0 - 9일때
각 0 - 9의 숫자 픽쳐를 나타낸다는 조건분기 출력문을 넣어주면 됩니다.
픽쳐의 자리는 나타내고자 하는 대상의 화면 x,y 값을 받아와서 요리해서 띄워주면 되고요.
데미지의 표시라고 했으니 출력된 후 0.5 - 1초 후 그림의 삭제를 넣는것을 잊으시면 안되겠죠.

이 방법은 데미지의 표시뿐 아니라 여러곳에서 많이 쓰일 수 있는 방법입니다.
단점이 있다면... 픽쳐수를 너무 많이 잡아먹는 다는거죠.
액알에 사용할 경우 한 화면에 나타나는 적의 수를 제한하셔야 합니다.

그럼 응용해서 자유롭게 쓰시기 바랍니다.
?

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
1004 RPG Maker 물체 밀어서 움직이는 이벤트 조금 더 쉽게 하는 법 zero? 2018.01.02 644
1003 언어/기타 [마지막 3명 모집] [취업연계무료교육] VR/AR 게임 콘텐츠 전문가 양성 과정 교육생 모집 file 황금상자 2017.07.14 702
1002 RPG Maker rpg vxa 로 겜만들때 데미지 설정 공식[링크] 준E 2017.06.08 740
1001 RPG Maker [꿀팁] 간단하게 만들 수 있는 실시간 전투 시스템 1 file 준E 2017.03.31 2019
1000 언어/기타 JSON parser 변환데이터 저장시 생기는 Object Too Deep 해결하기 title: 댓글러lklslel 2016.12.24 851
999 언어/기타 앙뜨프리너십에서 해커톤 부트캠프 모집중이네요 file 마나님이 2016.11.08 908
998 RPG Maker RPG MV에서 플러그인 오류의 원인에 대하여 1 title: 댓글러lklslel 2016.07.08 2359
997 RPG Maker RPG MV 게임 도중에 윈도우 스킨 파일 자체를 통째로 바꿔버리는 방법 (출처: HIME) 최저 2016.07.08 1627
996 언어/기타 게임의 버전을 짜 보자! - 유의적 버전 2.0.0 Yanggaeng 2016.06.07 1123
995 RPG Maker 텍스트 대화 도중 메뉴 여는 방법을 알아냈습니다! 2 file 정궈니 2016.03.12 2938
994 RPG Maker rpgmv 마우스 지원과 터치 지원이 되니. 2 팡소리 2015.10.25 1011
993 RPG Maker RPG Maker MV 와 AJAX를 이용한 웹통신 관련 영상. 2 HT9MAN 2015.10.25 2246
992 언어/기타 RPG게임 뻔한요소들. 8 title: 천무천무 2015.10.05 1644
991 언어/기타 자바스크립트와 관련해서 참고할 만한 사이트들 3 MARCO 2015.10.04 921
990 언어/기타 꿀잼이군요! 3 사람님[대회참가] 2015.05.20 873
989 RPG Maker [RPG2000/3 팁] 간편한 이벤트 단축키 title: 자게이하앵 2015.04.06 1833
988 RPG Maker [RPG2000/3 팁] 간편한 이벤트 단축키 1 file title: 자게이하앵 2015.04.05 748
987 언어/기타 [강의링크] 대비법칙-색상대비-밀당의 재미 약한 반대색 설계 title: 천무천무 2015.04.02 636
986 언어/기타 오다 주웠습니다. 9 사람님[대회참가] 2015.03.30 917
985 언어/기타 무료 이미지 사이트 Pixabay! 9 file 나작소 2015.03.28 909
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(김원배) | 사신지(김병국)