그리드 값 가져오기
이 문서는 그리드 데이터 구조 내 특정 셀에 값을 설정하는 방법에 대해 설명합니다. 사용하는 방법은 다음과 같습니다.
기본 개념
- 그리드 인덱스:
Create Grid액션에서 반환된 그리드 인덱스를 변수에 저장합니다. - 셀 위치: x축(열)과 y축(행)에서 셀의 위치를 지정합니다. 이 값은 정수여야 합니다.
- 값 설정: 지정한 셀에 넣을 값입니다. 이 값은 유효한 데이터 유형이어야 합니다.
- 타겟 변수: 반환된 셀 값을 저장할 변수로, 임시 로컬 변수로 플래그를 설정할 수 있습니다.
액션 문법
Get Grid Value(grid, x, y, target);
인수 설명
| 인수 | 설명 |
|---|---|
| grid | 값을 가져올 그리드의 인덱스(변수에 저장) |
| x | x축에서 가져올 셀의 위치(열) |
| y | y축에서 가져올 셀의 위치(행) |
| target | 반환 값을 저장할 타겟 변수 |
예제
아래의 액션 블록 코드는 그리드에서 값을 가져와 인스턴스의 위치에 해당하는 전역 변수에 저장합니다. 이 값은 검사되어 인스턴스 ID 값이라면 해당 인스턴스가 파괴되고, 그리드 셀은 noone으로 설정됩니다.
var gridIndex; // 그리드 인덱스를 저장할 변수
var cellX; // x축 셀 위치
var cellY; // y축 셀 위치
var cellValue; // 반환된 값을 저장할 변수
// gridIndex, cellX, cellY 초기화
// 예: gridIndex = 0, cellX = 1, cellY = 2;
Get Grid Value(gridIndex, cellX, cellY, cellValue);
if (cellValue != noone) {
instance_destroy(cellValue); // 인스턴스 파괴
Set Grid Value(gridIndex, cellX, cellY, noone); // 그리드 셀에 noone 설정
}
활용 및 응용 예제
다양한 상황에서 이 방법을 사용할 수 있습니다. 아래는 몇 가지 활용 예시입니다.
1. 게임에서 아이템 수집
플레이어가 특정 위치에서 아이템을 수집할 때, 그리드에서 해당 아이템의 값을 가져와 업데이트할 수 있습니다.
var playerGridIndex = 1; // 플레이어의 그리드 인덱스
var itemX = 3; // 아이템의 x축 위치
var itemY = 4; // 아이템의 y축 위치
var itemValue; // 아이템의 값을 저장할 변수
Get Grid Value(playerGridIndex, itemX, itemY, itemValue);
if (itemValue != noone) {
show_message("아이템을 획득했습니다!");
Set Grid Value(playerGridIndex, itemX, itemY, noone); // 아이템 제거
}
2. 퀘스트 진행
퀘스트 진행 상태를 그리드로 관리할 수 있으며, 특정 셀의 값을 가져와서 퀘스트를 업데이트할 수 있습니다.
var questGridIndex = 2; // 퀘스트의 그리드 인덱스
var questX = 0; // 퀘스트 상태의 x축 위치
var questY = 0; // 퀘스트 상태의 y축 위치
var questStatus; // 퀘스트 상태 저장 변수
Get Grid Value(questGridIndex, questX, questY, questStatus);
if (questStatus == "완료") {
show_message("퀘스트가 완료되었습니다!");
Set Grid Value(questGridIndex, questX, questY, "기타"); // 퀘스트 상태 업데이트
}
이 문서의 내용과 예제를 통해 Get Grid Value 액션을 이해하고 활용함에 있어 많은 도움이 되기를 바랍니다. 추가적으로 필요한 정보가 있다면 언제든지 질문해 주세요!