> For the complete documentation index, see [llms.txt](/llms.txt)

# GS2-Grade スクリプト トリガー リファレンス

拡張スクリプトを呼び出すイベントトリガーのリファレンス



## トリガー

### changeGrade

グレード変化
**関連するメソッド:**
addGradeByUserId - ユーザーIDを指定してグレードを加算
subGrade - グレードを減算
subGradeByUserId - ユーザーIDを指定してグレードを減算
setGradeByUserId - 累計獲得グレードを設定


#### 同期実行スクリプト

グレード変化処理の前に、スクリプトが同期実行されます。

##### Request

| | 型 | 説明 |
| --- | --- | --- |
| namespace | [Namespace](../sdk/#namespace) | ネームスペース |
| gradeModel | [GradeModel](../sdk/#grademodel) | グレードモデル |
| status | [Status](../sdk/#status) | 変化前ステータス |
| afterStatus | [Status](../sdk/#status) | 変化後ステータス |

##### Result

|  | 型 | 必須 | デフォルト | 値の制限 | 説明 |
| --- | --- | --- | --- | --- | --- |
| permit | bool | ✓ |  |  | グレード変化 を許可するか |
| overrideGradeValue | long | ✓ |  | 0 ~ 2147483645 | 上書きするグレード値 |

##### 実装例


**Lua**
```lua

-- Request
local namespace = args.namespace
local gradeModel = args.gradeModel
local status = args.status
local afterStatus = args.afterStatus

-- Business logic:
local permit = true
local overrideGradeValue = 0

-- Result
result = {
  permit=permit,
  overrideGradeValue=overrideGradeValue
}
```


#### 非同期実行スクリプト

グレード変化処理の後に、スクリプトが非同期実行されます。

##### Request

| | 型 | 説明 |
| --- | --- | --- |
| namespace | [Namespace](../sdk/#namespace) | ネームスペース |
| gradeModel | [GradeModel](../sdk/#grademodel) | グレードモデル |
| status | [Status](../sdk/#status) | ステータス |
| afterStatus | [Status](../sdk/#status) | 変化後ステータス |


##### 実装例


**Lua**
```lua

-- Request
local namespace = args.namespace
local gradeModel = args.gradeModel
local status = args.status
local afterStatus = args.afterStatus

-- 非同期スクリプトは通常、API のレスポンスには影響を与えません。
-- ログ出力や分析、外部通知などに使用します。

result = {
}
```


---
  



