디시인사이드 갤러리

마이너 갤러리 이슈박스, 최근방문 갤러리

갤러리 본문 영역

[💬일반] [정보글] 알만툴 VX ACE로 그림 기능을 이용해서 간단한 탄막 만들기

vertex갤로그로 이동합니다. 2024.05.18 22:19:17
조회 262 추천 10 댓글 3
														



알만툴 VX ACE로 그림 기능을 이용해서 간단한 탄막을 만드는 방법을 설명하는 글이에요


그리고 저도 알만툴을 완벽하게 알고있는건 아니라 제가 알고있는 범위 안에서만 쓰는 글이에요


또 위에 올려놓은 1편에서 이어지는 글이라 1편에서 설명했던 내용은 알고 있다고 가정하고 쓰는 글이에요




https://forums.rpgmakerweb.com/index.php?threads/script-call-collection-for-vxace.25759/#entry247427

 


위의 링크로 들어가면 알만툴 이벤트 명령어들의 스크립트를 볼 수 있어요





1. 내부 판별 함수


ㅡㅡㅡㅡㅡ

def inside(x,y,r,l,t,b)

if (x>r || x<l) || (y<t || y>b) 

return 0

else

return 1

end

end

ㅡㅡㅡㅡㅡ



이건 Ruby프로그래밍 언어로 정의한 내부 판별 함수에요


inside(x,y,r,l,t,b)에 입력한 xy값이 각각 입력한 r l t b, 즉 오른쪽, 왼쪽, 위쪽, 아래쪽 안에 있으면 1을 출력하고


만약 그 범위를 벗어났다면 0을 출력하는 함수에요


이건 탄이 화면 안에 있는지 없는지를 판별해서, 만약 탄이 화면을 벗어났다면 제거할때 쓰이는 함수에요





2. 배열 기능의 설명



여기서는 탄막을 만들때에 배열 기능을 사용했어요


배열은


$bullet = Array.new


이런 식으로 생성할수 있어요, 이건 $bullet이라는 빈 배열을 만든다는 뜻이에요



그리고 배열의 각각의 요소는 해당 인덱스로 가져올수 있어요


예를들어 $bullet = [1,2,3] 의 배열이 있다면


여기서 $bullet[0]은 1이고 $bullet[1]은 2에요, 이런식으로 인덱스는 첫번째가 0부터 시작해요




그리고 $bullet =[[1,2],[3,4]]이런식으로 이중으로 배열을 사용할수도 있어요


이러면$bullet[0][0]이 1이되는 방식이에요



그리고 여기서는 탄막을 만들때, $bullet 이라는 배열에 [x,y,v,a] 형식으로 요소를 넣어요


x y 는 각각 탄의 현재 x y 좌표고, v는 속도, a는 각도에요




즉, 예를들어서 100,100 지점에 2속도의 15각도의 탄을 발사하고 싶으면


$bullet.push([100,100,2,15]) 이렇게 배열에 요소를 넣어요


.push()는 해당 배열에 요소를 넣는 명령어에요




그리고 배열의 해당 인덱스에 요소가 없으면, 그 값은 nil이에요


예를들어서 $bullet=[1,2,3] 배열에서 $bullet[3]은 nil이에요, 값이 없다는 뜻이에요





3. 탄막의 작동 함수



ㅡㅡㅡㅡㅡ

def game_1()


#1

i=0

while $bullet[i] != nil

$bullet[i][0] += $bullet[i][2]*Math.cos($bullet[i][3])

$bullet[i][1] += $bullet[i][2]*Math.sin($bullet[i][3])

i+=1

end


#2

i=0

while $bullet[i] != nil

if inside($bullet[i][0],$bullet[i][1],544+50,0-50,0-50,416+50) == 0

$bullet.delete_at(i)

else

i+=1

end 

end


#3

image_show = 1

i=0

while $bullet[i] != nil

image_show +=1

screen.pictures[image_show].show("picture2",1,$bullet[i][0], $bullet[i][1], 100, 100, 255, 0)

i+=1

end


#4

if $image_number > image_show 

for k in image_show +1..$image_number do

screen.pictures[k].erase

end

end

$image_number = image_show 


end

ㅡㅡㅡㅡㅡ




위에 올려놓은 함수가 탄막을 작동시키는 함수에요 game_1() 명령어로 사용할수 있어요


탄막을 발사하려면 $bullet.push([x,y,v,a])형식으로 배열에 요소를 넣으면 되요


위의 함수에서 #1 부분이 탄을 속도와 각도만큼 이동시키는 부분이고


#2가 탄이 화면 밖으로 나가면 제거하는 부분이고


#3이 배열의 갯수만큼 2번부터 탄들의 해당 좌표에 이미지를 표시해주는 부분이에요


그리고 #4 부분은 현재 탄의 갯수보다 많은 수의 이미지들이 표시되고 있다면 해당 이미지들을 제거해주는 부분이에요




