diff --git a/public/assets/icons/zoneEditor/eraser-tool.svg b/public/assets/icons/zoneEditor/eraser-tool.svg
new file mode 100644
index 0000000..c0e1bf9
--- /dev/null
+++ b/public/assets/icons/zoneEditor/eraser-tool.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/public/assets/icons/zoneEditor/tiles.svg b/public/assets/icons/zoneEditor/tiles.svg
new file mode 100644
index 0000000..26cad8a
--- /dev/null
+++ b/public/assets/icons/zoneEditor/tiles.svg
@@ -0,0 +1,48 @@
+
+
+
diff --git a/src/assets/scss/_variables.scss b/src/assets/scss/_variables.scss
index b66a71c..ad7825c 100644
--- a/src/assets/scss/_variables.scss
+++ b/src/assets/scss/_variables.scss
@@ -11,4 +11,5 @@ $light-gray: #d3d3d3;
$blue-gray: #778899;
$cyan: #368f8b;
$dark-cyan: #376362;
+$light-cyan: #00b3b3;
$green: #09ad19;
\ No newline at end of file
diff --git a/src/components/Game.vue b/src/components/Game.vue
index cb09aa3..c2ca608 100644
--- a/src/components/Game.vue
+++ b/src/components/Game.vue
@@ -1,7 +1,9 @@
-
-
+
+
+
+
@@ -10,8 +12,13 @@
@@ -28,9 +35,12 @@ import Menubar from '@/components/game/Menu.vue'
import { onUnmounted } from 'vue'
import ZoneEditor from '@/components/utilities/zoneEditor/ZoneEditor.vue'
import Modal from '@/components/utilities/Modal.vue'
-import GmUtilityWindow from '@/components/utilities/gmTools/GmUtilityWindow.vue'
+import GmTools from '@/components/utilities/GmTools.vue'
+import { useZoneStore } from '@/stores/zone'
+import ZoneEditorToolbar from '@/components/utilities/zoneEditor/ZoneEditorToolbar.vue'
const socket = useSocketStore()
+const zone = useZoneStore()
onUnmounted(() => {
socket.disconnectSocket()
diff --git a/src/components/World.vue b/src/components/World.vue
index 8d01b5e..bbffa75 100644
--- a/src/components/World.vue
+++ b/src/components/World.vue
@@ -1,9 +1,9 @@
-
-
-
+
+
+
diff --git a/src/components/utilities/gmTools/GmUtilityWindow.vue b/src/components/utilities/GmTools.vue
similarity index 100%
rename from src/components/utilities/gmTools/GmUtilityWindow.vue
rename to src/components/utilities/GmTools.vue
diff --git a/src/components/utilities/zoneEditor/ZoneEditor.vue b/src/components/utilities/zoneEditor/ZoneEditor.vue
index 3a9b539..ce6c7e4 100644
--- a/src/components/utilities/zoneEditor/ZoneEditor.vue
+++ b/src/components/utilities/zoneEditor/ZoneEditor.vue
@@ -16,9 +16,10 @@
+
+
\ No newline at end of file
diff --git a/src/services/zone.ts b/src/services/zone.ts
index 793ed13..3eb7203 100644
--- a/src/services/zone.ts
+++ b/src/services/zone.ts
@@ -6,6 +6,16 @@ export function getTile(x: number, y: number, layer: Phaser.Tilemaps.TilemapLaye
return tile
}
+export function tileToWorldX(layer: Phaser.Tilemaps.TilemapLayer, pos_x: number, pos_y: number) {
+ const worldPoint = layer.tileToWorldXY(pos_x, pos_y)
+ return worldPoint.x + config.tile_size.y
+}
+
+export function tileToWorldY(layer: Phaser.Tilemaps.TilemapLayer, pos_x: number, pos_y: number) {
+ const worldPoint = layer.tileToWorldXY(pos_x, pos_y)
+ return worldPoint.y
+}
+
export function tileToWorldXY(layer: Phaser.Tilemaps.TilemapLayer, pos_x: number, pos_y: number) {
const worldPoint = layer.tileToWorldXY(pos_x, pos_y)
const position_x = worldPoint.x + config.tile_size.y
diff --git a/src/stores/zone.ts b/src/stores/zone.ts
index c3de41d..9e9b61f 100644
--- a/src/stores/zone.ts
+++ b/src/stores/zone.ts
@@ -5,12 +5,14 @@ export const useZoneStore = defineStore('zone', {
state: () => ({
loaded: false,
tiles: undefined,
- characters: [] as Character[]
+ characters: [] as Character[],
+ editorIsOpen: true
}),
getters: {
isLoaded: (state) => state.loaded,
getTiles: (state) => state.tiles,
- getCharacters: (state) => state.characters
+ getCharacters: (state) => state.characters,
+ getEditorIsOpen: (state) => state.editorIsOpen
},
actions: {
loadTiles(tiles: any) {
@@ -33,6 +35,9 @@ export const useZoneStore = defineStore('zone', {
} else {
console.error(`Character with id ${character.id} not found`)
}
+ },
+ setEditorIsOpen(isOpen: boolean) {
+ this.editorIsOpen = isOpen
}
}
})