|
@@ -63,25 +63,17 @@
|
|
src="@/assets/cloud3.png"
|
|
src="@/assets/cloud3.png"
|
|
alt=""
|
|
alt=""
|
|
>
|
|
>
|
|
- <div
|
|
|
|
|
|
+ <SingleLongImageSerialFrames
|
|
class="people-far-wrap"
|
|
class="people-far-wrap"
|
|
:style="{
|
|
:style="{
|
|
right: peopleFarPositionRight,
|
|
right: peopleFarPositionRight,
|
|
}"
|
|
}"
|
|
- >
|
|
|
|
- <img
|
|
|
|
- class="people-far"
|
|
|
|
- :class="peopleFarColorStatus"
|
|
|
|
- src="@/assets/people-far-serial-frame-400-600-60.png"
|
|
|
|
- alt=""
|
|
|
|
- @dragstart.prevent
|
|
|
|
- >
|
|
|
|
- <HotSpot
|
|
|
|
- v-if="canMoveCamera"
|
|
|
|
- class="hot-spot"
|
|
|
|
- @click="onClickPeopleFarHotSpot"
|
|
|
|
- />
|
|
|
|
- </div>
|
|
|
|
|
|
+ :image-src="require('@/assets/people-far-serial-frame-400-600-60.png')"
|
|
|
|
+ :frame-number="60"
|
|
|
|
+ :transition-duration="2500"
|
|
|
|
+ :hot-spot-center-pos-left="'55%'"
|
|
|
|
+ :hot-spot-center-pos-top="'34.5%'"
|
|
|
|
+ />
|
|
<div
|
|
<div
|
|
ref="people-near-wrap"
|
|
ref="people-near-wrap"
|
|
class="people-near-wrap"
|
|
class="people-near-wrap"
|
|
@@ -154,10 +146,6 @@ export default {
|
|
peopleFarPositionRight: config.initialPeopleFarPositionRight,
|
|
peopleFarPositionRight: config.initialPeopleFarPositionRight,
|
|
peopleNearPositionLeft: config.initialPeopleNearPositionLeft,
|
|
peopleNearPositionLeft: config.initialPeopleNearPositionLeft,
|
|
introducePositionLeft: config.initialIntroducePositionLeft,
|
|
introducePositionLeft: config.initialIntroducePositionLeft,
|
|
-
|
|
|
|
- // 远处人物变色相关
|
|
|
|
- peopleFarColorStatus: 'no-color', // 'no-color', 'color'
|
|
|
|
- isPeopleFarColorChanging: false,
|
|
|
|
}
|
|
}
|
|
},
|
|
},
|
|
watch: {
|
|
watch: {
|
|
@@ -246,21 +234,6 @@ export default {
|
|
this.lastAnimationTimeStamp = timeStamp
|
|
this.lastAnimationTimeStamp = timeStamp
|
|
this.animationFrameId = requestAnimationFrame(this.animationFrameTask)
|
|
this.animationFrameId = requestAnimationFrame(this.animationFrameTask)
|
|
},
|
|
},
|
|
- onClickPeopleFarHotSpot() {
|
|
|
|
- if (this.isPeopleFarColorChanging) {
|
|
|
|
- return
|
|
|
|
- } else {
|
|
|
|
- if (this.peopleFarColorStatus === 'no-color') {
|
|
|
|
- this.peopleFarColorStatus = 'color'
|
|
|
|
- } else {
|
|
|
|
- this.peopleFarColorStatus = 'no-color'
|
|
|
|
- }
|
|
|
|
- this.isPeopleFarColorChanging = true
|
|
|
|
- setTimeout(() => {
|
|
|
|
- this.isPeopleFarColorChanging = false
|
|
|
|
- }, 2500)
|
|
|
|
- }
|
|
|
|
- },
|
|
|
|
onClickPeopleNearHotSpot() {
|
|
onClickPeopleNearHotSpot() {
|
|
this.$refs['treasure-display'].startDisplay()
|
|
this.$refs['treasure-display'].startDisplay()
|
|
},
|
|
},
|
|
@@ -312,26 +285,6 @@ export default {
|
|
top: 14%;
|
|
top: 14%;
|
|
height: 750px;
|
|
height: 750px;
|
|
width: 500px;
|
|
width: 500px;
|
|
- overflow: hidden;
|
|
|
|
- > .people-far {
|
|
|
|
- position: absolute;
|
|
|
|
- height: 100%;
|
|
|
|
- transition-property: left;
|
|
|
|
- transition-duration: 2.5s;
|
|
|
|
- transition-timing-function: steps(59, jump-end);
|
|
|
|
- &.no-color {
|
|
|
|
- left: 0;
|
|
|
|
- }
|
|
|
|
- &.color {
|
|
|
|
- left: calc(-100% * 59)
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- > .hot-spot {
|
|
|
|
- position: absolute;
|
|
|
|
- left: 55%;
|
|
|
|
- transform: translateX(-50%);
|
|
|
|
- top: 31%;
|
|
|
|
- }
|
|
|
|
}
|
|
}
|
|
> .people-near-wrap {
|
|
> .people-near-wrap {
|
|
position: absolute;
|
|
position: absolute;
|