aotds-docks/src/lib/components/ShipEdit/Weaponry/Weapon/Arcs.svelte

34 lines
662 B
Svelte
Raw Normal View History

2020-07-29 21:08:52 +00:00
<svg width="{size}px" height="{size}px">
2023-04-08 17:47:00 +00:00
{#each arcs as arc (arc)}
2022-03-01 17:42:33 +00:00
<Arc
{arc}
radius={size / 2}
active={selected.includes(arc)}
2023-04-08 17:47:00 +00:00
on:click={() => clickArc(arc)}
2020-07-27 22:17:55 +00:00
/>
2022-03-01 17:42:33 +00:00
{/each}
2023-05-01 16:41:39 +00:00
<circle cx="50%" cy="50%" r={inner} />
2022-03-01 17:42:33 +00:00
<slot />
2020-07-27 22:17:55 +00:00
</svg>
<script>
2022-03-01 17:42:33 +00:00
import { createEventDispatcher } from "svelte";
2020-07-27 22:17:55 +00:00
2023-04-08 17:47:00 +00:00
import { arcs } from "$lib/store/ship/weaponry/rules";
import Arc from "./Arc.svelte";
2020-07-27 22:17:55 +00:00
2022-03-01 17:42:33 +00:00
export let selected = [];
2020-07-29 21:08:52 +00:00
export let size = 60;
2023-05-01 16:41:39 +00:00
export let inner = size / 3;
2020-07-27 22:17:55 +00:00
const dispatch = createEventDispatcher();
2023-04-08 17:47:00 +00:00
const clickArc = (arc) => dispatch("clickArc", arc);
2020-07-27 22:17:55 +00:00
</script>
<style>
2022-03-01 17:42:33 +00:00
circle {
2020-07-27 22:17:55 +00:00
fill: white;
2022-03-01 17:42:33 +00:00
}
2020-07-27 22:17:55 +00:00
</style>