BCDice/TRPGツールからの呼び出し方/Onset!
< BCDice | TRPGツールからの呼び出し方
ナビゲーションに移動
検索に移動
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
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