「BCDice/TRPGツールからの呼び出し方/Onset!」の版間の差分
< BCDice | TRPGツールからの呼び出し方
ナビゲーションに移動
検索に移動
Ochaochaocha3 (トーク | 投稿記録) (ページの作成:「Onset!からのBCDiceの呼び出し方。[https://github.com/kiridaruma/Onset/releases/tag/v2.1.3 v2.1.3]のソースコードを参考にしている。 ツ…」) |
Ochaochaocha3 (トーク | 投稿記録) (118.10.82.175 (トーク) による版 169 を取り消し) タグ: 取り消し |
||
(4人の利用者による、間の6版が非表示) | |||
61行目: | 61行目: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
+ | {{DEFAULTSORT:Onset}} | ||
[[Category:BCDice/TRPGツールからの呼び出し方]] | [[Category:BCDice/TRPGツールからの呼び出し方]] |
2020年8月30日 (日) 17:06時点における最新版
Onset!からのBCDiceの呼び出し方。v2.1.3のソースコードを参考にしている。
ツール本体はPHP製だが、Rubyで書かれた簡潔なラッパースクリプトをCGIで呼び出している。
Onset/public_html/bcdice/roll.rb L31-L36
クエリパラメータ list=1
がついていた場合、ゲームシステム一覧を出力する。
if(params['list'][0] == "1")
$allGameTypes.each do |var|
puts var + "\n"
end
exit
end
Onset/public_html/bcdice/roll.rb L47-L55
ダイスロールを行う。
bcmaker = OnsetBCDiceMaker.new
bcdice = bcmaker.newBcDice()
bcdice.setGameByTitle(params['sys'][0])
bcdice.setMessage(params['text'][0])
bcdice.setNick('onset')
hoge, foo = bcdice.dice_command
puts hoge
Onset/public_html/bcdice/roll.rb L11-L24
OnsetBCDice
クラスは、Onset!のインターフェースに合わせてニックネームを設定する機能を付加している。OnsetBCDiceMaker
クラスは、BCDiceのインスタンス作成時に OnsetBCDice
クラスを使うようにする。
class OnsetBCDiceMaker < BCDiceMaker
def newBcDice
bcdice = OnsetBCDice.new(self, @cardTrader, @diceBot, @counterInfos, @tableFileData)
return bcdice
end
end
class OnsetBCDice < BCDice
def setNick(nick)
@nick_e = nick
end
end