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

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

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



## トリガー

### release

ノードを解放
**関連するメソッド:**
release - ノードを解放


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

ノードを解放処理の前に、スクリプトが同期実行されます。

##### Request

| | 型 | 説明 |
| --- | --- | --- |
| namespace | [Namespace](../sdk/#namespace) | ネームスペース |
| oldStatus | [Status](../sdk/#status) | 更新前のステータス |
| newStatus | [Status](../sdk/#status) | 更新後のステータス |
| userId | string | ユーザーID |
| nodeModelNames | [] | ノードモデル名のリスト |

##### Result

|  | 型 | 必須 | デフォルト | 値の制限 | 説明 |
| --- | --- | --- | --- | --- | --- |
| permit | bool | ✓ |  |  | ノードを解放を許可するか |

##### 実装例


**Lua**
```lua

-- Request
local namespace = args.namespace
local oldStatus = args.oldStatus
local newStatus = args.newStatus
local userId = args.userId
local nodeModelNames = args.nodeModelNames

-- Business logic:
local permit = true

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


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

ノードを解放処理の後に、スクリプトが非同期実行されます。

##### Request

| | 型 | 説明 |
| --- | --- | --- |
| namespace | [Namespace](../sdk/#namespace) | ネームスペース |
| oldStatus | [Status](../sdk/#status) | 更新前のステータス |
| newStatus | [Status](../sdk/#status) | 更新後のステータス |
| userId | string | ユーザーID |
| nodeModelNames | [] | ノードモデル名のリスト |


##### 実装例


**Lua**
```lua

-- Request
local namespace = args.namespace
local oldStatus = args.oldStatus
local newStatus = args.newStatus
local userId = args.userId
local nodeModelNames = args.nodeModelNames

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

result = {
}
```


---
  
### restrain

ノードの解放を元に戻す
**関連するメソッド:**
markRestrain - ノードの解放状態を未解放化
markRestrainByUserId - ユーザーIDを指定してノードの解放状態を未解放化
restrain - ノードの解放状態を未解放状態に戻す


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

ノードの解放を元に戻す処理の前に、スクリプトが同期実行されます。

##### Request

| | 型 | 説明 |
| --- | --- | --- |
| namespace | [Namespace](../sdk/#namespace) | ネームスペース |
| userId | string | ユーザーID |
| oldStatus | [Status](../sdk/#status) | 更新前のステータス |
| newStatus | [Status](../sdk/#status) | 更新後のステータス |
| nodeModelNames | [] | ノードモデル名のリスト |

##### Result

|  | 型 | 必須 | デフォルト | 値の制限 | 説明 |
| --- | --- | --- | --- | --- | --- |
| permit | bool | ✓ |  |  | ノードの解放を元に戻すを許可するか |

##### 実装例


**Lua**
```lua

-- Request
local namespace = args.namespace
local userId = args.userId
local oldStatus = args.oldStatus
local newStatus = args.newStatus
local nodeModelNames = args.nodeModelNames

-- Business logic:
local permit = true

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


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

ノードの解放を元に戻す処理の後に、スクリプトが非同期実行されます。

##### Request

| | 型 | 説明 |
| --- | --- | --- |
| namespace | [Namespace](../sdk/#namespace) | ネームスペース |
| userId | string | ユーザーID |
| oldStatus | [Status](../sdk/#status) | 更新前のステータス |
| newStatus | [Status](../sdk/#status) | 更新後のステータス |
| nodeModelNames | [] | ノードモデル名のリスト |


##### 実装例


**Lua**
```lua

-- Request
local namespace = args.namespace
local userId = args.userId
local oldStatus = args.oldStatus
local newStatus = args.newStatus
local nodeModelNames = args.nodeModelNames

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

result = {
}
```


---
  



