디시인사이드 갤러리

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

갤러리 본문 영역

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

vertex갤로그로 이동합니다. 2024.05.18 22:19:17
조회 234 추천 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
등록순정렬 기준선택
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 말머리 제목 글쓴이 작성일 조회 추천
2872 설문 연예인 안됐으면 어쩔 뻔, 누가 봐도 천상 연예인은? 운영자 24/06/17 - -
4691 공지 국산 상업용 알만툴 게임 정리 1 [8] 알갤러(222.237) 23.10.15 2591 29
3364 공지 알만툴 마이너 갤러리 공지 [5] XP기본타이틀갤로그로 이동합니다. 22.09.11 2280 28
4120 공지 [자주 묻는 질문] 뉴빈데 알만툴 뭐 사야할까요? [16] XP기본타이틀갤로그로 이동합니다. 23.05.17 5675 42
5712 ❓질문 아래 질문 이미지 가져와서 다시 질문할게 [3] 코코나교관님갤로그로 이동합니다. 06.19 64 2
5711 ❓질문 MZ/MV 플러그인 이런거 잇는지 질문해도됨? [4] 코코나교관님갤로그로 이동합니다. 06.19 54 1
5710 💬일반 너희들은 과거가 낫냐 지금이 낫냐? [1] 알갤러(119.69) 06.19 76 0
5709 🎨제작 인디게임 제작툴 RPG Developer Bakin 번역 모집 궤짝갤로그로 이동합니다. 06.19 90 7
5708 📊제작 타이틀 멋지게 꾸미기 강좌 [6] 노마리갤로그로 이동합니다. 06.19 146 7
5707 ❓질문 이거 화면이 흔들리는 그런건 어케 함? [8] ㅇㅇ(59.20) 06.18 122 1
5706 💬일반 드디어... 끝이 보인다...! ㅇㅇ갤로그로 이동합니다. 06.18 56 0
5705 💬일반 직접 알만툴 게임을 만들어볼수 있는 알만툴게임 [1] vertex갤로그로 이동합니다. 06.18 137 7
5704 ❓질문 알만툴mv쓰고있는데 캐릭터 대화창? 질문 [3] 뉴비날다(223.38) 06.18 99 0
5703 💬일반 캐릭터 선택 창 어케 만들지 [2] 유준갤로그로 이동합니다. 06.18 110 0
5702 ❓질문 이거 갖고계신분 있나요 [1] 산드로볼타(114.200) 06.18 80 0
5701 💬일반 겜 맵 제작 gpt로 만드는 사람 있어? [4] 알갤러(14.50) 06.17 189 0
5700 💬일반 특정 전투에서만 도망이 무조건 성공하게 하려면 어떻게 해야할까? [1] 반물질반바지갤로그로 이동합니다. 06.17 96 0
5699 🗣️소 용궁배 알만툴 대제전 - 세번째 부문 일부 공개! 알갤러(180.68) 06.17 88 3
5698 💬일반 던전 유기하니까 마음이 편하다 ㅇㅇ갤로그로 이동합니다. 06.17 70 1
5697 💬일반 XP 시절 병맛게임 많이 해봐서 그런가 [3] ㅇㅇ갤로그로 이동합니다. 06.16 136 7
5696 ❓질문 XP 한글패치 어떻게 해야됨?......... [2] 알갤러(119.192) 06.16 74 0
5695 📊제작 알만툴 MV 8방향 이동 및 픽셀 이동 하는 방법 [1] 노마리갤로그로 이동합니다. 06.16 100 5
5691 💬일반 rpg maker 95 쓰는 사람 아무도 없냐 [2] 알갤러(223.39) 06.15 129 1
5690 ❓질문 mv 대화창 캐릭터 [3] 피퍼(114.200) 06.15 185 0
5689 💬일반 아악 던전 걍 유기마렵네 [6] ㅇㅇ갤로그로 이동합니다. 06.14 155 0
5688 💬일반 취미로는 알만툴만한게 없긴함 [2] ㅇㅇ(122.43) 06.14 292 11
5687 ❓질문 알만툴 다른 컴퓨터로 어떻게 옮기나요 [3] 알갤러(211.235) 06.14 134 0
5686 ❓질문 그런데 모두 전투매뉴 커스텀은 어떻게 하는거야? [5] ㅇㅇ(121.135) 06.14 140 1
5685 💬일반 그림 디엠의 모험록 하고 울었다. [5] ㅇㅇ(211.193) 06.14 272 11
5684 💬일반 탄막스테이지(彈幕Stage) 다운로드링크+플레이영상 vertex갤로그로 이동합니다. 06.14 101 8
5683 ❓질문 mv 8방향 이동 [4] 산드로볼타(114.200) 06.13 134 0
5681 ❓질문 적이 평타 쓸때마다 파워업 2 애니메이션을 지한테 재생하는데 [2] 반물질반바지갤로그로 이동합니다. 06.13 81 0
5680 💬일반 옛날과 다르게 인디게임 개발 환경이 [7] ㅇㅇ(45.94) 06.13 248 8
5679 ❓질문 전투메뉴 바꿀려고 하는데 이 코드만 어딨는지 아는 사람있음? [3] ㅇㅇ(121.135) 06.13 114 0
5678 💬일반 아라 펠이라는 2K JRPG 아는사람 [2] ㅇㅇ(211.193) 06.13 89 0
5677 ❓질문 특정 타일이 인게임에서만 안보이는데 뭐가 문제지? [3] 반물질반바지갤로그로 이동합니다. 06.13 75 0
5675 ❓질문 전투 메뉴 수정 관련해서 질문좀 [5] ㅇㅇ(121.135) 06.12 185 0
5674 ❓질문 mv 전투관련 질문있어요 [2] 알갤러(1.223) 06.12 98 1
5673 🗣️소 [그랑기뇨르 서바이벌]챕터 2 제작 근황을 올려봅니다. [2] 프랑도르갤로그로 이동합니다. 06.12 196 10
5672 💬일반 던전을 9개를 만들어야하는데 이제 2개만듬 [2] ㅇㅇ갤로그로 이동합니다. 06.12 123 1
5671 💬일반 bakin은 써본사람있냐 ㅇㅇ(223.39) 06.12 110 1
5670 💬일반 알만툴 mv 강의해주실 분 구해봅니다. 페이 드립니다. [11] 알갤러(121.184) 06.12 188 1
5669 💬일반 틀딱 아조시 행복하다 [2] 알갤러(1.221) 06.12 151 2
5668 ❓질문 mv에서 아이템 카테고리를 비활성화 하는 방법은 없을까 [2] 알갤러(211.172) 06.12 109 0
5667 🎨제작 픽쳐로 만든 다이얼? 자물쇠 시낵스갤로그로 이동합니다. 06.12 86 0
5666 ❓질문 VX Ace쓰는데 줌 인 줌 아웃하는 스크립트 어떻게 사용하나요? [4] ㅇㅊㅂ갤로그로 이동합니다. 06.11 101 0
5665 📊제작 세세하게 이동속도를 조절하는 방법 [2] 노마리갤로그로 이동합니다. 06.11 188 10
5664 💬일반 세월이 흐를수록 시대의 존재가 사라진 느낌이다 [5] ㅇㅇ(122.43) 06.11 241 4
5663 ❓질문 mv 그림자 자동생성 끄는 방법 없음? [2] 반물질반바지갤로그로 이동합니다. 06.11 106 0
5662 💬일반 질문은 있는데 답변만 삭제된경우는 뭐냐 [2] ㅇㅇ(126.33) 06.11 124 1
5661 ❓질문 타이틀 버튼 어떻게 바꾸나요? [1] 알갤러(39.121) 06.10 125 1
5660 💬일반 직접 그림이랑 도트 그리는 사람들 존경한다 진짜 [2] 알갤러(59.22) 06.10 219 1
5659 💬일반 유나이트 쓰시는 분 업나영 [3] 알갤러(223.39) 06.10 132 1
5658 ❓질문 이거 커스텀 스탯 만드는데 도움되는 영상이나 글은 없나? [3] ㅇㅇ(121.135) 06.10 122 3
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

뉴스

디시미디어

디시이슈

1/2