From 73c664eb617b2a6776df267e90ef85e57d7a8a5f Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@163.com> Date: 星期四, 07 十一月 2024 15:11:53 +0800 Subject: [PATCH] # --- zy-acs-flow/src/map/player.js | 24 +++++++++++++++++++++--- 1 files changed, 21 insertions(+), 3 deletions(-) diff --git a/zy-acs-flow/src/map/player.js b/zy-acs-flow/src/map/player.js index 3d3a04e..2f8b87d 100644 --- a/zy-acs-flow/src/map/player.js +++ b/zy-acs-flow/src/map/player.js @@ -228,19 +228,24 @@ }, 200).start(); } - rotateMap = () => { + rotateMap = (value = 0) => { const bounds = this.mapContainer.getLocalBounds(); const centerX = bounds.x + bounds.width / 2; const centerY = bounds.y + bounds.height / 2; this.mapContainer.pivot.set(centerX, centerY); this.mapContainer.position.set(this.app.renderer.width / 2, this.app.renderer.height / 2); - const rotationIncrement = Math.PI / 2; // 90 degrees in radians - const newRotation = this.mapContainer.rotation + rotationIncrement; + const newRotation = this.mapContainer.rotation + value; + + const rotationDegrees = (newRotation * 180 / Math.PI) % 360; + this.rotationText.text = `{ rotation: ${rotationDegrees.toFixed(1)}掳 }`; new TWEEDLE.Tween(this.mapContainer) .to({ rotation: newRotation }, 200) .easing(TWEEDLE.Easing.Quadratic.Out) + .onComplete(() => { + localStorage.setItem('mapRotation', newRotation % (Math.PI * 2)); + }) .start(); } @@ -254,6 +259,16 @@ this.coordinatesText.name = 'xyStr'; this.coordinatesText.position.set(10, 10); this.app.stage.addChild(this.coordinatesText); + + this.rotationText = new PIXI.Text('Rotation: 0掳', { + fill: this.themeMode === 'dark' ? 0xdddddd : 0x333333, + fontSize: 13, + fontFamily: 'Microsoft YaHei', + fontWeight: 'bold', + }); + this.rotationText.name = 'rotationStr'; + this.rotationText.position.set(10, 35); + this.app.stage.addChild(this.rotationText); this.app.stage.on('pointermove', (event) => { const worldPos = event.data.getLocalPosition(this.mapContainer); @@ -413,6 +428,9 @@ if (this.coordinatesText) { this.coordinatesText.style.fill = themeMode === 'dark' ? 0xdddddd : 0x333333; } + if (this.rotationText) { + this.rotationText.style.fill = themeMode === 'dark' ? 0xdddddd : 0x333333; + } } } -- Gitblit v1.9.1