docs: fix doc api
This commit is contained in:
parent
df2b839e07
commit
4d4889f825
|
|
@ -624,19 +624,36 @@ roll(dice, rng); // 使用 RNG 掷骰子
|
||||||
|
|
||||||
```ts
|
```ts
|
||||||
import { createGameContextFromModule } from 'boardgame-core';
|
import { createGameContextFromModule } from 'boardgame-core';
|
||||||
import { ReactiveScene } from 'boardgame-phaser';
|
import { ReactiveScene, bindRegion, bindSignal } from 'boardgame-phaser';
|
||||||
import * as ticTacToe from './tic-tac-toe';
|
import * as ticTacToe from './tic-tac-toe';
|
||||||
|
|
||||||
class TicTacToeScene extends ReactiveScene<typeof ticTacToe.createInitialState> {
|
type GameState = ReturnType<typeof ticTacToe.createInitialState>;
|
||||||
|
|
||||||
|
class TicTacToeScene extends ReactiveScene<GameState> {
|
||||||
protected onStateReady() {
|
protected onStateReady() {
|
||||||
// 初始化 Phaser 对象
|
// 初始化 Phaser 对象
|
||||||
}
|
}
|
||||||
|
|
||||||
protected setupBindings() {
|
protected setupBindings() {
|
||||||
// 绑定信号到 Phaser 对象
|
// 绑定简单信号值
|
||||||
bindSignal(this, () => this.gameContext.state.value.winner, (winner) => {
|
bindSignal(this.gameContext.state, state => state.winner, winner => {
|
||||||
if (winner) this.showWinMessage(winner);
|
if (winner) this.showWinMessage(winner);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
// 绑定区域(响应 parts 数组变化)
|
||||||
|
bindRegion(
|
||||||
|
this.gameContext.state,
|
||||||
|
state => state.parts,
|
||||||
|
this.gameContext.state.value.board,
|
||||||
|
{
|
||||||
|
cellSize: { x: 100, y: 100 },
|
||||||
|
offset: { x: 50, y: 50 },
|
||||||
|
factory: (part, pos) => {
|
||||||
|
return this.add.text(pos.x, pos.y, part.player);
|
||||||
|
},
|
||||||
|
},
|
||||||
|
this.boardContainer,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -644,3 +661,10 @@ class TicTacToeScene extends ReactiveScene<typeof ticTacToe.createInitialState>
|
||||||
const gameContext = createGameContextFromModule(ticTacToe);
|
const gameContext = createGameContextFromModule(ticTacToe);
|
||||||
const scene = new TicTacToeScene(gameContext);
|
const scene = new TicTacToeScene(gameContext);
|
||||||
```
|
```
|
||||||
|
|
||||||
|
**bindRegion 参数说明:**
|
||||||
|
- `state` — MutableSignal 游戏状态
|
||||||
|
- `state => state.parts` — 获取 parts 数组的 getter(effect 会追踪此依赖)
|
||||||
|
- `region` — Region 对象
|
||||||
|
- `options` — 配置项(cellSize, offset, factory)
|
||||||
|
- `container` — Phaser 容器
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue