diff --git a/public/assets/fog.png b/public/assets/fog.png index d1f6025..eb17fac 100644 Binary files a/public/assets/fog.png and b/public/assets/fog.png differ diff --git a/src/components/Effects.vue b/src/components/Effects.vue index cd5ec30..62d80fc 100644 --- a/src/components/Effects.vue +++ b/src/components/Effects.vue @@ -12,6 +12,8 @@ import { onBeforeMount, onBeforeUnmount, ref } from 'vue' const gameStore = useGameStore() const zoneEditorStore = useZoneEditorStore() +const sceneRef = ref(null) + // Effect-related refs const dayNightCycle = ref(null) const rainEmitter = ref(null) @@ -19,7 +21,7 @@ const fogSprite = ref(null) // Effect parameters const dayNightDuration = 300000 // 5 minutes in milliseconds -const maxDarkness = 0.3 +const maxDarkness = 0.7 const preloadScene = async (scene: Phaser.Scene) => { scene.load.image('raindrop', 'assets/raindrop.png') @@ -27,6 +29,7 @@ const preloadScene = async (scene: Phaser.Scene) => { } const createScene = async (scene: Phaser.Scene) => { + sceneRef.value = scene createDayNightCycle(scene) createRainEffect(scene) createFogEffect(scene) @@ -58,12 +61,12 @@ const createRainEffect = (scene: Phaser.Scene) => { quantity: 5, lifespan: 2000, speedY: { min: 300, max: 500 }, - scale: { start: 0.1, end: 0.2 }, + scale: { start: 0.005, end: 0.005 }, alpha: { start: 0.5, end: 0 }, blendMode: 'ADD' }) rainEmitter.value.setDepth(900) - toggleRain(false) // Start with rain off + toggleRain(true) // Start with rain off } const toggleRain = (isRaining: boolean) => { @@ -73,10 +76,10 @@ const toggleRain = (isRaining: boolean) => { } const createFogEffect = (scene: Phaser.Scene) => { - fogSprite.value = scene.add.sprite(window.width / 2, window.innerHeight / 2, 'fog') + fogSprite.value = scene.add.sprite(window.innerWidth / 2, window.innerHeight / 2, 'fog') fogSprite.value.setScale(2) - fogSprite.value.setAlpha(0) - fogSprite.value.setDepth(950) + fogSprite.value.setAlpha(0) // yeetdasasdasd + fogSprite.value.setDepth(950) // yeetdasasdasd } const updateFogEffect = () => { @@ -101,6 +104,6 @@ const controlEffects = { defineExpose(controlEffects) onBeforeUnmount(() => { - scene.destroy() + if (sceneRef.value) sceneRef.value.scene.remove('effects') }) \ No newline at end of file diff --git a/src/components/gui/ExpBar.vue b/src/components/gui/ExpBar.vue new file mode 100644 index 0000000..b5b6215 --- /dev/null +++ b/src/components/gui/ExpBar.vue @@ -0,0 +1,9 @@ + + + \ No newline at end of file diff --git a/src/components/gui/Hud.vue b/src/components/gui/Hud.vue index 02189e4..57ad642 100644 --- a/src/components/gui/Hud.vue +++ b/src/components/gui/Hud.vue @@ -1,46 +1,5 @@ \ No newline at end of file diff --git a/src/components/gui/Minimap.vue b/src/components/gui/Minimap.vue new file mode 100644 index 0000000..b5b6215 --- /dev/null +++ b/src/components/gui/Minimap.vue @@ -0,0 +1,9 @@ + + + \ No newline at end of file diff --git a/src/screens/Game.vue b/src/screens/Game.vue index 9db263b..46a767e 100644 --- a/src/screens/Game.vue +++ b/src/screens/Game.vue @@ -5,24 +5,18 @@
-
- -
-
- -
-
+ + + + -
-
- -
-
- -
-
+ + + + +
@@ -43,16 +37,20 @@ import { ref, onBeforeUnmount } from 'vue' import { Game, Scene } from 'phavuer' import { useGameStore } from '@/stores/gameStore' import { useZoneEditorStore } from '@/stores/zoneEditorStore' +import Menu from '@/components/gui/Menu.vue' +import ExpBar from '@/components/gui/ExpBar.vue' import Hud from '@/components/gui/Hud.vue' import Zone from '@/components/zone/Zone.vue' +import Keybindings from '@/components/gui/Keybindings.vue' import Chat from '@/components/gui/Chat.vue' -import Menubar from '@/components/gui/Menu.vue' import GmTools from '@/components/gameMaster/GmTools.vue' import ZoneEditor from '@/components/gameMaster/zoneEditor/ZoneEditor.vue' import GmPanel from '@/components/gameMaster/GmPanel.vue' import Inventory from '@/components/gui/UserPanel.vue' -import { loadAssets } from '@/composables/zoneComposable' import Effects from '@/components/Effects.vue' +import { loadAssets } from '@/composables/zoneComposable' +import Minimap from '@/components/gui/Minimap.vue' + const gameStore = useGameStore() const zoneEditorStore = useZoneEditorStore()