hensei-web/components/summon/SummonUnit/index.scss
Justin Edmund e345cedd34 Add quick summon to SummonUnit
* Quick summon icon is displayed on hover
* Updates the server when clicked
2023-06-18 05:25:06 -07:00

159 lines
2.7 KiB
SCSS

.SummonUnit {
display: flex;
flex-direction: column;
gap: 4px;
position: relative;
z-index: 0;
.Button {
pointer-events: none;
opacity: 0;
z-index: 10;
}
&:hover .Button,
.Button.Clicked {
pointer-events: initial;
opacity: 1;
}
&.grid {
// max-width: 148px;
// min-height: 141px;
min-height: 180px;
@include breakpoint(tablet) {
min-height: 15.9vw;
}
.SummonImage {
list-style-type: none;
width: 100%;
}
}
&.friend {
margin-right: 0;
}
&.main.editable .SummonImage:hover,
&.friend.editable .SummonImage:hover {
transform: $scale-tall;
}
&.editable .SummonImage:hover {
border: $hover-stroke;
box-shadow: $hover-shadow;
cursor: pointer;
transform: $scale-wide;
}
.SummonImage {
background: var(--card-bg);
border: 1px solid rgba(0, 0, 0, 0);
border-radius: $unit;
display: flex;
align-items: center;
justify-content: center;
overflow: hidden;
transition: $duration-zoom all ease-in-out;
&:hover .icon svg {
fill: var(--icon-secondary-hover);
}
.icon {
position: absolute;
height: $unit * 3;
width: $unit * 3;
z-index: 1;
svg {
transition: $duration-color-fade fill ease-in-out;
fill: var(--icon-secondary);
}
}
}
.SummonName {
@include breakpoint(phone) {
font-size: $font-tiny;
}
}
&.filled h3 {
display: block;
}
&.filled ul {
display: flex;
}
h3,
ul {
display: none;
}
h3 {
color: var(--text-primary);
font-size: $font-regular;
font-weight: $normal;
line-height: 1.1;
margin: 0;
text-align: center;
}
img {
position: relative;
width: 100%;
z-index: 2;
&.Placeholder {
opacity: 0;
}
}
&:hover .QuickSummon.Empty {
opacity: 1;
}
&.main .QuickSummon,
&.friend .QuickSummon {
$diameter: $unit-6x;
background-size: $diameter $diameter;
top: -2%;
right: 28%;
width: $diameter;
height: $diameter;
}
&.grid .QuickSummon {
$diameter: $unit-5x;
background-size: $diameter $diameter;
top: -5%;
right: 22%;
width: $diameter;
height: $diameter;
}
.QuickSummon {
position: absolute;
background-image: url('/icons/quick_summon/filled.svg');
z-index: 20;
transition: $duration-zoom opacity ease-in-out;
&:hover {
background-image: url('/icons/quick_summon/empty.svg');
cursor: pointer;
}
&.Empty {
background-image: url('/icons/quick_summon/empty.svg');
opacity: 0;
&:hover {
background-image: url('/icons/quick_summon/filled.svg');
}
}
}
}