GS2-Mission Script Trigger Reference
Reference of event triggers that call extended scripts
Trigger
missionComplete
Mission accomplishment
Synchronous Execution Script
The script is executed synchronously before the mission accomplishment process.
Request
| Type | Description | |
|---|---|---|
| namespace | Namespace | Namespace |
| missionGroupModel | MissionGroupModel | Mission Group |
| oldComplete | Complete | Completion Status before completion |
| newComplete | Complete | Completion Status after completion |
| completeTaskNames | [] | List of completed task names |
Result
| Type | Required | Default | Value Limits | Description | |
|---|---|---|---|---|---|
| permit | bool | ✓ | Whether to allow mission accomplishment |
Implementation Example
-- Request
local namespace = args.namespace
local missionGroupModel = args.missionGroupModel
local oldComplete = args.oldComplete
local newComplete = args.newComplete
local completeTaskNames = args.completeTaskNames
-- Business logic:
local permit = true
-- Result
result = {
permit=permit
}Asynchronous Execution Script
The script is executed asynchronously after the mission accomplishment process.
Request
| Type | Description | |
|---|---|---|
| namespace | Namespace | Namespace |
| missionGroupModel | MissionGroupModel | Mission Group |
| complete | Complete | Completion Status |
| completeTaskNames | [] | List of completed task names |
Implementation Example
-- Request
local namespace = args.namespace
local missionGroupModel = args.missionGroupModel
local complete = args.complete
local completeTaskNames = args.completeTaskNames
-- Asynchronous scripts typically do not affect the API response.
-- Use for logging, analytics, external notifications, etc.
result = {
}counterIncrement
Counter increments
Synchronous Execution Script
The script is executed synchronously before the counter increments process.
Request
| Type | Description | |
|---|---|---|
| namespace | Namespace | Namespace |
| counterModel | CounterModel | Counter Model |
| oldCounter | Counter | Before Counter |
| newCounter | Counter | After Counter |
Result
| Type | Required | Default | Value Limits | Description | |
|---|---|---|---|---|---|
| permit | bool | ✓ | Whether to allow counter increments |
Implementation Example
-- Request
local namespace = args.namespace
local counterModel = args.counterModel
local oldCounter = args.oldCounter
local newCounter = args.newCounter
-- Business logic:
local permit = true
-- Result
result = {
permit=permit
}Asynchronous Execution Script
The script is executed asynchronously after the counter increments process.
Request
| Type | Description | |
|---|---|---|
| namespace | Namespace | Namespace |
| counterModel | CounterModel | Counter Model |
| counter | Counter | Counter |
Implementation Example
-- Request
local namespace = args.namespace
local counterModel = args.counterModel
local counter = args.counter
-- Asynchronous scripts typically do not affect the API response.
-- Use for logging, analytics, external notifications, etc.
result = {
}receiveRewards
Receive reward
Synchronous Execution Script
The script is executed synchronously before the receive reward process.
Request
| Type | Description | |
|---|---|---|
| namespace | Namespace | Namespace |
| missionGroupModel | MissionGroupModel | Mission Group |
| oldComplete | Complete | Completion Status before update |
| newComplete | Complete | Completion Status after update |
| receiveRewardTaskNames | [] | List of task names to receive rewards |
Result
| Type | Required | Default | Value Limits | Description | |
|---|---|---|---|---|---|
| permit | bool | ✓ | Whether to allow receive reward |
Implementation Example
-- Request
local namespace = args.namespace
local missionGroupModel = args.missionGroupModel
local oldComplete = args.oldComplete
local newComplete = args.newComplete
local receiveRewardTaskNames = args.receiveRewardTaskNames
-- Business logic:
local permit = true
-- Result
result = {
permit=permit
}Asynchronous Execution Script
The script is executed asynchronously after the receive reward process.
Request
| Type | Description | |
|---|---|---|
| namespace | Namespace | Namespace |
| missionGroupModel | MissionGroupModel | Mission Group |
| complete | Complete | Completion Status |
| receiveRewardTaskNames | [] | List of task names to receive rewards |
Implementation Example
-- Request
local namespace = args.namespace
local missionGroupModel = args.missionGroupModel
local complete = args.complete
local receiveRewardTaskNames = args.receiveRewardTaskNames
-- Asynchronous scripts typically do not affect the API response.
-- Use for logging, analytics, external notifications, etc.
result = {
}