3db4d332f0c03df420afd8b236ef203e87c3ac85d2


그리고 이게 위의 함수에서 사용되는 이미지에요 "picture2"라는 이름이고, 16x16 크기에요



7cf3c028e2f206a26d81f6e14787776d94



이게 인게임 프로젝트의 화면이에요




7ff3c028e2f206a26d81f6e644837269aa



이게 첫번째 이벤트에요


$bullet = Array.new

$image_number = 0


에서 첫번째는 탄막의 배열을 새로 생성하는거고


두번째는 탄막을 작동시키는 함수에서 현재 이미지의 갯수로 사용하는 변수를 생성하는거에요




그리고 그 아래의 루프로 반복되는


game_1()


부분이, 위에서 설명한 탄막을 작동시키는 함수에요



7ef3c028e2f206a26d81f6e644817c6eda




이건 두번째 이벤트에요, 탄막을 발사하는 부분이에요


a = rand()*360

for i in 1..60 do

$bullet.push([272,104,2,(a+i*6)*(Math::PI/180)])

end


여기서는 60프레임마다 위의 내용을 반복해요, 랜덤한 각도로 60개의 탄막을 2의 속도로 발사하는거에요



79f3c028e2f206a26d81f6e147837665c4



그리고 이게 인게임에서 함수를 정의한 부분이에요, 저 (Insert here)부분에 위에 올려놓은 2개의 함수를 넣어놓았어요







그리고 이런식으로 하면 위의 영상에 나오는것처럼 탄막을 만들수 있어요



추천 비추천

10

고정닉 2

댓글 영역

