mirror of
https://github.com/blitzkit/blitzkit.git
synced 2026-10-24 03:59:50 +02:00
feat: recoil
This commit is contained in:
1 parent
8446e3fbbd
commit
3205630a0f
2 files changed
+23
-9
No files matched your search
+12
@@ -7,3 +7,15 @@
|
|||||||
background: var(--white-a3);
|
background: var(--white-a3);
|
||||||
transition: none;
|
transition: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.reload {
|
||||||
|
width: 65%;
|
||||||
|
height: 65%;
|
||||||
|
transition-duration: 200ms;
|
||||||
|
}
|
||||||
|
|
||||||
|
.reload.go {
|
||||||
|
width: 70%;
|
||||||
|
height: 70%;
|
||||||
|
transition: none;
|
||||||
|
}
|
||||||
+11
-9
@@ -24,17 +24,22 @@ export function ReloadVisualizer({ stats }: StatsAcceptorProps) {
|
|||||||
const reloadGlow = useRef<HTMLDivElement>(null);
|
const reloadGlow = useRef<HTMLDivElement>(null);
|
||||||
const totalTime = useRef<HTMLSpanElement>(null);
|
const totalTime = useRef<HTMLSpanElement>(null);
|
||||||
const progressTime = useRef<HTMLSpanElement>(null);
|
const progressTime = useRef<HTMLSpanElement>(null);
|
||||||
|
const flash = useRef<HTMLDivElement>(null);
|
||||||
|
|
||||||
const state = useRef(0);
|
const state = useRef(0);
|
||||||
|
|
||||||
const shoot = useCallback(() => {
|
const shoot = useCallback(() => {
|
||||||
const element = document.getElementById('reload-visualizer-flash');
|
flash.current?.classList.add('go');
|
||||||
|
reloadCircle.current?.classList.add('go');
|
||||||
|
reloadGlow.current?.classList.add('go');
|
||||||
|
|
||||||
console.log('shoot');
|
void flash.current?.offsetWidth;
|
||||||
|
void reloadCircle.current?.offsetWidth;
|
||||||
|
void reloadGlow.current?.offsetWidth;
|
||||||
|
|
||||||
element?.classList.add('go');
|
flash.current?.classList.remove('go');
|
||||||
void element?.offsetWidth;
|
reloadCircle.current?.classList.remove('go');
|
||||||
element?.classList.remove('go');
|
reloadGlow.current?.classList.remove('go');
|
||||||
}, []);
|
}, []);
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
@@ -178,8 +183,6 @@ export function ReloadVisualizer({ stats }: StatsAcceptorProps) {
|
|||||||
position="absolute"
|
position="absolute"
|
||||||
top="50%"
|
top="50%"
|
||||||
left="50%"
|
left="50%"
|
||||||
width="65%"
|
|
||||||
height="65%"
|
|
||||||
className="reload"
|
className="reload"
|
||||||
ref={reloadGlow}
|
ref={reloadGlow}
|
||||||
style={{
|
style={{
|
||||||
@@ -194,8 +197,6 @@ export function ReloadVisualizer({ stats }: StatsAcceptorProps) {
|
|||||||
position="absolute"
|
position="absolute"
|
||||||
top="50%"
|
top="50%"
|
||||||
left="50%"
|
left="50%"
|
||||||
width="65%"
|
|
||||||
height="65%"
|
|
||||||
className="reload"
|
className="reload"
|
||||||
ref={reloadCircle}
|
ref={reloadCircle}
|
||||||
style={{
|
style={{
|
||||||
@@ -282,6 +283,7 @@ export function ReloadVisualizer({ stats }: StatsAcceptorProps) {
|
|||||||
|
|
||||||
<Box
|
<Box
|
||||||
id="reload-visualizer-flash"
|
id="reload-visualizer-flash"
|
||||||
|
ref={flash}
|
||||||
position="absolute"
|
position="absolute"
|
||||||
top="0"
|
top="0"
|
||||||
left="0"
|
left="0"
|
||||||
|
|||||||
Reference in new issue
Block a user