@haelp/teto
Version:
A typescript-based controllable TETR.IO client.
40 lines (39 loc) • 1.53 kB
JavaScript
export class Adapter {
configFromEngine(engine) {
return {
boardWidth: engine.board.width,
boardHeight: engine.board.height,
kicks: engine.kickTableName,
spins: engine.gameOptions.spinBonuses,
comboTable: engine.gameOptions.comboTable,
b2bCharing: !!engine.b2b.charging,
b2bChargeAt: engine.b2b.charging ? engine.b2b.charging.at : 0,
b2bChargeBase: engine.b2b.charging ? engine.b2b.charging.base : 0,
b2bChaining: engine.b2b.chaining,
garbageMultiplier: engine.dynamic.garbageMultiplier.get(),
garbageCap: engine.dynamic.garbageMultiplier.get(),
garbageSpecialBonus: engine.garbageQueue.options.specialBonus,
pcB2b: engine.pc ? engine.pc.b2b : 0,
pcGarbage: engine.pc ? engine.pc.garbage : 0,
queue: engine.queue.value
};
}
stateFromEngine(engine) {
return {
board: engine.board.state,
current: engine.falling.symbol,
hold: engine.held,
queue: engine.queue.value,
garbage: engine.garbageQueue.queue.map((item)=>item.amount),
combo: engine.stats.combo,
b2b: engine.stats.b2b
};
}
playFromEngine(engine) {
return {
garbageCap: Math.floor(engine.dynamic.garbageCap.get()),
garbageMultiplier: engine.dynamic.garbageMultiplier.get()
};
}
}
//# sourceMappingURL=index.js.map