feat: 更新音频和引导对话,优化用户体验

- 在多个场景中添加音频资源,增强学习互动性。
- 更新引导对话文本,确保信息准确性和一致性。
- 调整组件结构,清理不必要的代码,提升可维护性。
- 引入结束窗口,鼓励用户深入了解历史背景。
This commit is contained in:
zhongyidian committed 2026-01-15 19:30:17 +08:00
1 parent d7ff7d3a45
commit 6e106032fd
141 files changed
+1375 -479

No files matched your search

+4 -4
View File
@@ -88,7 +88,7 @@ const HuangyanpeiPlace1 = () => {
{completed && (
<Image
className="absolute bottom-0 right-0"
src={getStaticImage("/components/place/继续前进")}
src={getStaticImage("components/place/继续前进")}
button
onClick={() => {
navigate(`/${moduleName}/${starName}/place2`);
@@ -154,11 +154,11 @@ const HuangyanpeiPlace1 = () => {
onContinue={() => setShowAfterDialogGuide(false)}
ailgn="left"
>
1、场景中出现动态光点的展品表示未浏览,可通过点击光点来了解展品背后的故事,通过滚轮可以放大展品,浏览展品后蓝色动态光点会变为已浏览状态;
1.场景中出现动态光点的展品表示未浏览,可通过点击光点来了解展品背后的故事,通过滚轮可以放大展品,浏览展品后蓝色动态光点会变为已浏览状态。
{"\n"}
2、在学习过程中会掉落拼图碎片,拼图碎片会自动收入拼图盒中,拼图盒可以点击查看当前拼图收集情况,点击单个拼图可以回到获得拼图的场景再次学习;
2.在学习过程中会掉落拼图碎片,拼图碎片会自动收入拼图盒中,拼图盒可以点击查看当前拼图收集情况,点击单个拼图可以回到获得拼图的场景再次学习。
{"\n"}
3、所有动态光点的展品全部学习后才能进入下一个场景学习;
3.所有动态光点的展品全部学习后才能进入下一个场景学习。
</StudyGuideModal>
</div>
);
+2 -2
View File
@@ -32,8 +32,8 @@ const HuangyanpeiPlace3 = () => {
);
const [visited, setVisited] = useState<Set<number>>(new Set());
const { isEnabled } = useCursorController({
initialEnabled: [1],
dependencies: { 2: [1], 3: [1, 2] },
initialEnabled: [3],
dependencies: { 2: [3], 1: [2] },
visited,
});
+7 -8
View File
@@ -31,16 +31,15 @@ const HuangyanpeiPlace4 = () => {
moduleName: string;
}>();
const [activeExhibitId, setActiveExhibitId] = useState<
1 | 2 | 3 | 4 | 5 | null
>(null);
const [activeExhibitId, setActiveExhibitId] = useState<1 | 3 | 4 | 5 | null>(
null
);
const [visited, setVisited] = useState<Set<number>>(new Set());
const { isEnabled } = useCursorController({
initialEnabled: [1],
initialEnabled: [3, 5],
dependencies: {
3: [1],
4: [3],
5: [4],
1: [3, 5],
4: [1],
// 2 已注释,不计入顺序
},
visited,
@@ -66,7 +65,7 @@ const HuangyanpeiPlace4 = () => {
const [showSuccessAlert, setShowSuccessAlert] = useState(false);
const videoRef = useRef<VideoRef>(null);
const handleOpenExhibit = (index: 1 | 2 | 3 | 4 | 5) => {
const handleOpenExhibit = (index: 1 | 3 | 4 | 5) => {
setActiveExhibitId(index);
if (index === 1) {
setGuide1Step(0);
+1 -1
View File
@@ -9,7 +9,7 @@ import {
} from "@/components";
import { getBackgroundImage, getStaticImage } from "@/lib/utils";
import { useNavigate, useParams } from "react-router-dom";
import { EndingOverlay } from "@/pages/chenyun/reflection/shared/EndingOverlay";
import { EndingOverlay } from "@/components/overlay/EndingOverlay";
const starName = "huangyanpei";