diff --git a/leaky-ships/components/Gamefield/BorderTiles.tsx b/leaky-ships/components/Gamefield/BorderTiles.tsx
index 6e4f081..6400aed 100644
--- a/leaky-ships/components/Gamefield/BorderTiles.tsx
+++ b/leaky-ships/components/Gamefield/BorderTiles.tsx
@@ -141,7 +141,7 @@ function BorderTiles() {
: true),
})
}
- >
+ />
)
})}
>
diff --git a/leaky-ships/components/Gamefield/EventBar.tsx b/leaky-ships/components/Gamefield/EventBar.tsx
index 8cd2ddd..530bb56 100644
--- a/leaky-ships/components/Gamefield/EventBar.tsx
+++ b/leaky-ships/components/Gamefield/EventBar.tsx
@@ -329,7 +329,7 @@ function EventBar({ clear }: { clear: () => void }) {
return (
- {menu !== "main" && (
+ {menu !== "main" ? (
- void }) {
useGameProps.setState({ menu: "main" })
},
}}
- >
- )}
+ />
+ ) : null}
{items[menu].map((e, i) => {
if (!isActiveIndex && menu === "main" && i === 1) return
return
})}
- {menu === "moves" && (
+ {menu === "moves" ? (
- void }) {
payload?.game?.state === "running" && mode >= 0 && target.show,
callback: () => {
if (selfIndex < 0) return
- if (payload?.game?.state === "starting") {
- const isReady = !userStates[selfIndex].isReady
- setIsReady({ isReady, i: selfIndex })
- socket.emit("isReady", isReady)
- }
- if (payload?.game?.state === "running") {
- const i = (selfUser?.moves ?? [])
- .map((e) => e.index)
- .reduce((prev, curr) => (curr > prev ? curr : prev), 0)
- const props = {
- type: modes[mode].type,
- x: target.x,
- y: target.y,
- orientation: target.orientation,
- index: (selfUser?.moves ?? []).length ? i + 1 : 0,
- }
- socket.emit("dispatchMove", props)
- setTarget((t) => ({ ...t, show: false }))
+ switch (payload?.game?.state) {
+ case "starting":
+ const isReady = !userStates[selfIndex].isReady
+ setIsReady({ isReady, i: selfIndex })
+ socket.emit("isReady", isReady)
+ break
+
+ case "running":
+ const i = (selfUser?.moves ?? [])
+ .map((e) => e.index)
+ .reduce((prev, curr) => (curr > prev ? curr : prev), 0)
+ const props = {
+ type: modes[mode].type,
+ x: target.x,
+ y: target.y,
+ orientation: target.orientation,
+ index: (selfUser?.moves ?? []).length ? i + 1 : 0,
+ }
+ socket.emit("dispatchMove", props)
+ setTarget((t) => ({ ...t, show: false }))
+ break
}
},
}}
- >
- )}
+ />
+ ) : null}
)
}
diff --git a/leaky-ships/components/Gamefield/Gamefield.tsx b/leaky-ships/components/Gamefield/Gamefield.tsx
index 7d16a62..b51e92c 100644
--- a/leaky-ships/components/Gamefield/Gamefield.tsx
+++ b/leaky-ships/components/Gamefield/Gamefield.tsx
@@ -20,7 +20,7 @@ import Ships from "./Ships"
export const count = 12
function Gamefield() {
- const { isActiveIndex, selfUser } = useIndex()
+ const { selfUser } = useIndex()
const router = useRouter()
const {
userStates,
@@ -110,17 +110,15 @@ function Gamefield() {
setMouseCursor((e) => ({ ...e, shouldShow: false }))
}
>
- {/* Bordes */}
{/* Collumn lettes and row numbers */}
- {/* Ships */}
-
- {(payload?.game?.state !== "running" || !isActiveIndex) && }
+
+
+
- {/* Fog images */}
{/* */}
diff --git a/leaky-ships/components/Gamefield/Item.tsx b/leaky-ships/components/Gamefield/Item.tsx
index d3c03b4..ef6ba83 100644
--- a/leaky-ships/components/Gamefield/Item.tsx
+++ b/leaky-ships/components/Gamefield/Item.tsx
@@ -40,9 +40,7 @@ function Item({
>
- ) : (
- <>>
- )}
+ ) : null}
{selfUser?.ships.map((props, i) => )}>
diff --git a/leaky-ships/components/Gamefield/Targets.tsx b/leaky-ships/components/Gamefield/Targets.tsx
index 8d1b98c..ef8fe3b 100644
--- a/leaky-ships/components/Gamefield/Targets.tsx
+++ b/leaky-ships/components/Gamefield/Targets.tsx
@@ -15,52 +15,57 @@ function Targets() {
const { payload, target, targetPreview, mode } = useGameProps()
const { ships } = useShips()
- if (payload?.game?.state === "running")
- return (
- <>
- {[
- ...composeTargetTiles(target, mode, activeUser?.hits ?? []).map(
- (props, i) => ,
- ),
- ...composeTargetTiles(
- targetPreview,
- mode,
- activeUser?.hits ?? [],
- ).map((props, i) => (
-
- )),
- ]}
- >
- )
+ switch (payload?.game?.state) {
+ case "running":
+ return (
+ <>
+ {[
+ ...composeTargetTiles(target, mode, activeUser?.hits ?? []).map(
+ (props, i) => ,
+ ),
+ ...composeTargetTiles(
+ targetPreview,
+ mode,
+ activeUser?.hits ?? [],
+ ).map((props, i) => (
+
+ )),
+ ]}
+ >
+ )
- if (payload?.game?.state === "starting" && mode >= 0 && targetPreview.show) {
- const ship = shipProps(ships, mode, targetPreview)
- const { fields, borders, score } = intersectingShip(ships, ship)
- return (
- <>
- 0}
- color={fields.length ? "red" : borders.length ? "orange" : undefined}
- key={targetPreview.orientation}
- props={ship}
- />
- ({ ...e, i, hit: true })),
- }}
- />
- ({ ...e, i, hit: true })),
- colorOverride: "orange",
- }}
- />
- >
- )
+ case "starting":
+ if (mode < 0 && !targetPreview.show) return null
+ const ship = shipProps(ships, mode, targetPreview)
+ const { fields, borders, score } = intersectingShip(ships, ship)
+ return (
+ <>
+ 0}
+ color={
+ fields.length ? "red" : borders.length ? "orange" : undefined
+ }
+ key={targetPreview.orientation}
+ props={ship}
+ />
+ ({ ...e, i, hit: true })),
+ }}
+ />
+ ({ ...e, i, hit: true })),
+ colorOverride: "orange",
+ }}
+ />
+ >
+ )
+
+ default:
+ return null
}
-
- return <>>
}
export default Targets
diff --git a/leaky-ships/components/Grid.tsx b/leaky-ships/components/Grid.tsx
index ec1c338..db2e8be 100644
--- a/leaky-ships/components/Grid.tsx
+++ b/leaky-ships/components/Grid.tsx
@@ -86,7 +86,7 @@ function Grid() {
className={classNames("tile", { active: active })}
style={{ "--delay": pos + "s" } as CSSProperties}
onClick={() => doEffect(x, y)}
- >
+ />
)
}
diff --git a/leaky-ships/components/Grid2.tsx b/leaky-ships/components/Grid2.tsx
index e8dd0b9..65a3f2e 100644
--- a/leaky-ships/components/Grid2.tsx
+++ b/leaky-ships/components/Grid2.tsx
@@ -87,7 +87,7 @@ function Grid2() {
className={classNames("tile", active ? "active" : "inactive")}
style={{ "--delay": pos + "s" } as CSSProperties}
onClick={() => doEffect(x, y)}
- >
+ />
)
}
diff --git a/leaky-ships/components/Lobby/Player.tsx b/leaky-ships/components/Lobby/Player.tsx
index 6372ddd..5f6d25c 100644
--- a/leaky-ships/components/Lobby/Player.tsx
+++ b/leaky-ships/components/Lobby/Player.tsx
@@ -78,9 +78,7 @@ function Player({
icon={faCaretDown}
/>
- ) : (
- <>>
- )}
+ ) : null}
- {errorType &&
}
- {errorType && (
-
-
-
- )}
+ {errorType ? (
+ <>
+
+
+
+
+ >
+ ) : null}
)