메뉴 건너뛰기

창작에 관련된 질문이나 간단한 팁, 예제를 올리는 곳

알만툴 액알.
원리가 도저히 이해가 안 갑니다.
그림넣어서 설명해주세요.
그 뭐시기 그냥 근접공격만 일단.
나중가서 원거리를 합시다.
조회 수 :
2673
등록일 :
2008.03.26
02:07:59 (*.47.100.50)
엮인글 :
게시글 주소 :
https://hondoom.com/xe/study/186690

똥똥배

2008.03.28
01:00:22
(*.239.144.2)
그림까지는 못 보여드리겠고 간단히 말로 설명할께요.

일단 주인공 캐릭터와 적 캐릭터가 있습니다.
그리고 투명이고 안 보이는(아니면 공격 효과 애니메이션) 캐릭터 하나가 있습니다.
공격 영역 캐릭터라고 합시다.
이 캐릭터는 일단 이동 불가한 지점같은 구석에 일단 박아두십시오.
보통 0,0을 이동 불가능한 지점으로 만들어 두고 거기에 두는게 가장 편합니다.
이동 가능한 곳에 둘 수도 있는데 그럼 조건식 복잡하니 일단 이동 불가능한 곳에.

이제 주인공의 키 입력을 받았을 때를 처리합니다.
병렬 처리로 하면 좋습니다.
키를 입력 받았을 때 주인공의 방향을 검사한 다음,
위를 보고 있으면 주인공 위에, 아래를 보고 있으면 주인공 아래에...
이런 식으로 방향에 따라서 공격영역 캐릭터의 위치를 설정해줍니다.
이벤트 중에서 캐릭터 위치 설정이란 게 있죠? 그걸로 하시면 됩니다.

이제 또 하나의 병렬 처리가 필요합니다.
적 캐릭터와 그 공격 영역의 좌표를 얻어와서 변수에 넣고
적과 그 공격 영역의 X, Y 좌표가 일치하면 적 캐릭터에게 대미지를 줍니다.
일단은 간단하게 그냥 일시 삭제되게 해버리세요.

그리고 공격한 영역에 계속 그것이 남아있으면 지뢰처럼 되어 버리니
어느 정도 시간이 지나면 다시 0,0으로 보내 줍시다.

일단 처음부터 완벽을 바라지 마시고 일단 적이 공격영역과 부딫쳐 죽어버리는 것 까지 연습해 보세요.

흑곰

2008.04.18
07:38:09
(*.146.136.211)

액알을 알려면 변수를 알아야합니다.

똥똥배님의 설명에 따르면, 변수란 어떤 정보를 넣어두는 공간이라고 보면됩니다.
방이라고 보시면 되요.

Room이요 룸. 방 아시죠?

만약에 'ENEMY_HP' 라는 변수가 있다고 칩시다.
ENEMY_HP 라는 문패가 걸린 방이 있는거라고 생각하세요.

ENEMY_HP, 대입 100  하면  그 방에  100 이라는 숫자가 들어가는 겁니다.

ENEMY_HP, 가산 10 하면 그 방의 숫자에 +10 하는거구요.
가산(加算)의 가는 加(더할 가)입니다.

방 안에 있는 숫자 + 10 이 되는거에요.

만약에 ENEMY_HP 에 30이 대입되어있었는데,
ENEMY_HP, 가산 5 하면 변수값이 35가 되는 거구요.

거기에 또 ENEMY_HP 가산 10 하면 45가 되겠죠.

대입은 =
가산은 +
감산은 -

이렇게 보시면 되고 나머지는 별로 안쓰입니다. 어쨋건 변수를 알면 액알 만들기는 제법 순탄하게 되지요.

기본원리는
주인공이 처음 필드에 나설 때 ENEMY_HP에 300을 대입하고,
ENEMY_HP값이 0보다 크면 적을 표시하게 해둡니다.

그리고 주인공이 적을 때릴 때 마다 30씩 감산시키게 해둡니다.

그럼 적은 10대 맞으면 ENEMY_HP 값이 0 이 되죠?

앞에서 ENEMY_HP 값이 0 보다  클 때 적을 표시하게 해뒀다고 했으니까
적은 화면에서 사라집니다.

흑곰

2008.04.18
07:45:37
(*.146.136.211)
액알을 만드는 법에 대해서는 똥똥배님이 설명해주셨으니
전 변수에 대해서만 설명하고 물러갑니다ㅋ

열심히 하세요
List of Articles
번호 제목 글쓴이 날짜 조회 수
185 Bootstrap4 container class가 적용된 div의 양 옆에 설정하지 않은 margin이 생김 노루발 2024-02-07 662
184 express.js 세션 적용 후 리다이렉트 시 세션 적용이 제대로 안 되는 문제점 노루발 2024-02-07 554
183 illegal character 방지 [3] 노루발 2023-07-17 746
182 Lua-love2d TCP 통신 [1] 노루발 2023-07-14 737
181 PHP로 웹게임 만드는 영상 [1] 노루발 2021-06-25 1554
180 팁 certbot을 이용한 HTTPS 인증서 발급 및 적용 노루발 2021-01-12 686
179 Love2d 게임 안드로이드로 패키징하기 노루발 2021-01-11 703
178 팁 자동화된 Lua 스크립트의 문서화 - LDoc 노루발 2021-01-11 44086
177 팁 리캡챠 적용 [1] 노루발 2021-01-08 699
176 팁 Oracle cloud에 Nginx/MariaDB 설치하기 노루발 2020-12-06 689
175 팁 Love2d로 만든 로그라이크 예제 노루발 2020-11-30 978
174 팁 Love2d 이미지 하얗게 그리기 노루발 2020-11-23 657
173 팁 루아 스타일 가이드 노루발 2020-11-19 707
172 팁 턴 기반 시스템 구현에 대한 글 [4] 노루발 2020-11-14 1266
171 팁 이쁜 눈나가 유니티 개발 알려주는 재생목록 노루발 2020-11-12 665
170 팁 love2d에서 안드로이드 터치 제스처 인식하기 노루발 2020-11-12 645
169 팁 특정좌표를 기준으로 zoom in/zoom out하기 노루발 2020-11-11 720
168 팁 Lua 클래스 만들고 활용하기 노루발 2020-11-06 654
167 팁 Lua 테이블 안에 함수 저장하기 노루발 2020-11-06 651
166 팁 Lua 인수로 nil값이 들어왔을 경우 처리하기 노루발 2020-11-06 697