Skip to content

Commit 7e372dd

Browse files
authored
Improve Copilot's answering for physics-related questions (#2629)
* feat(spx-gui): include physics mode in Copilot context * refactor(spx-gui): improve AIGC previews and refine editor navbar descriptions * refactor(spx-gui): improve editor mode descriptions and simplify physics status * refactor(spx-gui): rename physics to Physics in CopilotRoot
1 parent 497473d commit 7e372dd

File tree

2 files changed

+19
-5
lines changed

2 files changed

+19
-5
lines changed

spx-gui/src/components/copilot/CopilotRoot.vue

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -101,6 +101,7 @@ class GetProjectMetadataTool implements ToolDefinition {
101101
}
102102
103103
function getProjectContent(project: Project) {
104+
const physics = project.stage.physics
104105
return `\
105106
### Sprites (num: ${project.sprites.length})
106107
${project.sprites.map((sprite) => `- ${sprite.name}`).join('\n')}
@@ -109,7 +110,8 @@ ${project.sounds.map((sound) => `- ${sound.name}`).join('\n')}
109110
### Backdrops (num: ${project.stage.backdrops.length})
110111
${project.stage.backdrops.map((backdrop) => `- ${backdrop.name}`).join('\n')}
111112
### Widgets (num: ${project.stage.widgets.length})
112-
${project.stage.widgets.map((widget) => `- ${widget.name}`).join('\n')}`
113+
${project.stage.widgets.map((widget) => `- ${widget.name}`).join('\n')}
114+
### Physics: ${physics.enabled ? 'Enabled' : 'Disabled'}`
113115
}
114116
115117
const getProjectContentParamsSchema = z.object({

spx-gui/src/components/editor/navbar/EditorNavbar.vue

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -111,19 +111,31 @@
111111
>
112112
<UITooltip>
113113
<template #trigger>
114-
<UIButtonGroupItem :value="EditMode.Default">
114+
<UIButtonGroupItem
115+
v-radar="{
116+
name: 'Default mode',
117+
desc: 'Editor for defining the behavior and resources of independent entities (Sprites, Sounds, Stage). It features code editing, internal resource (Costumes, Animations, Backdrops, Widgets) management, and game running/debugging'
118+
}"
119+
:value="EditMode.Default"
120+
>
115121
<div class="icon" v-html="defaultModeSvg"></div>
116122
</UIButtonGroupItem>
117123
</template>
118-
{{ $t({ en: 'Default Mode', zh: '默认模式' }) }}
124+
{{ $t({ en: 'Default mode', zh: '默认模式' }) }}
119125
</UITooltip>
120126
<UITooltip>
121127
<template #trigger>
122-
<UIButtonGroupItem :value="EditMode.Map">
128+
<UIButtonGroupItem
129+
v-radar="{
130+
name: 'Map edit mode',
131+
desc: 'Map-centric editor for the game\'s spatial arrangement. It features sprite placement on the stage and global configuration (map size, physics, layer sorting, etc.)'
132+
}"
133+
:value="EditMode.Map"
134+
>
123135
<div class="icon" v-html="mapEditModeSvg"></div>
124136
</UIButtonGroupItem>
125137
</template>
126-
{{ $t({ en: 'Map Edit Mode', zh: '地图编辑模式' }) }}
138+
{{ $t({ en: 'Map edit mode', zh: '地图编辑模式' }) }}
127139
</UITooltip>
128140
</UIButtonGroup>
129141
</template>

0 commit comments

Comments
 (0)