GS2-Lottery Script トリガー リファレンス

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

トリガー

lottery

抽選

同期実行スクリプト

抽選処理の前に、スクリプトが同期実行されます。

Request
説明
namespaceNamespaceネームスペース
lotteryModelLotteryModel抽選モデル
drawnPrizesDrawnPrize[]抽選結果の景品リスト
boxItemsBoxItemsボックスから取り出したアイテムのリスト
Result
必須デフォルト値の制限説明
permitbool
抽選 を許可するか
overrideDrawnPrizesDrawnPrize[]0 ~ 1000 items上書きする抽選結果の景品リスト
実装例
-- Request
local namespace = args.namespace
local lotteryModel = args.lotteryModel
local drawnPrizes = args.drawnPrizes
local boxItems = args.boxItems

-- Business logic:
local permit = true
local overrideDrawnPrizes = {}

-- Result
result = {
  permit=permit,
  overrideDrawnPrizes=overrideDrawnPrizes
}

choicePrizeTable

抽選テーブルを動的に変化させるスクリプト

同期実行スクリプト

抽選テーブルを動的に変化させるスクリプト処理の前に、スクリプトが同期実行されます。

Request
説明
namespaceNamespaceネームスペース
lotteryModelLotteryModel抽選テーブルを動的に選択する対象の抽選モデル
userIdstringユーザーID
countint抽選回数
Result
必須デフォルト値の制限説明
prizeTableNamesstring[]
1 ~ 1000 items抽選に使用する景品テーブルの名前のリスト
応答値が10個で抽選回数が10未満の場合は、先頭から順番に使用されます。
抽選回数が10回で、10未満の景品テーブルを応答した場合、応答した景品テーブルを順番に使用し、残りは最後に応答した景品テーブルで抽選します。
例えば、3個の景品テーブルを応答した場合、1回目は1個目の景品テーブル、2回目は2個目の景品テーブル、3回目以降は3個目の景品テーブルで抽選します。
実装例
-- Request
local namespace = args.namespace
local lotteryModel = args.lotteryModel
local userId = args.userId
local count = args.count

-- Business logic:
local prizeTableNames = {}

-- Result
result = {
  prizeTableNames=prizeTableNames
}