Updated types

This commit is contained in:
Dennis Postma 2024-07-25 21:05:10 +02:00
parent 20d4167dd3
commit a14f21fdc6
2 changed files with 12 additions and 11 deletions

View File

@ -74,7 +74,7 @@
</template> </template>
<script setup lang="ts"> <script setup lang="ts">
import type { Sprite, spriteAction } from '@/types' import type { Sprite, SpriteAction } from '@/types'
import { computed, onBeforeUnmount, onMounted, ref, watch } from 'vue' import { computed, onBeforeUnmount, onMounted, ref, watch } from 'vue'
import { useAssetManagerStore } from '@/stores/assetManager' import { useAssetManagerStore } from '@/stores/assetManager'
import { useGameStore } from '@/stores/game' import { useGameStore } from '@/stores/game'
@ -87,7 +87,7 @@ const assetManagerStore = useAssetManagerStore()
const selectedSprite = computed(() => assetManagerStore.selectedSprite) const selectedSprite = computed(() => assetManagerStore.selectedSprite)
const spriteName = ref('') const spriteName = ref('')
const spriteActions = ref<spriteAction[]>([]) const spriteActions = ref<SpriteAction[]>([])
if (!selectedSprite.value) { if (!selectedSprite.value) {
console.error('No sprite selected') console.error('No sprite selected')
@ -98,12 +98,6 @@ if (selectedSprite.value) {
spriteActions.value = selectedSprite.value.spriteActions spriteActions.value = selectedSprite.value.spriteActions
} }
function getSpriteActionImages(action: spriteAction) {
gameStore.connection?.emit('gm:sprite:images:list', { id: selectedSprite.value?.id }, (response: string[]) => {
action.images = response
})
}
function removeSprite() { function removeSprite() {
gameStore.connection?.emit('gm:sprite:remove', { id: selectedSprite.value?.id }, (response: boolean) => { gameStore.connection?.emit('gm:sprite:remove', { id: selectedSprite.value?.id }, (response: boolean) => {
if (!response) { if (!response) {
@ -163,7 +157,7 @@ function addNewImage() {
return '10000000-1000-4000-8000-100000000000'.replace(/[018]/g, (c) => (+c ^ (crypto.getRandomValues(new Uint8Array(1))[0] & (15 >> (+c / 4)))).toString(16)) return '10000000-1000-4000-8000-100000000000'.replace(/[018]/g, (c) => (+c ^ (crypto.getRandomValues(new Uint8Array(1))[0] & (15 >> (+c / 4)))).toString(16))
} }
const newImage: spriteAction = { const newImage: SpriteAction = {
id: uuidv4(), // Temporary ID, should be replaced by server-generated ID id: uuidv4(), // Temporary ID, should be replaced by server-generated ID
action: 'new_action', action: 'new_action',
origin_x: 0, origin_x: 0,

View File

@ -156,7 +156,7 @@ export type Sprite = {
characterTypes: CharacterType[] characterTypes: CharacterType[]
} }
export type spriteAction = { export type SpriteAction = {
id: string id: string
spriteId: string spriteId: string
sprite: Sprite sprite: Sprite
@ -168,7 +168,14 @@ export type spriteAction = {
frameWidth: number frameWidth: number
frameHeight: number frameHeight: number
frameSpeed: number frameSpeed: number
images?: string[] images: SpriteActionImage[]
}
export type SpriteActionImage = {
id: string
spriteActionId: string
spriteAction: SpriteAction
order: number
} }
export type Chat = { export type Chat = {