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>
|