fix: 优化跳一跳运行态与地块资源
This commit is contained in:
@@ -8,9 +8,9 @@ pub use shared_contracts::jump_hop::{
|
||||
JumpHopRestartRunRequest, JumpHopRunResponse, JumpHopRunStatus,
|
||||
JumpHopRuntimeRunSnapshotResponse, JumpHopScoring, JumpHopSessionResponse,
|
||||
JumpHopSessionSnapshotResponse, JumpHopStartRunRequest, JumpHopStylePreset, JumpHopTileAsset,
|
||||
JumpHopTileType, JumpHopWorkDetailResponse, JumpHopWorkMutationResponse,
|
||||
JumpHopWorkProfileResponse, JumpHopWorkSummaryResponse, JumpHopWorksResponse,
|
||||
JumpHopWorkspaceCreateRequest,
|
||||
JumpHopTileFaceAsset, JumpHopTileFaceAssets, JumpHopTileFaceKey, JumpHopTileType,
|
||||
JumpHopWorkDetailResponse, JumpHopWorkMutationResponse, JumpHopWorkProfileResponse,
|
||||
JumpHopWorkSummaryResponse, JumpHopWorksResponse, JumpHopWorkspaceCreateRequest,
|
||||
};
|
||||
|
||||
pub(crate) fn map_jump_hop_agent_session_procedure_result(
|
||||
@@ -267,6 +267,33 @@ fn map_tile_asset(snapshot: JumpHopTileAssetSnapshot) -> JumpHopTileAsset {
|
||||
visual_height: snapshot.visual_height,
|
||||
top_surface_radius: snapshot.top_surface_radius,
|
||||
landing_radius: snapshot.landing_radius,
|
||||
face_assets: snapshot.face_assets.map(map_tile_face_assets),
|
||||
}
|
||||
}
|
||||
|
||||
fn map_tile_face_assets(snapshot: JumpHopTileFaceAssetsSnapshot) -> JumpHopTileFaceAssets {
|
||||
JumpHopTileFaceAssets {
|
||||
top: map_tile_face_asset(snapshot.top),
|
||||
front: map_tile_face_asset(snapshot.front),
|
||||
right: map_tile_face_asset(snapshot.right),
|
||||
back: map_tile_face_asset(snapshot.back),
|
||||
left: map_tile_face_asset(snapshot.left),
|
||||
bottom: map_tile_face_asset(snapshot.bottom),
|
||||
}
|
||||
}
|
||||
|
||||
fn map_tile_face_asset(snapshot: JumpHopTileFaceAssetSnapshot) -> JumpHopTileFaceAsset {
|
||||
JumpHopTileFaceAsset {
|
||||
face: parse_tile_face_key(&snapshot.face),
|
||||
asset_id: snapshot.asset_id,
|
||||
image_src: snapshot.image_src,
|
||||
image_object_key: snapshot.image_object_key,
|
||||
asset_object_id: snapshot.asset_object_id,
|
||||
generation_provider: snapshot.generation_provider,
|
||||
prompt: snapshot.prompt,
|
||||
width: snapshot.width,
|
||||
height: snapshot.height,
|
||||
source_atlas_cell: snapshot.source_atlas_cell,
|
||||
}
|
||||
}
|
||||
|
||||
@@ -405,6 +432,17 @@ fn parse_tile_type(value: &str) -> JumpHopTileType {
|
||||
}
|
||||
}
|
||||
|
||||
fn parse_tile_face_key(value: &str) -> JumpHopTileFaceKey {
|
||||
match value {
|
||||
"front" => JumpHopTileFaceKey::Front,
|
||||
"right" => JumpHopTileFaceKey::Right,
|
||||
"back" => JumpHopTileFaceKey::Back,
|
||||
"left" => JumpHopTileFaceKey::Left,
|
||||
"bottom" => JumpHopTileFaceKey::Bottom,
|
||||
_ => JumpHopTileFaceKey::Top,
|
||||
}
|
||||
}
|
||||
|
||||
fn parse_domain_tile_type(value: crate::module_bindings::JumpHopTileType) -> JumpHopTileType {
|
||||
match value {
|
||||
crate::module_bindings::JumpHopTileType::Start => JumpHopTileType::Start,
|
||||
|
||||
Reference in New Issue
Block a user