cdfy plugin
examples
- 全役職大富豪 plugin
Module: プラグインに機能を加えるためのプラグインdistributablemodule: 開始時にプレイヤーidの名前のFieldを作りカードを配る- events
distribute(cards): プレイヤーにcardsを配る
- events
selectablemodule: カードをクリックして複数選択が出来る- state
CardState:{ id, selected?, disabled? }FieldState:{cardSelectLimit}
- events
selectCard: 当該のCardState.selectedをtrueにする
- state
turnablemodule: ターンの概念を追加- state
{currentPlayerId}
- events
setup:currentPlayerIdを最初のプレイヤーにnext:
- state
- todo どこまでをプロトコルにしてどこまで自由度をもたせるか
- 自由度が大きいとプラグイン製作者はviewも作る必要がある -> 最初はテキストベースで良い?
- 例えばナンジャモンジャが作りたいってなったら画像も用意する必要がある
- future requestでDeck API作るか
- 例えばナンジャモンジャが作りたいってなったら画像も用意する必要がある
- 最初はトランプに限定する?
- 自由度が大きいとプラグイン製作者はviewも作る必要がある -> 最初はテキストベースで良い?
- wasmとメタ情報はどこに保存? DB?
- wasmは数MBになる
- fp-bindgenを試す
- enumどうなるんだ? ->
"A" | "B"のようになった
- enumどうなるんだ? ->
2023-02-15
UIはどうするか
- とりあえず
rand 0.6+ panic when using wasm-bindgen · Issue #810 · rust-random/rand · GitHub
randでpanicしてた
inbox
-
- 順番にターンが回ってくるpocを作りたい
-
future request idea
- コンピュータ機能
- eventでフォームを出す仕様(ナンジャモンジャとかじゃんけん用)
- ex. 全員の解答が揃うまで await するAPI
- 他のFieldにカードを移動させることができる
tradable - 方向で宛先決めておいてスワイプでで渡す
-
問題点
- 関数の可搬性
- Gameの肥大化
-
⇒ Stateのみを共有
カードゲームプラットフォーム
-
リリースノート
-
履歴機能
-
じゃんけん → await でみんなの解答まつ
-
ログ機能
-
HTMLをCdfyEngineで置き換える
-
RenderをEngineがもらうようにする
全役職大富豪
効果発動時にA使うかどうかconfirmすればasync taskいらなそう、全てはイベントハンドラとして書ける(rhaiでも)