전체 댓글 0
등록순정렬 기준선택
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 말머리 제목 글쓴이 작성일 조회 추천
2907 설문 사이버 렉카로 가장 피해 입은 것 같은 스타는? 운영자 24/07/22 - -
2898 AD [AFK: 새로운 여정] 사전예약 진행 중! 운영자 24/07/18 - -
2909 AD [메이플스토리M] 신규 캐릭터 에릴 라이트 업데이트 운영자 24/07/25 - -
4691 공지 국산 상업용 알만툴 게임 정리 1 [8] 알갤러(222.237) 23.10.15 2859 30
3364 공지 알만툴 마이너 갤러리 공지 [6] XP기본타이틀갤로그로 이동합니다. 22.09.11 2408 30
4120 공지 [자주 묻는 질문] 뉴빈데 알만툴 뭐 사야할까요? [16] XP기본타이틀갤로그로 이동합니다. 23.05.17 6506 42
5888 💬일반 알만툴에 입문하고 큰 교훈을 얻었음... 나는에슈르가좋아요갤로그로 이동합니다. 05:12 31 0
5887 🎨제작 추가적인 게임 제작 진행 상황 공유합니다! [1] ㅇㅇ갤로그로 이동합니다. 03:37 43 4
5886 ❓질문 영상보는데 이렇게 만드는 법 있나요? [3] 알갤러(221.159) 07.26 58 0
5885 🎨제작 미래의 잊히어진 꿈 재개발 시작 하였습니다 [5] 노마리갤로그로 이동합니다. 07.26 61 7
5884 ❓질문 mz인데 클릭할때 하얀색 사각형이 뜨는 걸 없애는 방법 없을까요? [13] 알갤러(221.159) 07.26 119 0
5883 💬일반 쯔꾸르 RPG '하츠카' BIC 부스 전시! [2] 알갤러(220.78) 07.26 91 5
5882 💬일반 뉴비들은 무조건 xp로 해라 [5] ㅇㅇ(114.200) 07.26 114 2
5881 💬일반 2k 쓰는 사람들은 눈이 좋은거 맞지? [1] 구구(39.116) 07.26 45 0
5880 🎮완성 Turbo the Snail - 국제수학올림피아드 문제가 게임으로! 알갤러(222.109) 07.26 83 2
5879 💬일반 rpg maker 95 너무 좋다 [1] 알갤러(223.39) 07.26 44 1
5878 💬일반 MV 화면확대시 마우스 문제 알갤러(118.34) 07.26 47 0
5876 💬일반 mz 쓰는데 플레이테스트 하려니까 자꾸 오류가 나요 [5] 알갤러(125.135) 07.25 75 0
5875 ❓질문 (해결됨) 코르도바 안드로이드 세팅 중 오류... [1] 알갤러(210.183) 07.25 86 1
5874 💬일반 2k에서 빌드파일에 rtp 내장하는법 있음? [1] 알갤러(223.39) 07.25 47 1
5873 💬일반 요즘 갑자기 유입이 많네 [4] 알갤러(119.69) 07.24 142 1
5872 💬일반 RPG maker vx 상태 아이콘이 안떠요 [1] 알갤러(180.69) 07.24 55 1
5871 ❓질문 [VX Ace] 패럴랙스 맵핑에 관하여 [1] 늙은물갤로그로 이동합니다. 07.24 77 1
5870 ❓질문 rpg xp 뉴비 질문 있는데요... [1] 알갤러(121.152) 07.24 68 1
5869 ❓질문 장비 유형 추가할 때 나타나는 오류 해결방법? [2] 알갤러(49.165) 07.24 64 1
5868 💬일반 이거 어케하는 거임? ㅇㅇ(180.71) 07.24 73 2
5867 ❓질문 캐릭터 비율 못바꿈?? [2] 블부이(121.156) 07.24 102 1
5866 💬일반 안드로이드 말고 ios 구동할 때 쓰는 어플 있나요? 알갤러(118.235) 07.24 31 1
5865 ❓질문 인게임에서 2배로 확대하는 법 없나요 [2] 알갤러(223.39) 07.24 86 1
5864 ❓질문 rpg 2000으로 만들어진 게임 한글화 ㅇㅇ(211.234) 07.23 89 1
5863 ❓질문 mv 전투 중 스크립트 질문입니다. [1] 알갤러(220.94) 07.23 76 2
5862 🎨제작 만든 맵 모아보기 [8] 알갤러(59.29) 07.23 220 13
5861 🎮완성 뉴비.. 게임 완성했읍니다.. (Absolute Zero) [5] 고냉이(112.172) 07.22 262 11
5860 ❓질문 MV에서 털썩 쓰러지는 효과음 어떻게 내는지 아는 사람있음? [6] 반물질반바지갤로그로 이동합니다. 07.22 169 1
5859 ❓질문 초보인데 한번만진짜대답해주세요ㅜㅜㅜㅜㅠ [11] 알갤러(125.135) 07.22 235 1
5858 ❓질문 500*500 이미지 여러개를 한번에 칩셋으로 바꾸는 프로그램 찾습니다 알갤러(61.73) 07.21 71 1
5857 ❓질문 vx ace 타일 mv로 변환하는 거 사이트가 있나요? [2] 알갤러(61.43) 07.21 92 1
5856 ❓질문 저번에 질문 많이 했던 뉴비입니다. 계획 및 질문입니다. [6] 알갤러(220.94) 07.21 138 3
5855 💬일반 파티가 5명일때 전투들어가면 4명만 전투하잖아 [2] 알갤러(58.238) 07.21 153 1
5854 📊팁 MV의 속성과 효과에 대한 글을 써봤습니다 [6] 시낵스갤로그로 이동합니다. 07.20 134 4
5853 ❓질문 플러그인이 사용하는 노트 영역이 겹치면 어떻게함? [1] ㅇㅇ(223.39) 07.20 84 1
5852 💬일반 뉴비 페럴렉스 맵핑하는데 [4] 알갤러(39.121) 07.19 180 2
5851 ❓질문 이건 왜이럴까 [3] 설오갤로그로 이동합니다. 07.19 184 2
5850 ❓질문 파티원 수 늘리는법 질문 [5] 피퍼(114.200) 07.19 124 1
5849 💬일반 아이템이나 스위치 변수 정렬하는것도 일이네 [3] ㅇㅇ(223.39) 07.19 89 1
5848 💬일반 알만툴 뉴비 오늘부터 게임 만들어볼려고 [1] ㅇㅇ갤로그로 이동합니다. 07.19 154 2
5847 ❓질문 특정 전투에서만 특정 스킬 유형을 개방하는 법은 없나? [4] 반물질반바지갤로그로 이동합니다. 07.19 116 1
5846 🎨제작 알뉴비가 제작 중인 RPG, 미스트월드의 프롤로그 파트입니다. [10] Fallen갤로그로 이동합니다. 07.19 316 12
5845 ❓질문 창문이 왜 이렇게 붙냐 [3] 산드로볼타(114.200) 07.18 157 1
5844 🎮체험 병문안 미완성 알갤러(112.165) 07.18 130 2
5843 💬일반 3일걸려서 드디어 MV버전 무료 템합성 플러그인 찾았다 ㅇㅇ(223.39) 07.18 96 6
5842 💬일반 참 일본산 쯔꾸르 게임 하다 보면 ㅇㅇ(125.176) 07.18 154 1
5841 💬일반 머리에 쥐남 [4] 엉엉님(118.235) 07.18 173 1
5840 ❓질문 MV 아이템 합성 무료 플러그인 쓸만한거 없음? [2] ㅇㅇ(223.39) 07.17 123 1
5839 💬일반 네가죽어 같은 터치형 인터페이스 게임 [7] 알갤러(116.122) 07.17 169 1
5838 ❓질문 아이템 옵션이 랜덤으로 드롭되게하는 플러그인은없나? [5] ㅇㅇ(211.235) 07.17 112 1
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

뉴스

디시미디어

디시이슈

1/2