GS2-Quest 스크립트 트리거 레퍼런스
확장 스크립트를 호출하는 이벤트 트리거의 레퍼런스
트리거
startQuest
동기 실행 스크립트
처리 전에, 스크립트가 동기 실행됩니다.
Request
| 타입 | 설명 | |
|---|---|---|
| namespace | Namespace | 네임스페이스 |
| questGroupModel | QuestGroupModel | 퀘스트 그룹 모델 |
| questModel | QuestModel | 퀘스트 모델 |
| randomSeed | long | 난수 시드 |
| rewards | Reward[] | 퀘스트로 얻을 수 있는 보상 리스트 |
| userId | string | 사용자ID |
| config | Config[] | 트랜잭션 변수에 적용할 설정값 |
Result
| 타입 | 필수 | 기본값 | 값 제한 | 설명 | |
|---|---|---|---|---|---|
| permit | bool | ✓ | 퀘스트 시작을 허용할지 여부 | ||
| overrideRandomSeed | long | 0 ~ 9223372036854775805 | 난수 시드 | ||
| overrideRewards | Reward[] | 0 ~ 1000 items | 퀘스트로 얻을 수 있는 보상 리스트 |
구현 예제
-- Request
local namespace = args.namespace
local questGroupModel = args.questGroupModel
local questModel = args.questModel
local randomSeed = args.randomSeed
local rewards = args.rewards
local userId = args.userId
local config = args.config
-- Business logic:
local permit = true
local overrideRandomSeed = 0
local overrideRewards = {}
-- Result
result = {
permit=permit,
overrideRandomSeed=overrideRandomSeed,
overrideRewards=overrideRewards
}비동기 실행 스크립트
처리 후에, 스크립트가 비동기 실행됩니다.
Request
| 타입 | 설명 | |
|---|---|---|
| namespace | Namespace | 네임스페이스 |
| questGroupModel | QuestGroupModel | 퀘스트 그룹 모델 |
| questModel | QuestModel | 퀘스트 모델 |
| progress | Progress | 퀘스트 진행 상황 |
| config | Config[] | 트랜잭션 변수에 적용할 설정값 |
구현 예제
-- Request
local namespace = args.namespace
local questGroupModel = args.questGroupModel
local questModel = args.questModel
local progress = args.progress
local config = args.config
-- 비동기 스크립트는 일반적으로 API 응답에 영향을 주지 않습니다.
-- 로그 출력이나 분석, 외부 알림 등에 사용됩니다.
result = {
}completeQuest
동기 실행 스크립트
처리 전에, 스크립트가 동기 실행됩니다.
Request
| 타입 | 설명 | |
|---|---|---|
| namespace | Namespace | 네임스페이스 |
| questGroupModel | QuestGroupModel | 퀘스트 그룹 모델 |
| questModel | QuestModel | 퀘스트 모델 |
| rewards | Reward[] | 퀘스트로 얻은 보상 리스트 |
| progress | Progress | 퀘스트 진행 상황 |
| config | Config[] | 트랜잭션 변수에 적용할 설정값 |
Result
| 타입 | 필수 | 기본값 | 값 제한 | 설명 | |
|---|---|---|---|---|---|
| permit | bool | ✓ | 퀘스트 클리어를 허용할지 여부 | ||
| overrideRewards | Reward[] | 0 ~ 1000 items | 퀘스트로 얻을 수 있는 보상 리스트 |
구현 예제
-- Request
local namespace = args.namespace
local questGroupModel = args.questGroupModel
local questModel = args.questModel
local rewards = args.rewards
local progress = args.progress
local config = args.config
-- Business logic:
local permit = true
local overrideRewards = {}
-- Result
result = {
permit=permit,
overrideRewards=overrideRewards
}비동기 실행 스크립트
처리 후에, 스크립트가 비동기 실행됩니다.
Request
| 타입 | 설명 | |
|---|---|---|
| namespace | Namespace | 네임스페이스 |
| questGroupModel | QuestGroupModel | 퀘스트 그룹 모델 |
| questModel | QuestModel | 퀘스트 모델 |
| rewards | Reward[] | 퀘스트로 얻은 보상 리스트 |
| progress | Progress | 퀘스트 진행 상황 |
| config | Config[] | 트랜잭션 변수에 적용할 설정값 |
구현 예제
-- Request
local namespace = args.namespace
local questGroupModel = args.questGroupModel
local questModel = args.questModel
local rewards = args.rewards
local progress = args.progress
local config = args.config
-- 비동기 스크립트는 일반적으로 API 응답에 영향을 주지 않습니다.
-- 로그 출력이나 분석, 외부 알림 등에 사용됩니다.
result = {
}failedQuest
동기 실행 스크립트
처리 전에, 스크립트가 동기 실행됩니다.
Request
| 타입 | 설명 | |
|---|---|---|
| namespace | Namespace | 네임스페이스 |
| questGroupModel | QuestGroupModel | 퀘스트 그룹 모델 |
| questModel | QuestModel | 퀘스트 모델 |
| rewards | Reward[] | 퀘스트로 얻은 보상 리스트 |
| progress | Progress | 퀘스트 진행 상황 |
| config | Config[] | 트랜잭션 변수에 적용할 설정값 |
Result
| 타입 | 필수 | 기본값 | 값 제한 | 설명 | |
|---|---|---|---|---|---|
| permit | bool | ✓ | 퀘스트 실패를 허용할지 여부 | ||
| overrideRewards | Reward[] | 0 ~ 1000 items | 퀘스트로 얻을 수 있는 보상 리스트 |
구현 예제
-- Request
local namespace = args.namespace
local questGroupModel = args.questGroupModel
local questModel = args.questModel
local rewards = args.rewards
local progress = args.progress
local config = args.config
-- Business logic:
local permit = true
local overrideRewards = {}
-- Result
result = {
permit=permit,
overrideRewards=overrideRewards
}비동기 실행 스크립트
처리 후에, 스크립트가 비동기 실행됩니다.
Request
| 타입 | 설명 | |
|---|---|---|
| namespace | Namespace | 네임스페이스 |
| questGroupModel | QuestGroupModel | 퀘스트 그룹 모델 |
| questModel | QuestModel | 퀘스트 모델 |
| rewards | Reward[] | 퀘스트로 얻은 보상 리스트 |
| progress | Progress | 퀘스트 진행 상황 |
| config | Config[] | 트랜잭션 변수에 적용할 설정값 |
구현 예제
-- Request
local namespace = args.namespace
local questGroupModel = args.questGroupModel
local questModel = args.questModel
local rewards = args.rewards
local progress = args.progress
local config = args.config
-- 비동기 스크립트는 일반적으로 API 응답에 영향을 주지 않습니다.
-- 로그 출력이나 분석, 외부 알림 등에 사용됩니다.
result = {
}