let occregion = gpc.occult.active_region(&gs.occults)?
.map(|r| JsonString(r.clone()));
let (svg, bbox) = pri.make_svg_defs(ioccults, gs, gpc, ipc)?;
+ let desc = pri.describe(ioccults,&gs.occults, gpc, ipc);
let r = PreparedPieceState {
- pos, svg, occregion, bbox,
+ pos, svg, desc, occregion, bbox,
held : gpc.held,
z : zlevel.z.clone(),
zg : zlevel.zg,
-> PreparedPieceImage {
let pri = self;
let (svg, bbox) = pri.make_svg_defs(ioccults, gs, gpc, ipc)?;
+ let desc = pri.describe(ioccults, &gs.occults, gpc, ipc);
let r = PreparedPieceImage {
- svg, bbox,
+ svg, desc, bbox,
uos: pri.ui_operations(gs, gpc, ipc)?,
};
trace_dbg!("prep_pieceimage", pri, ipc, gpc, r);
pub struct PreparedPieceState {
pub pos: Pos,
pub svg: Html,
+ pub desc: Html,
pub facehint: Option<FaceId>,
pub held: Option<PlayerId>,
pub z: ZCoord,
#[derive(Debug,Clone,Serialize)]
pub struct PreparedPieceImage {
pub svg: Html,
+ pub desc: Html,
pub bbox: Rect,
pub uos: Vec<UoDescription>,
}
moveable: PieceMoveable,
rotateable: boolean,
multigrab: boolean,
+ desc: string,
uos : UoDescription[],
uelem : SVGGraphicsElement,
delem : SVGGraphicsElement,
type PreparedPieceState = {
pos: Pos,
svg: string,
+ desc: string,
held: PlayerId | null,
z: ZCoord,
zg: Generation,
p.pelem= piece_element('piece',piece)!;
p.uos = info.uos;
p.bbox = info.bbox;
+ p.desc = info.desc;
piece_resolve_special(piece, p);
}
type PreparedPieceImage = {
svg: string,
+ desc: string,
uos: UoDescription[],
bbox: Rect,
}