add action

This commit is contained in:
Владимир Фёдоров 2026-03-21 00:29:21 +07:00
parent 7b620dffd4
commit dd41cd08dd
2 changed files with 31 additions and 16 deletions

View File

@ -6,26 +6,12 @@ import VueQrcode from '@chenfengyuan/vue-qrcode';
import BeltBlock from './BeltBlock.vue'; import BeltBlock from './BeltBlock.vue';
import MetalPlate from './MetalPlate.vue'; import MetalPlate from './MetalPlate.vue';
import GameHeader from './GameHeader.vue'; import GameHeader from './GameHeader.vue';
import type { Application } from './application'; import type { Action } from './action';
import type { Door } from './door'; import type { Door } from './door';
const router = useRouter(); const router = useRouter();
const route = useRoute(); const route = useRoute();
type Action = {
id: string
place: string
name: string
text: string
image: string
applications: Application[]
hidden: boolean
doors: Door[]
isOpen: boolean
buttons: Door[]
}
type Team = { type Team = {
name: string name: string
actions: Action[] actions: Action[]
@ -94,7 +80,7 @@ function getTeam() {
} }
for (let i = 0; i < team.value.actions.length; i++) { for (let i = 0; i < team.value.actions.length; i++) {
const element = team.value.actions[i]; const element = team.value.actions[i];
team.value.actions[i].buttons = element.doors.filter((door) => { return door.show }) team.value.actions[i].buttons = element.doors.filter((door: Door) => { return door.show })
} }
}) })
.catch(error => { .catch(error => {

29
src/components/action.ts Normal file
View File

@ -0,0 +1,29 @@
import type { Application } from './application'
import type { Door } from './door'
// Действие
// Посещение точки игры
export type Action = {
// Идентификатор действия
id: string
// Код точки
place: string
// Название точки
name: string
// Текст точки
text: string
// Ссылка на картинку
image: string
// Список приложений
applications: Application[]
// Видимость/доступность точки
hidden: boolean
// Двери точки
doors: Door[]
// Поля для интерфейса
// Сворачивание
isOpen: boolean
// Кнопки
buttons: Door[]
}