feat: add puzzle residence configuration and reflection progress logic
- Introduced `puzzleResidences.ts` to define puzzle residence configurations including properties like display name, position, and puzzle availability. - Added `reflectionProgress.ts` to manage badge unlocking logic based on place completion, including functions to determine unlocked badges and video sources for scenes.
This commit is contained in:
1 parent
e0fa47d21a
commit
f5f36f75b5
153 files changed
+3846
-2352
No files matched your search
@@ -1,4 +1,12 @@
|
||||
import { ExhibitOverlay, GuideSteps, GuideStepsItem, Image, Title, Video } from '@/components'
|
||||
import {
|
||||
EndingOverlay,
|
||||
ExhibitOverlay,
|
||||
GuideSteps,
|
||||
GuideStepsItem,
|
||||
Image,
|
||||
Title,
|
||||
Video,
|
||||
} from '@/components'
|
||||
import Cursor from '@/components/cursor'
|
||||
import { useCursorController } from '@/hooks/useCursorController'
|
||||
import { getBackgroundImage, getPublicPath, getStaticImage } from '@/lib/utils'
|
||||
@@ -50,6 +58,7 @@ const RongdeshengPlace4 = () => {
|
||||
const [guide3Step, setGuide3Step] = useState(0)
|
||||
const [guide4Visible, setGuide4Visible] = useState(false)
|
||||
const [guide4Step, setGuide4Step] = useState(0)
|
||||
const [endingGuideVisible, setEndingGuideVisible] = useState(false)
|
||||
|
||||
if (!moduleName) return null
|
||||
|
||||
@@ -163,6 +172,10 @@ const RongdeshengPlace4 = () => {
|
||||
saveRongdeshengStore()
|
||||
return next
|
||||
})
|
||||
|
||||
if (closingId === 4) {
|
||||
setEndingGuideVisible(true)
|
||||
}
|
||||
}
|
||||
|
||||
if (closingId === 1) {
|
||||
@@ -301,6 +314,14 @@ const RongdeshengPlace4 = () => {
|
||||
晚年的荣先生依然关注民族工业的发展,积极建言献策,他创办的企业后来成为新中国轻工业的重要骨干,为国家的经济建设贡献了力量。
|
||||
</GuideStepsItem>
|
||||
</GuideSteps>
|
||||
|
||||
<EndingOverlay
|
||||
visible={endingGuideVisible}
|
||||
audioSrc={getPublicPath('audio/rongdesheng/mp3_rongdesheng_30.mp3')}
|
||||
text="接下来,请你跨越时空,走进1915年的申新纺织厂,参与工厂的创办与运营中,在模拟决策中感受民族工业在风雨中崛起的力量。让我们带着这份感动与启发,传承爱国情怀,续写新时代的实业篇章。"
|
||||
animationSpeed={200}
|
||||
onContinue={() => setEndingGuideVisible(false)}
|
||||
/>
|
||||
</div>
|
||||
)
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user