Files
DiceCloud/app/imports/ui/tabletop/TabletopCreatureCard.vue
Stefan Zermatten 8af5734c93 THREE?
2022-04-25 11:03:17 +02:00

66 lines
1.3 KiB
Vue

<template lang="html">
<v-card
style="height: 100px; width: 70px;"
:color="active ? 'accent' : ''"
hover
@mouseover="hover = true"
@mouseleave="hover = false"
@click="$emit('click')"
>
<v-progress-linear
v-if="model.variables.hitPoints"
:value="model.variables.hitPoints.value * 100 / model.variables.hitPoints.total"
/>
<v-img
:src="model.picture"
aspect-ratio="1"
position="top center"
/>
<div
class="small-title"
>
{{ model.name }}
</div>
<card-highlight :active="hover" />
<v-btn
:color="targeted ? 'accent' : ''"
fab
small
style="position: fixed;"
@click.stop="targeted ? $emit('untarget') : $emit('target')"
>
<v-icon>{{ targeted ? 'mdi-target' : 'mdi-target' }}</v-icon>
</v-btn>
</v-card>
</template>
<script lang="js">
import CardHighlight from '/imports/ui/components/CardHighlight.vue';
export default {
components: {
CardHighlight,
},
props: {
model: {
type: Object,
required: true,
},
active: Boolean,
targeted: Boolean,
},
data(){return {
hover: false,
}},
}
</script>
<style lang="css" scoped>
.small-title {
font-size: 12px;
padding: 4px;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
</style>