Transfer some Posts and automate original German
Dieser Commit ist enthalten in:
Ursprung
311856415e
Commit
3d95bffb6a
64
README.md
64
README.md
@ -1,47 +1,35 @@
|
|||||||
# Astro Starter Kit: Minimal
|
# SteamWar.de Website
|
||||||
|
|
||||||
```sh
|
## Tech Stack
|
||||||
npm create astro@latest -- --template minimal
|
|
||||||
|
- [Svelte](https://svelte.dev/)
|
||||||
|
- [Astro](https://astro.build/)
|
||||||
|
- [Tailwind CSS](https://tailwindcss.com/)
|
||||||
|
- [Day.js](https://day.js.org/)
|
||||||
|
- [Chart.js](https://www.chartjs.org/)
|
||||||
|
- [astro-i18n](https://github.com/Alexandre-Fernandez/astro-i18n)
|
||||||
|
- [Flowbite Svelte](https://flowbite-svelte.com/)
|
||||||
|
|
||||||
|
## Building
|
||||||
|
|
||||||
|
```bash
|
||||||
|
pnpm install
|
||||||
```
|
```
|
||||||
|
|
||||||
[![Open in StackBlitz](https://developer.stackblitz.com/img/open_in_stackblitz.svg)](https://stackblitz.com/github/withastro/astro/tree/latest/examples/minimal)
|
### Development
|
||||||
[![Open with CodeSandbox](https://assets.codesandbox.io/github/button-edit-lime.svg)](https://codesandbox.io/p/sandbox/github/withastro/astro/tree/latest/examples/minimal)
|
|
||||||
[![Open in GitHub Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/withastro/astro?devcontainer_path=.devcontainer/minimal/devcontainer.json)
|
|
||||||
|
|
||||||
> 🧑🚀 **Seasoned astronaut?** Delete this file. Have fun!
|
```bash
|
||||||
|
pnpm run dev
|
||||||
## 🚀 Project Structure
|
|
||||||
|
|
||||||
Inside of your Astro project, you'll see the following folders and files:
|
|
||||||
|
|
||||||
```text
|
|
||||||
/
|
|
||||||
├── public/
|
|
||||||
├── src/
|
|
||||||
│ └── pages/
|
|
||||||
│ └── index.astro
|
|
||||||
└── package.json
|
|
||||||
```
|
```
|
||||||
|
|
||||||
Astro looks for `.astro` or `.md` files in the `src/pages/` directory. Each page is exposed as a route based on its file name.
|
### Production
|
||||||
|
|
||||||
There's nothing special about `src/components/`, but that's where we like to put any Astro/React/Vue/Svelte/Preact components.
|
```bash
|
||||||
|
pnpm run build
|
||||||
|
```
|
||||||
|
|
||||||
Any static assets, like images, can be placed in the `public/` directory.
|
### i18n-sync
|
||||||
|
|
||||||
## 🧞 Commands
|
```bash
|
||||||
|
pnpm run i18n:sync
|
||||||
All commands are run from the root of the project, from a terminal:
|
```
|
||||||
|
|
||||||
| Command | Action |
|
|
||||||
| :------------------------ | :----------------------------------------------- |
|
|
||||||
| `npm install` | Installs dependencies |
|
|
||||||
| `npm run dev` | Starts local dev server at `localhost:4321` |
|
|
||||||
| `npm run build` | Build your production site to `./dist/` |
|
|
||||||
| `npm run preview` | Preview your build locally, before deploying |
|
|
||||||
| `npm run astro ...` | Run CLI commands like `astro add`, `astro check` |
|
|
||||||
| `npm run astro -- --help` | Get help using the Astro CLI |
|
|
||||||
|
|
||||||
## 👀 Want to learn more?
|
|
||||||
|
|
||||||
Feel free to check [our documentation](https://docs.astro.build) or jump into our [Discord server](https://astro.build/chat).
|
|
15
package.json
15
package.json
@ -14,28 +14,27 @@
|
|||||||
"i18n:sync": "npm run i18n:generate:pages && npm run i18n:generate:types"
|
"i18n:sync": "npm run i18n:generate:pages && npm run i18n:generate:types"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@astrojs/prefetch": "^0.4.1",
|
|
||||||
"@astrojs/svelte": "^5.0.0",
|
"@astrojs/svelte": "^5.0.0",
|
||||||
"@astrojs/tailwind": "^5.0.3",
|
"@astrojs/tailwind": "^5.0.3",
|
||||||
"@astropub/icons": "^0.2.0",
|
"@astropub/icons": "^0.2.0",
|
||||||
"@types/color": "^3.0.6",
|
"@types/color": "^3.0.6",
|
||||||
"@types/crypto-js": "^4.2.1",
|
"@types/crypto-js": "^4.2.1",
|
||||||
"@types/node": "^20.10.1",
|
"@types/node": "^20.10.4",
|
||||||
"cssnano": "^6.0.1",
|
"cssnano": "^6.0.1",
|
||||||
"esbuild": "^0.19.8",
|
"esbuild": "^0.19.8",
|
||||||
"postcss-nesting": "^12.0.1",
|
"postcss-nesting": "^12.0.1",
|
||||||
"sass": "^1.69.5",
|
"sass": "^1.69.5",
|
||||||
"svelte": "^4.2.8",
|
"svelte": "^4.2.8",
|
||||||
"tailwind-merge": "^2.0.0",
|
"tailwind-merge": "^2.1.0",
|
||||||
"tailwindcss": "^3.3.5",
|
"tailwindcss": "^3.3.6",
|
||||||
"typescript": "^5.3.2"
|
"typescript": "^5.3.3"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@codemirror/lang-json": "^6.0.1",
|
"@codemirror/lang-json": "^6.0.1",
|
||||||
"@ddietr/codemirror-themes": "^1.4.2",
|
"@ddietr/codemirror-themes": "^1.4.2",
|
||||||
"astro": "^4.0.2",
|
"astro": "^4.0.3",
|
||||||
"astro-i18n": "^2.1.18",
|
"astro-i18n": "^2.1.18",
|
||||||
"chart.js": "^4.4.0",
|
"chart.js": "^4.4.1",
|
||||||
"chartjs-adapter-dayjs-4": "^1.0.4",
|
"chartjs-adapter-dayjs-4": "^1.0.4",
|
||||||
"chartjs-adapter-moment": "^1.0.1",
|
"chartjs-adapter-moment": "^1.0.1",
|
||||||
"color": "^4.2.3",
|
"color": "^4.2.3",
|
||||||
@ -46,7 +45,7 @@
|
|||||||
"flowbite-svelte": "^0.44.20",
|
"flowbite-svelte": "^0.44.20",
|
||||||
"flowbite-svelte-icons": "^0.4.5",
|
"flowbite-svelte-icons": "^0.4.5",
|
||||||
"sharp": "^0.32.6",
|
"sharp": "^0.32.6",
|
||||||
"svelte-awesome": "^3.2.1",
|
"svelte-awesome": "^3.3.0",
|
||||||
"svelte-codemirror-editor": "^1.2.0",
|
"svelte-codemirror-editor": "^1.2.0",
|
||||||
"svelte-spa-router": "^3.3.0",
|
"svelte-spa-router": "^3.3.0",
|
||||||
"zod": "^3.22.4"
|
"zod": "^3.22.4"
|
||||||
|
423
pnpm-lock.yaml
423
pnpm-lock.yaml
Datei-Diff unterdrückt, da er zu groß ist
Diff laden
@ -1,3 +1,22 @@
|
|||||||
|
<!--
|
||||||
|
- This file is a part of the SteamWar software.
|
||||||
|
-
|
||||||
|
- Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
-
|
||||||
|
- This program is free software: you can redistribute it and/or modify
|
||||||
|
- it under the terms of the GNU Affero General Public License as published by
|
||||||
|
- the Free Software Foundation, either version 3 of the License, or
|
||||||
|
- (at your option) any later version.
|
||||||
|
-
|
||||||
|
- This program is distributed in the hope that it will be useful,
|
||||||
|
- but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
- GNU Affero General Public License for more details.
|
||||||
|
-
|
||||||
|
- You should have received a copy of the GNU Affero General Public License
|
||||||
|
- along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import {t} from "astro-i18n"
|
import {t} from "astro-i18n"
|
||||||
import {dataRepo, schemRepo} from "./repo/repo";
|
import {dataRepo, schemRepo} from "./repo/repo";
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
<!--
|
||||||
|
- This file is a part of the SteamWar software.
|
||||||
|
-
|
||||||
|
- Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
-
|
||||||
|
- This program is free software: you can redistribute it and/or modify
|
||||||
|
- it under the terms of the GNU Affero General Public License as published by
|
||||||
|
- the Free Software Foundation, either version 3 of the License, or
|
||||||
|
- (at your option) any later version.
|
||||||
|
-
|
||||||
|
- This program is distributed in the hope that it will be useful,
|
||||||
|
- but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
- GNU Affero General Public License for more details.
|
||||||
|
-
|
||||||
|
- You should have received a copy of the GNU Affero General Public License
|
||||||
|
- along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import {statsRepo} from "./repo/repo.ts";
|
import {statsRepo} from "./repo/repo.ts";
|
||||||
import {t} from "astro-i18n";
|
import {t} from "astro-i18n";
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
<!--
|
||||||
|
- This file is a part of the SteamWar software.
|
||||||
|
-
|
||||||
|
- Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
-
|
||||||
|
- This program is free software: you can redistribute it and/or modify
|
||||||
|
- it under the terms of the GNU Affero General Public License as published by
|
||||||
|
- the Free Software Foundation, either version 3 of the License, or
|
||||||
|
- (at your option) any later version.
|
||||||
|
-
|
||||||
|
- This program is distributed in the hope that it will be useful,
|
||||||
|
- but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
- GNU Affero General Public License for more details.
|
||||||
|
-
|
||||||
|
- You should have received a copy of the GNU Affero General Public License
|
||||||
|
- along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import {statsRepo} from "./repo/repo.ts";
|
import {statsRepo} from "./repo/repo.ts";
|
||||||
import FightStatsChart from "./FightStatsChart.svelte";
|
import FightStatsChart from "./FightStatsChart.svelte";
|
||||||
|
@ -1,5 +1,24 @@
|
|||||||
|
<!--
|
||||||
|
- This file is a part of the SteamWar software.
|
||||||
|
-
|
||||||
|
- Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
-
|
||||||
|
- This program is free software: you can redistribute it and/or modify
|
||||||
|
- it under the terms of the GNU Affero General Public License as published by
|
||||||
|
- the Free Software Foundation, either version 3 of the License, or
|
||||||
|
- (at your option) any later version.
|
||||||
|
-
|
||||||
|
- This program is distributed in the hope that it will be useful,
|
||||||
|
- but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
- GNU Affero General Public License for more details.
|
||||||
|
-
|
||||||
|
- You should have received a copy of the GNU Affero General Public License
|
||||||
|
- along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import {onMount} from "svelte"
|
import {onDestroy, onMount} from "svelte"
|
||||||
import {
|
import {
|
||||||
Chart,
|
Chart,
|
||||||
LineController,
|
LineController,
|
||||||
@ -60,6 +79,11 @@
|
|||||||
}
|
}
|
||||||
)
|
)
|
||||||
})
|
})
|
||||||
|
|
||||||
|
onDestroy(() => {
|
||||||
|
chart.destroy()
|
||||||
|
})
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<div>
|
<div>
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
<!--
|
||||||
|
- This file is a part of the SteamWar software.
|
||||||
|
-
|
||||||
|
- Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
-
|
||||||
|
- This program is free software: you can redistribute it and/or modify
|
||||||
|
- it under the terms of the GNU Affero General Public License as published by
|
||||||
|
- the Free Software Foundation, either version 3 of the License, or
|
||||||
|
- (at your option) any later version.
|
||||||
|
-
|
||||||
|
- This program is distributed in the hope that it will be useful,
|
||||||
|
- but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
- GNU Affero General Public License for more details.
|
||||||
|
-
|
||||||
|
- You should have received a copy of the GNU Affero General Public License
|
||||||
|
- along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import {window} from "./util.ts";
|
import {window} from "./util.ts";
|
||||||
import {astroI18n, t} from "astro-i18n";
|
import {astroI18n, t} from "astro-i18n";
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
<!--
|
||||||
|
- This file is a part of the SteamWar software.
|
||||||
|
-
|
||||||
|
- Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
-
|
||||||
|
- This program is free software: you can redistribute it and/or modify
|
||||||
|
- it under the terms of the GNU Affero General Public License as published by
|
||||||
|
- the Free Software Foundation, either version 3 of the License, or
|
||||||
|
- (at your option) any later version.
|
||||||
|
-
|
||||||
|
- This program is distributed in the hope that it will be useful,
|
||||||
|
- but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
- GNU Affero General Public License for more details.
|
||||||
|
-
|
||||||
|
- You should have received a copy of the GNU Affero General Public License
|
||||||
|
- along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import {window} from "./util.ts";
|
import {window} from "./util.ts";
|
||||||
import {t} from "astro-i18n";
|
import {t} from "astro-i18n";
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
<!--
|
||||||
|
- This file is a part of the SteamWar software.
|
||||||
|
-
|
||||||
|
- Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
-
|
||||||
|
- This program is free software: you can redistribute it and/or modify
|
||||||
|
- it under the terms of the GNU Affero General Public License as published by
|
||||||
|
- the Free Software Foundation, either version 3 of the License, or
|
||||||
|
- (at your option) any later version.
|
||||||
|
-
|
||||||
|
- This program is distributed in the hope that it will be useful,
|
||||||
|
- but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
- GNU Affero General Public License for more details.
|
||||||
|
-
|
||||||
|
- You should have received a copy of the GNU Affero General Public License
|
||||||
|
- along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import {l} from "../util/util.ts";
|
import {l} from "../util/util.ts";
|
||||||
import {t} from "astro-i18n";
|
import {t} from "astro-i18n";
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
<!--
|
||||||
|
- This file is a part of the SteamWar software.
|
||||||
|
-
|
||||||
|
- Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
-
|
||||||
|
- This program is free software: you can redistribute it and/or modify
|
||||||
|
- it under the terms of the GNU Affero General Public License as published by
|
||||||
|
- the Free Software Foundation, either version 3 of the License, or
|
||||||
|
- (at your option) any later version.
|
||||||
|
-
|
||||||
|
- This program is distributed in the hope that it will be useful,
|
||||||
|
- but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
- GNU Affero General Public License for more details.
|
||||||
|
-
|
||||||
|
- You should have received a copy of the GNU Affero General Public License
|
||||||
|
- along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
|
|
||||||
import {server} from "./stores/stores.ts";
|
import {server} from "./stores/stores.ts";
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
<!--
|
||||||
|
- This file is a part of the SteamWar software.
|
||||||
|
-
|
||||||
|
- Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
-
|
||||||
|
- This program is free software: you can redistribute it and/or modify
|
||||||
|
- it under the terms of the GNU Affero General Public License as published by
|
||||||
|
- the Free Software Foundation, either version 3 of the License, or
|
||||||
|
- (at your option) any later version.
|
||||||
|
-
|
||||||
|
- This program is distributed in the hope that it will be useful,
|
||||||
|
- but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
- GNU Affero General Public License for more details.
|
||||||
|
-
|
||||||
|
- You should have received a copy of the GNU Affero General Public License
|
||||||
|
- along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import { t } from "astro-i18n"
|
import { t } from "astro-i18n"
|
||||||
import {server} from "./stores/stores.ts";
|
import {server} from "./stores/stores.ts";
|
||||||
@ -14,6 +33,6 @@
|
|||||||
<h2>{t("status.status")}: <span class="text-green-500">{t("status.online")}</span></h2>
|
<h2>{t("status.status")}: <span class="text-green-500">{t("status.online")}</span></h2>
|
||||||
<h2>{t("status.players", { count: `${data.players.online}/${data.players.max}`})}</h2>
|
<h2>{t("status.players", { count: `${data.players.online}/${data.players.max}`})}</h2>
|
||||||
<h2>{t("status.version", { version: generateVersionString(data.version.name)})}</h2>
|
<h2>{t("status.version", { version: generateVersionString(data.version.name)})}</h2>
|
||||||
{:catch error}
|
{:catch _}
|
||||||
<h1>{t("status.status")}: <span class="text-red-500">{t("status.offline")}</span></h1>
|
<h1>{t("status.status")}: <span class="text-red-500">{t("status.offline")}</span></h1>
|
||||||
{/await}
|
{/await}
|
@ -8,7 +8,6 @@ interface Props {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const {tag} = Astro.props;
|
const {tag} = Astro.props;
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
<a href={l(`/announcements/tags/${tag}`)}>
|
<a href={l(`/announcements/tags/${tag}`)}>
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
<!--
|
||||||
|
- This file is a part of the SteamWar software.
|
||||||
|
-
|
||||||
|
- Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
-
|
||||||
|
- This program is free software: you can redistribute it and/or modify
|
||||||
|
- it under the terms of the GNU Affero General Public License as published by
|
||||||
|
- the Free Software Foundation, either version 3 of the License, or
|
||||||
|
- (at your option) any later version.
|
||||||
|
-
|
||||||
|
- This program is distributed in the hope that it will be useful,
|
||||||
|
- but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
- GNU Affero General Public License for more details.
|
||||||
|
-
|
||||||
|
- You should have received a copy of the GNU Affero General Public License
|
||||||
|
- along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import type {ConditionsFailedEvent, RouteDefinition} from "svelte-spa-router";
|
import type {ConditionsFailedEvent, RouteDefinition} from "svelte-spa-router";
|
||||||
import wrap from "svelte-spa-router/wrap";
|
import wrap from "svelte-spa-router/wrap";
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
<!--
|
||||||
|
- This file is a part of the SteamWar software.
|
||||||
|
-
|
||||||
|
- Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
-
|
||||||
|
- This program is free software: you can redistribute it and/or modify
|
||||||
|
- it under the terms of the GNU Affero General Public License as published by
|
||||||
|
- the Free Software Foundation, either version 3 of the License, or
|
||||||
|
- (at your option) any later version.
|
||||||
|
-
|
||||||
|
- This program is distributed in the hope that it will be useful,
|
||||||
|
- but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
- GNU Affero General Public License for more details.
|
||||||
|
-
|
||||||
|
- You should have received a copy of the GNU Affero General Public License
|
||||||
|
- along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import {Button, Modal} from "flowbite-svelte";
|
import {Button, Modal} from "flowbite-svelte";
|
||||||
|
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
<!--
|
||||||
|
- This file is a part of the SteamWar software.
|
||||||
|
-
|
||||||
|
- Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
-
|
||||||
|
- This program is free software: you can redistribute it and/or modify
|
||||||
|
- it under the terms of the GNU Affero General Public License as published by
|
||||||
|
- the Free Software Foundation, either version 3 of the License, or
|
||||||
|
- (at your option) any later version.
|
||||||
|
-
|
||||||
|
- This program is distributed in the hope that it will be useful,
|
||||||
|
- but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
- GNU Affero General Public License for more details.
|
||||||
|
-
|
||||||
|
- You should have received a copy of the GNU Affero General Public License
|
||||||
|
- along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import {Input, Label, Select} from "flowbite-svelte";
|
import {Input, Label, Select} from "flowbite-svelte";
|
||||||
import TypeAheadSearch from "./TypeAheadSearch.svelte";
|
import TypeAheadSearch from "./TypeAheadSearch.svelte";
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
<!--
|
||||||
|
- This file is a part of the SteamWar software.
|
||||||
|
-
|
||||||
|
- Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
-
|
||||||
|
- This program is free software: you can redistribute it and/or modify
|
||||||
|
- it under the terms of the GNU Affero General Public License as published by
|
||||||
|
- the Free Software Foundation, either version 3 of the License, or
|
||||||
|
- (at your option) any later version.
|
||||||
|
-
|
||||||
|
- This program is distributed in the hope that it will be useful,
|
||||||
|
- but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
- GNU Affero General Public License for more details.
|
||||||
|
-
|
||||||
|
- You should have received a copy of the GNU Affero General Public License
|
||||||
|
- along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import {Button, Dropdown, DropdownItem, Search} from 'flowbite-svelte'
|
import {Button, Dropdown, DropdownItem, Search} from 'flowbite-svelte'
|
||||||
|
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
<!--
|
||||||
|
- This file is a part of the SteamWar software.
|
||||||
|
-
|
||||||
|
- Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
-
|
||||||
|
- This program is free software: you can redistribute it and/or modify
|
||||||
|
- it under the terms of the GNU Affero General Public License as published by
|
||||||
|
- the Free Software Foundation, either version 3 of the License, or
|
||||||
|
- (at your option) any later version.
|
||||||
|
-
|
||||||
|
- This program is distributed in the hope that it will be useful,
|
||||||
|
- but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
- GNU Affero General Public License for more details.
|
||||||
|
-
|
||||||
|
- You should have received a copy of the GNU Affero General Public License
|
||||||
|
- along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import {ArrowLeftSolid} from "flowbite-svelte-icons";
|
import {ArrowLeftSolid} from "flowbite-svelte-icons";
|
||||||
import {Button, Card, Input, Label, Navbar, NavBrand, NavHamburger, NavUl, Spinner} from "flowbite-svelte";
|
import {Button, Card, Input, Label, Navbar, NavBrand, NavHamburger, NavUl, Spinner} from "flowbite-svelte";
|
||||||
@ -37,7 +56,7 @@ async function createBranch() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
async function deleteBranch(con: boolean = false) {
|
async function deleteBranch(con: boolean) {
|
||||||
if (selectedBranch !== "master") {
|
if (selectedBranch !== "master") {
|
||||||
let conf = con || confirm("Are you sure you want to delete this branch?")
|
let conf = con || confirm("Are you sure you want to delete this branch?")
|
||||||
if(conf) {
|
if(conf) {
|
||||||
@ -101,7 +120,7 @@ async function mergeBranch() {
|
|||||||
{/if}
|
{/if}
|
||||||
<Button on:click={createFile} color="alternative">Create File</Button>
|
<Button on:click={createFile} color="alternative">Create File</Button>
|
||||||
{#if selectedBranch !== "master"}
|
{#if selectedBranch !== "master"}
|
||||||
<Button on:click={deleteBranch} color="ghost">Delete Branch</Button>
|
<Button on:click={() => deleteBranch(false)} color="none">Delete Branch</Button>
|
||||||
{/if}
|
{/if}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -111,7 +130,8 @@ async function mergeBranch() {
|
|||||||
<summary class="p-4 transition-colors hover:bg-gray-700 cursor-pointer">{key}</summary>
|
<summary class="p-4 transition-colors hover:bg-gray-700 cursor-pointer">{key}</summary>
|
||||||
<ul>
|
<ul>
|
||||||
{#each value as page}
|
{#each value as page}
|
||||||
{@const match = nameRegex.exec(page.path) ? nameRegex.exec(page.path)[0] : ""}
|
{@const nameRegexExec = nameRegex.exec(page.path)}
|
||||||
|
{@const match = nameRegexExec ? nameRegexExec[0] : ""}
|
||||||
{@const startIndex = page.path.indexOf(match)}
|
{@const startIndex = page.path.indexOf(match)}
|
||||||
{@const endIndex = startIndex + match.length}
|
{@const endIndex = startIndex + match.length}
|
||||||
<li class="p-4 transition-colors hover:bg-gray-700 cursor-pointer" on:click|preventDefault={() => selected = page.id}>
|
<li class="p-4 transition-colors hover:bg-gray-700 cursor-pointer" on:click|preventDefault={() => selected = page.id}>
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
<!--
|
||||||
|
- This file is a part of the SteamWar software.
|
||||||
|
-
|
||||||
|
- Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
-
|
||||||
|
- This program is free software: you can redistribute it and/or modify
|
||||||
|
- it under the terms of the GNU Affero General Public License as published by
|
||||||
|
- the Free Software Foundation, either version 3 of the License, or
|
||||||
|
- (at your option) any later version.
|
||||||
|
-
|
||||||
|
- This program is distributed in the hope that it will be useful,
|
||||||
|
- but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
- GNU Affero General Public License for more details.
|
||||||
|
-
|
||||||
|
- You should have received a copy of the GNU Affero General Public License
|
||||||
|
- along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import {Avatar, Navbar, NavBrand, Spinner, TabItem, Tabs} from "flowbite-svelte";
|
import {Avatar, Navbar, NavBrand, Spinner, TabItem, Tabs} from "flowbite-svelte";
|
||||||
import EventEdit from "./event/EventEdit.svelte";
|
import EventEdit from "./event/EventEdit.svelte";
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
<!--
|
||||||
|
- This file is a part of the SteamWar software.
|
||||||
|
-
|
||||||
|
- Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
-
|
||||||
|
- This program is free software: you can redistribute it and/or modify
|
||||||
|
- it under the terms of the GNU Affero General Public License as published by
|
||||||
|
- the Free Software Foundation, either version 3 of the License, or
|
||||||
|
- (at your option) any later version.
|
||||||
|
-
|
||||||
|
- This program is distributed in the hope that it will be useful,
|
||||||
|
- but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
- GNU Affero General Public License for more details.
|
||||||
|
-
|
||||||
|
- You should have received a copy of the GNU Affero General Public License
|
||||||
|
- along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import {Avatar, Navbar, NavBrand, Spinner, TabItem, Tabs} from "flowbite-svelte";
|
import {Avatar, Navbar, NavBrand, Spinner, TabItem, Tabs} from "flowbite-svelte";
|
||||||
import EventEdit from "./event/EventEdit.svelte";
|
import EventEdit from "./event/EventEdit.svelte";
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
<!--
|
||||||
|
- This file is a part of the SteamWar software.
|
||||||
|
-
|
||||||
|
- Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
-
|
||||||
|
- This program is free software: you can redistribute it and/or modify
|
||||||
|
- it under the terms of the GNU Affero General Public License as published by
|
||||||
|
- the Free Software Foundation, either version 3 of the License, or
|
||||||
|
- (at your option) any later version.
|
||||||
|
-
|
||||||
|
- This program is distributed in the hope that it will be useful,
|
||||||
|
- but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
- GNU Affero General Public License for more details.
|
||||||
|
-
|
||||||
|
- You should have received a copy of the GNU Affero General Public License
|
||||||
|
- along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
|
|
||||||
import {Button, Modal, Navbar, NavBrand, NavHamburger, NavLi, NavUl, Spinner} from "flowbite-svelte";
|
import {Button, Modal, Navbar, NavBrand, NavHamburger, NavLi, NavUl, Spinner} from "flowbite-svelte";
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
<!--
|
||||||
|
- This file is a part of the SteamWar software.
|
||||||
|
-
|
||||||
|
- Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
-
|
||||||
|
- This program is free software: you can redistribute it and/or modify
|
||||||
|
- it under the terms of the GNU Affero General Public License as published by
|
||||||
|
- the Free Software Foundation, either version 3 of the License, or
|
||||||
|
- (at your option) any later version.
|
||||||
|
-
|
||||||
|
- This program is distributed in the hope that it will be useful,
|
||||||
|
- but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
- GNU Affero General Public License for more details.
|
||||||
|
-
|
||||||
|
- You should have received a copy of the GNU Affero General Public License
|
||||||
|
- along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import {Button, Input, Label, Spinner, Toast} from "flowbite-svelte";
|
import {Button, Input, Label, Spinner, Toast} from "flowbite-svelte";
|
||||||
import {fly} from "svelte/transition";
|
import {fly} from "svelte/transition";
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
<!--
|
||||||
|
- This file is a part of the SteamWar software.
|
||||||
|
-
|
||||||
|
- Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
-
|
||||||
|
- This program is free software: you can redistribute it and/or modify
|
||||||
|
- it under the terms of the GNU Affero General Public License as published by
|
||||||
|
- the Free Software Foundation, either version 3 of the License, or
|
||||||
|
- (at your option) any later version.
|
||||||
|
-
|
||||||
|
- This program is distributed in the hope that it will be useful,
|
||||||
|
- but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
- GNU Affero General Public License for more details.
|
||||||
|
-
|
||||||
|
- You should have received a copy of the GNU Affero General Public License
|
||||||
|
- along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import {onMount} from "svelte";
|
import {onMount} from "svelte";
|
||||||
import {replace} from "svelte-spa-router";
|
import {replace} from "svelte-spa-router";
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
<!--
|
||||||
|
- This file is a part of the SteamWar software.
|
||||||
|
-
|
||||||
|
- Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
-
|
||||||
|
- This program is free software: you can redistribute it and/or modify
|
||||||
|
- it under the terms of the GNU Affero General Public License as published by
|
||||||
|
- the Free Software Foundation, either version 3 of the License, or
|
||||||
|
- (at your option) any later version.
|
||||||
|
-
|
||||||
|
- This program is distributed in the hope that it will be useful,
|
||||||
|
- but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
- GNU Affero General Public License for more details.
|
||||||
|
-
|
||||||
|
- You should have received a copy of the GNU Affero General Public License
|
||||||
|
- along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import {Button, Card, Checkbox, Input, Label, Navbar, NavBrand, Radio, Spinner} from "flowbite-svelte";
|
import {Button, Card, Checkbox, Input, Label, Navbar, NavBrand, Radio, Spinner} from "flowbite-svelte";
|
||||||
import {ArrowLeftSolid} from "flowbite-svelte-icons";
|
import {ArrowLeftSolid} from "flowbite-svelte-icons";
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
<!--
|
||||||
|
- This file is a part of the SteamWar software.
|
||||||
|
-
|
||||||
|
- Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
-
|
||||||
|
- This program is free software: you can redistribute it and/or modify
|
||||||
|
- it under the terms of the GNU Affero General Public License as published by
|
||||||
|
- the Free Software Foundation, either version 3 of the License, or
|
||||||
|
- (at your option) any later version.
|
||||||
|
-
|
||||||
|
- This program is distributed in the hope that it will be useful,
|
||||||
|
- but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
- GNU Affero General Public License for more details.
|
||||||
|
-
|
||||||
|
- You should have received a copy of the GNU Affero General Public License
|
||||||
|
- along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import {Spinner, Toolbar, ToolbarButton, ToolbarGroup, Tooltip} from "flowbite-svelte";
|
import {Spinner, Toolbar, ToolbarButton, ToolbarGroup, Tooltip} from "flowbite-svelte";
|
||||||
import {json} from "@codemirror/lang-json";
|
import {json} from "@codemirror/lang-json";
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
<!--
|
||||||
|
- This file is a part of the SteamWar software.
|
||||||
|
-
|
||||||
|
- Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
-
|
||||||
|
- This program is free software: you can redistribute it and/or modify
|
||||||
|
- it under the terms of the GNU Affero General Public License as published by
|
||||||
|
- the Free Software Foundation, either version 3 of the License, or
|
||||||
|
- (at your option) any later version.
|
||||||
|
-
|
||||||
|
- This program is distributed in the hope that it will be useful,
|
||||||
|
- but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
- GNU Affero General Public License for more details.
|
||||||
|
-
|
||||||
|
- You should have received a copy of the GNU Affero General Public License
|
||||||
|
- along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import {onDestroy, onMount} from "svelte";
|
import {onDestroy, onMount} from "svelte";
|
||||||
import EasyMDE from "easymde";
|
import EasyMDE from "easymde";
|
||||||
|
@ -1,9 +1,28 @@
|
|||||||
|
<!--
|
||||||
|
- This file is a part of the SteamWar software.
|
||||||
|
-
|
||||||
|
- Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
-
|
||||||
|
- This program is free software: you can redistribute it and/or modify
|
||||||
|
- it under the terms of the GNU Affero General Public License as published by
|
||||||
|
- the Free Software Foundation, either version 3 of the License, or
|
||||||
|
- (at your option) any later version.
|
||||||
|
-
|
||||||
|
- This program is distributed in the hope that it will be useful,
|
||||||
|
- but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
- GNU Affero General Public License for more details.
|
||||||
|
-
|
||||||
|
- You should have received a copy of the GNU Affero General Public License
|
||||||
|
- along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import type {ExtendedEvent} from "../../../types/event.js";
|
import type {ExtendedEvent} from "../../../types/event.js";
|
||||||
import {Button, Heading, Input, Label, Modal, Range, Select, Toast, Toggle} from "flowbite-svelte";
|
import {Button, Heading, Input, Label, Modal, Range, Select, Toast, Toggle} from "flowbite-svelte";
|
||||||
import {schemTypes} from "../../../stores/stores.js";
|
import {schemTypes} from "../../../stores/stores.js";
|
||||||
import * as dayjs from "dayjs";
|
import dayjs from "dayjs";
|
||||||
import * as utc from "dayjs/plugin/utc"
|
import utc from "dayjs/plugin/utc"
|
||||||
import type {UpdateEvent} from "../../../repo/event.js";
|
import type {UpdateEvent} from "../../../repo/event.js";
|
||||||
import {eventRepo} from "../../../repo/repo.js";
|
import {eventRepo} from "../../../repo/repo.js";
|
||||||
import ErrorModal from "../../components/ErrorModal.svelte";
|
import ErrorModal from "../../components/ErrorModal.svelte";
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
<!--
|
||||||
|
- This file is a part of the SteamWar software.
|
||||||
|
-
|
||||||
|
- Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
-
|
||||||
|
- This program is free software: you can redistribute it and/or modify
|
||||||
|
- it under the terms of the GNU Affero General Public License as published by
|
||||||
|
- the Free Software Foundation, either version 3 of the License, or
|
||||||
|
- (at your option) any later version.
|
||||||
|
-
|
||||||
|
- This program is distributed in the hope that it will be useful,
|
||||||
|
- but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
- GNU Affero General Public License for more details.
|
||||||
|
-
|
||||||
|
- You should have received a copy of the GNU Affero General Public License
|
||||||
|
- along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import {EditOutline, InboxSolid, TrashBinOutline} from "flowbite-svelte-icons";
|
import {EditOutline, InboxSolid, TrashBinOutline} from "flowbite-svelte-icons";
|
||||||
import {Button, Checkbox, Modal, Toolbar, ToolbarButton} from "flowbite-svelte";
|
import {Button, Checkbox, Modal, Toolbar, ToolbarButton} from "flowbite-svelte";
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
<!--
|
||||||
|
- This file is a part of the SteamWar software.
|
||||||
|
-
|
||||||
|
- Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
-
|
||||||
|
- This program is free software: you can redistribute it and/or modify
|
||||||
|
- it under the terms of the GNU Affero General Public License as published by
|
||||||
|
- the Free Software Foundation, either version 3 of the License, or
|
||||||
|
- (at your option) any later version.
|
||||||
|
-
|
||||||
|
- This program is distributed in the hope that it will be useful,
|
||||||
|
- but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
- GNU Affero General Public License for more details.
|
||||||
|
-
|
||||||
|
- You should have received a copy of the GNU Affero General Public License
|
||||||
|
- along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import type {EventFight, ExtendedEvent} from "../../../types/event.js";
|
import type {EventFight, ExtendedEvent} from "../../../types/event.js";
|
||||||
import {
|
import {
|
||||||
@ -21,7 +40,7 @@
|
|||||||
import {groups, players} from "../../../stores/stores.js";
|
import {groups, players} from "../../../stores/stores.js";
|
||||||
import TypeAheadSearch from "../../components/TypeAheadSearch.svelte";
|
import TypeAheadSearch from "../../components/TypeAheadSearch.svelte";
|
||||||
import type {UpdateFight} from "../../../repo/fight.js";
|
import type {UpdateFight} from "../../../repo/fight.js";
|
||||||
import * as dayjs from "dayjs";
|
import dayjs from "dayjs";
|
||||||
import * as duration from "dayjs/plugin/duration"
|
import * as duration from "dayjs/plugin/duration"
|
||||||
dayjs.extend(duration)
|
dayjs.extend(duration)
|
||||||
|
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
<!--
|
||||||
|
- This file is a part of the SteamWar software.
|
||||||
|
-
|
||||||
|
- Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
-
|
||||||
|
- This program is free software: you can redistribute it and/or modify
|
||||||
|
- it under the terms of the GNU Affero General Public License as published by
|
||||||
|
- the Free Software Foundation, either version 3 of the License, or
|
||||||
|
- (at your option) any later version.
|
||||||
|
-
|
||||||
|
- This program is distributed in the hope that it will be useful,
|
||||||
|
- but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
- GNU Affero General Public License for more details.
|
||||||
|
-
|
||||||
|
- You should have received a copy of the GNU Affero General Public License
|
||||||
|
- along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import {Avatar, Button, Modal} from "flowbite-svelte";
|
import {Avatar, Button, Modal} from "flowbite-svelte";
|
||||||
import type {ExtendedEvent} from "../../../types/event.js";
|
import type {ExtendedEvent} from "../../../types/event.js";
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
<!--
|
||||||
|
- This file is a part of the SteamWar software.
|
||||||
|
-
|
||||||
|
- Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
-
|
||||||
|
- This program is free software: you can redistribute it and/or modify
|
||||||
|
- it under the terms of the GNU Affero General Public License as published by
|
||||||
|
- the Free Software Foundation, either version 3 of the License, or
|
||||||
|
- (at your option) any later version.
|
||||||
|
-
|
||||||
|
- This program is distributed in the hope that it will be useful,
|
||||||
|
- but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
- GNU Affero General Public License for more details.
|
||||||
|
-
|
||||||
|
- You should have received a copy of the GNU Affero General Public License
|
||||||
|
- along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import {Button, Modal} from "flowbite-svelte";
|
import {Button, Modal} from "flowbite-svelte";
|
||||||
import type {ExtendedEvent} from "../../../../types/event.js";
|
import type {ExtendedEvent} from "../../../../types/event.js";
|
||||||
@ -6,7 +25,7 @@
|
|||||||
import type {CreateFight} from "../../../../repo/fight.ts";
|
import type {CreateFight} from "../../../../repo/fight.ts";
|
||||||
import ErrorModal from "../../../components/ErrorModal.svelte";
|
import ErrorModal from "../../../components/ErrorModal.svelte";
|
||||||
import {createEventDispatcher} from "svelte";
|
import {createEventDispatcher} from "svelte";
|
||||||
import * as dayjs from "dayjs";
|
import dayjs from "dayjs";
|
||||||
|
|
||||||
let dispatch = createEventDispatcher();
|
let dispatch = createEventDispatcher();
|
||||||
|
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
<!--
|
||||||
|
- This file is a part of the SteamWar software.
|
||||||
|
-
|
||||||
|
- Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
-
|
||||||
|
- This program is free software: you can redistribute it and/or modify
|
||||||
|
- it under the terms of the GNU Affero General Public License as published by
|
||||||
|
- the Free Software Foundation, either version 3 of the License, or
|
||||||
|
- (at your option) any later version.
|
||||||
|
-
|
||||||
|
- This program is distributed in the hope that it will be useful,
|
||||||
|
- but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
- GNU Affero General Public License for more details.
|
||||||
|
-
|
||||||
|
- You should have received a copy of the GNU Affero General Public License
|
||||||
|
- along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import {Button, Input, Label, Modal, Select} from "flowbite-svelte";
|
import {Button, Input, Label, Modal, Select} from "flowbite-svelte";
|
||||||
import type {EventFight, ExtendedEvent} from "../../../../types/event.js";
|
import type {EventFight, ExtendedEvent} from "../../../../types/event.js";
|
||||||
@ -6,8 +25,8 @@
|
|||||||
import {fightRepo} from "../../../../repo/repo.js";
|
import {fightRepo} from "../../../../repo/repo.js";
|
||||||
import ErrorModal from "../../../components/ErrorModal.svelte";
|
import ErrorModal from "../../../components/ErrorModal.svelte";
|
||||||
import {createEventDispatcher} from "svelte";
|
import {createEventDispatcher} from "svelte";
|
||||||
import * as dayjs from "dayjs";
|
import dayjs from "dayjs";
|
||||||
import * as utc from "dayjs/plugin/utc";
|
import utc from "dayjs/plugin/utc";
|
||||||
|
|
||||||
dayjs.extend(utc);
|
dayjs.extend(utc);
|
||||||
|
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
<!--
|
||||||
|
- This file is a part of the SteamWar software.
|
||||||
|
-
|
||||||
|
- Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
-
|
||||||
|
- This program is free software: you can redistribute it and/or modify
|
||||||
|
- it under the terms of the GNU Affero General Public License as published by
|
||||||
|
- the Free Software Foundation, either version 3 of the License, or
|
||||||
|
- (at your option) any later version.
|
||||||
|
-
|
||||||
|
- This program is distributed in the hope that it will be useful,
|
||||||
|
- but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
- GNU Affero General Public License for more details.
|
||||||
|
-
|
||||||
|
- You should have received a copy of the GNU Affero General Public License
|
||||||
|
- along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import {createEventDispatcher} from "svelte";
|
import {createEventDispatcher} from "svelte";
|
||||||
|
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
<!--
|
||||||
|
- This file is a part of the SteamWar software.
|
||||||
|
-
|
||||||
|
- Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
-
|
||||||
|
- This program is free software: you can redistribute it and/or modify
|
||||||
|
- it under the terms of the GNU Affero General Public License as published by
|
||||||
|
- the Free Software Foundation, either version 3 of the License, or
|
||||||
|
- (at your option) any later version.
|
||||||
|
-
|
||||||
|
- This program is distributed in the hope that it will be useful,
|
||||||
|
- but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
- GNU Affero General Public License for more details.
|
||||||
|
-
|
||||||
|
- You should have received a copy of the GNU Affero General Public License
|
||||||
|
- along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import type {ExtendedEvent} from "../../../types/event.js";
|
import type {ExtendedEvent} from "../../../types/event.js";
|
||||||
import TeamChip from "./TeamChip.svelte";
|
import TeamChip from "./TeamChip.svelte";
|
||||||
@ -8,7 +27,7 @@
|
|||||||
import {PlusSolid} from "flowbite-svelte-icons";
|
import {PlusSolid} from "flowbite-svelte-icons";
|
||||||
import {fightRepo} from "../../../repo/repo.js";
|
import {fightRepo} from "../../../repo/repo.js";
|
||||||
import {replace} from "svelte-spa-router";
|
import {replace} from "svelte-spa-router";
|
||||||
import * as dayjs from "dayjs";
|
import dayjs from "dayjs";
|
||||||
|
|
||||||
export let data: ExtendedEvent;
|
export let data: ExtendedEvent;
|
||||||
$: teams = new Map<number, Team>(data.teams.map(team => [team.id, team]));
|
$: teams = new Map<number, Team>(data.teams.map(team => [team.id, team]));
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
<!--
|
||||||
|
- This file is a part of the SteamWar software.
|
||||||
|
-
|
||||||
|
- Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
-
|
||||||
|
- This program is free software: you can redistribute it and/or modify
|
||||||
|
- it under the terms of the GNU Affero General Public License as published by
|
||||||
|
- the Free Software Foundation, either version 3 of the License, or
|
||||||
|
- (at your option) any later version.
|
||||||
|
-
|
||||||
|
- This program is distributed in the hope that it will be useful,
|
||||||
|
- but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
- GNU Affero General Public License for more details.
|
||||||
|
-
|
||||||
|
- You should have received a copy of the GNU Affero General Public License
|
||||||
|
- along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import type {Team} from "../../../types/team.js";
|
import type {Team} from "../../../types/team.js";
|
||||||
import {brightness, colorFromTeam, lighten} from "../../util.js";
|
import {brightness, colorFromTeam, lighten} from "../../util.js";
|
||||||
|
@ -1,9 +1,28 @@
|
|||||||
|
<!--
|
||||||
|
- This file is a part of the SteamWar software.
|
||||||
|
-
|
||||||
|
- Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
-
|
||||||
|
- This program is free software: you can redistribute it and/or modify
|
||||||
|
- it under the terms of the GNU Affero General Public License as published by
|
||||||
|
- the Free Software Foundation, either version 3 of the License, or
|
||||||
|
- (at your option) any later version.
|
||||||
|
-
|
||||||
|
- This program is distributed in the hope that it will be useful,
|
||||||
|
- but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
- GNU Affero General Public License for more details.
|
||||||
|
-
|
||||||
|
- You should have received a copy of the GNU Affero General Public License
|
||||||
|
- along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import {Button, Input, Label, Modal} from "flowbite-svelte";
|
import {Button, Input, Label, Modal} from "flowbite-svelte";
|
||||||
import {createEventDispatcher} from "svelte";
|
import {createEventDispatcher} from "svelte";
|
||||||
import ErrorModal from "../../components/ErrorModal.svelte";
|
import ErrorModal from "../../components/ErrorModal.svelte";
|
||||||
import {eventRepo} from "../../../repo/repo.js";
|
import {eventRepo} from "../../../repo/repo.js";
|
||||||
import * as dayjs from "dayjs";
|
import dayjs from "dayjs";
|
||||||
|
|
||||||
export let open = false;
|
export let open = false;
|
||||||
const dispatch = createEventDispatcher();
|
const dispatch = createEventDispatcher();
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
<!--
|
||||||
|
- This file is a part of the SteamWar software.
|
||||||
|
-
|
||||||
|
- Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
-
|
||||||
|
- This program is free software: you can redistribute it and/or modify
|
||||||
|
- it under the terms of the GNU Affero General Public License as published by
|
||||||
|
- the Free Software Foundation, either version 3 of the License, or
|
||||||
|
- (at your option) any later version.
|
||||||
|
-
|
||||||
|
- This program is distributed in the hope that it will be useful,
|
||||||
|
- but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
- GNU Affero General Public License for more details.
|
||||||
|
-
|
||||||
|
- You should have received a copy of the GNU Affero General Public License
|
||||||
|
- along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import {Card} from "flowbite-svelte";
|
import {Card} from "flowbite-svelte";
|
||||||
import {link} from 'svelte-spa-router'
|
import {link} from 'svelte-spa-router'
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
/*
|
||||||
|
* This file is a part of the SteamWar software.
|
||||||
|
*
|
||||||
|
* Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU Affero General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU Affero General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU Affero General Public License
|
||||||
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
import Color from "color";
|
import Color from "color";
|
||||||
import type {Team} from "../types/team.js";
|
import type {Team} from "../types/team.js";
|
||||||
import type {ListPage, PageList} from "../types/page.ts";
|
import type {ListPage, PageList} from "../types/page.ts";
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
<!--
|
||||||
|
- This file is a part of the SteamWar software.
|
||||||
|
-
|
||||||
|
- Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
-
|
||||||
|
- This program is free software: you can redistribute it and/or modify
|
||||||
|
- it under the terms of the GNU Affero General Public License as published by
|
||||||
|
- the Free Software Foundation, either version 3 of the License, or
|
||||||
|
- (at your option) any later version.
|
||||||
|
-
|
||||||
|
- This program is distributed in the hope that it will be useful,
|
||||||
|
- but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
- GNU Affero General Public License for more details.
|
||||||
|
-
|
||||||
|
- You should have received a copy of the GNU Affero General Public License
|
||||||
|
- along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import {createEventDispatcher} from "svelte";
|
import {createEventDispatcher} from "svelte";
|
||||||
import {schemRepo} from "../repo/repo";
|
import {schemRepo} from "../repo/repo";
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
<!--
|
||||||
|
- This file is a part of the SteamWar software.
|
||||||
|
-
|
||||||
|
- Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
-
|
||||||
|
- This program is free software: you can redistribute it and/or modify
|
||||||
|
- it under the terms of the GNU Affero General Public License as published by
|
||||||
|
- the Free Software Foundation, either version 3 of the License, or
|
||||||
|
- (at your option) any later version.
|
||||||
|
-
|
||||||
|
- This program is distributed in the hope that it will be useful,
|
||||||
|
- but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
- GNU Affero General Public License for more details.
|
||||||
|
-
|
||||||
|
- You should have received a copy of the GNU Affero General Public License
|
||||||
|
- along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import {astroI18n, t} from "astro-i18n";
|
import {astroI18n, t} from "astro-i18n";
|
||||||
import {CheckSolid, XCircleOutline} from "flowbite-svelte-icons";
|
import {CheckSolid, XCircleOutline} from "flowbite-svelte-icons";
|
||||||
@ -6,7 +25,7 @@
|
|||||||
import {createEventDispatcher} from "svelte";
|
import {createEventDispatcher} from "svelte";
|
||||||
import {schemRepo} from "../repo/repo";
|
import {schemRepo} from "../repo/repo";
|
||||||
import type {Player} from "../types/data.ts";
|
import type {Player} from "../types/data.ts";
|
||||||
import * as dayjs from "dayjs";
|
import dayjs from "dayjs";
|
||||||
|
|
||||||
const dispatch = createEventDispatcher();
|
const dispatch = createEventDispatcher();
|
||||||
|
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
<!--
|
||||||
|
- This file is a part of the SteamWar software.
|
||||||
|
-
|
||||||
|
- Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
-
|
||||||
|
- This program is free software: you can redistribute it and/or modify
|
||||||
|
- it under the terms of the GNU Affero General Public License as published by
|
||||||
|
- the Free Software Foundation, either version 3 of the License, or
|
||||||
|
- (at your option) any later version.
|
||||||
|
-
|
||||||
|
- This program is distributed in the hope that it will be useful,
|
||||||
|
- but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
- GNU Affero General Public License for more details.
|
||||||
|
-
|
||||||
|
- You should have received a copy of the GNU Affero General Public License
|
||||||
|
- along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import {t} from "astro-i18n";
|
import {t} from "astro-i18n";
|
||||||
import {ChevronDoubleRightOutline, FolderOutline, HomeOutline, InfoCircleOutline} from "flowbite-svelte-icons";
|
import {ChevronDoubleRightOutline, FolderOutline, HomeOutline, InfoCircleOutline} from "flowbite-svelte-icons";
|
||||||
|
@ -1,10 +1,29 @@
|
|||||||
|
<!--
|
||||||
|
- This file is a part of the SteamWar software.
|
||||||
|
-
|
||||||
|
- Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
-
|
||||||
|
- This program is free software: you can redistribute it and/or modify
|
||||||
|
- it under the terms of the GNU Affero General Public License as published by
|
||||||
|
- the Free Software Foundation, either version 3 of the License, or
|
||||||
|
- (at your option) any later version.
|
||||||
|
-
|
||||||
|
- This program is distributed in the hope that it will be useful,
|
||||||
|
- but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
- GNU Affero General Public License for more details.
|
||||||
|
-
|
||||||
|
- You should have received a copy of the GNU Affero General Public License
|
||||||
|
- along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import {astroI18n, t} from "astro-i18n";
|
import {astroI18n, t} from "astro-i18n";
|
||||||
import {CheckSolid, FileOutline, FolderOutline, XCircleOutline} from "flowbite-svelte-icons";
|
import {CheckSolid, FileOutline, FolderOutline, XCircleOutline} from "flowbite-svelte-icons";
|
||||||
import type {Schematic} from "../types/schem.ts";
|
import type {Schematic} from "../types/schem.ts";
|
||||||
import type {Player} from "../types/data.ts";
|
import type {Player} from "../types/data.ts";
|
||||||
import * as dayjs from "dayjs";
|
import dayjs from "dayjs";
|
||||||
import * as utc from "dayjs/plugin/utc";
|
import utc from "dayjs/plugin/utc";
|
||||||
|
|
||||||
dayjs.extend(utc);
|
dayjs.extend(utc);
|
||||||
|
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
<!--
|
||||||
|
- This file is a part of the SteamWar software.
|
||||||
|
-
|
||||||
|
- Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
-
|
||||||
|
- This program is free software: you can redistribute it and/or modify
|
||||||
|
- it under the terms of the GNU Affero General Public License as published by
|
||||||
|
- the Free Software Foundation, either version 3 of the License, or
|
||||||
|
- (at your option) any later version.
|
||||||
|
-
|
||||||
|
- This program is distributed in the hope that it will be useful,
|
||||||
|
- but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
- GNU Affero General Public License for more details.
|
||||||
|
-
|
||||||
|
- You should have received a copy of the GNU Affero General Public License
|
||||||
|
- along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import type {Player} from "../types/data.ts";
|
import type {Player} from "../types/data.ts";
|
||||||
import {statsRepo} from "../repo/repo.ts";
|
import {statsRepo} from "../repo/repo.ts";
|
||||||
|
@ -1,6 +1,25 @@
|
|||||||
|
<!--
|
||||||
|
- This file is a part of the SteamWar software.
|
||||||
|
-
|
||||||
|
- Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
-
|
||||||
|
- This program is free software: you can redistribute it and/or modify
|
||||||
|
- it under the terms of the GNU Affero General Public License as published by
|
||||||
|
- the Free Software Foundation, either version 3 of the License, or
|
||||||
|
- (at your option) any later version.
|
||||||
|
-
|
||||||
|
- This program is distributed in the hope that it will be useful,
|
||||||
|
- but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
- GNU Affero General Public License for more details.
|
||||||
|
-
|
||||||
|
- You should have received a copy of the GNU Affero General Public License
|
||||||
|
- along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import {Modal} from "flowbite-svelte";
|
import {Modal} from "flowbite-svelte";
|
||||||
import {schemRepo} from "../repo/repo.js";
|
import {schemRepo} from "../repo/repo.ts";
|
||||||
import {createEventDispatcher} from "svelte";
|
import {createEventDispatcher} from "svelte";
|
||||||
|
|
||||||
const dispatch = createEventDispatcher();
|
const dispatch = createEventDispatcher();
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
<!--
|
||||||
|
- This file is a part of the SteamWar software.
|
||||||
|
-
|
||||||
|
- Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
-
|
||||||
|
- This program is free software: you can redistribute it and/or modify
|
||||||
|
- it under the terms of the GNU Affero General Public License as published by
|
||||||
|
- the Free Software Foundation, either version 3 of the License, or
|
||||||
|
- (at your option) any later version.
|
||||||
|
-
|
||||||
|
- This program is distributed in the hope that it will be useful,
|
||||||
|
- but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
- GNU Affero General Public License for more details.
|
||||||
|
-
|
||||||
|
- You should have received a copy of the GNU Affero General Public License
|
||||||
|
- along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import {t} from "astro-i18n";
|
import {t} from "astro-i18n";
|
||||||
import type {Player} from "../types/data.ts";
|
import type {Player} from "../types/data.ts";
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
/*
|
||||||
|
* This file is a part of the SteamWar software.
|
||||||
|
*
|
||||||
|
* Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU Affero General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU Affero General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU Affero General Public License
|
||||||
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
import type {Player, Server} from "../types/data.ts";
|
import type {Player, Server} from "../types/data.ts";
|
||||||
import {PlayerSchema, ServerSchema} from "../types/data.ts";
|
import {PlayerSchema, ServerSchema} from "../types/data.ts";
|
||||||
import {fetchWithToken} from "./repo.ts";
|
import {fetchWithToken} from "./repo.ts";
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
/*
|
||||||
|
* This file is a part of the SteamWar software.
|
||||||
|
*
|
||||||
|
* Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU Affero General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU Affero General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU Affero General Public License
|
||||||
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
import type {ExtendedEvent, ShortEvent, SWEvent} from "../types/event.js";
|
import type {ExtendedEvent, ShortEvent, SWEvent} from "../types/event.js";
|
||||||
import {fetchWithToken} from "./repo.js";
|
import {fetchWithToken} from "./repo.js";
|
||||||
import {ExtendedEventSchema, ShortEventSchema, SWEventSchema} from "../types/event.js";
|
import {ExtendedEventSchema, ShortEventSchema, SWEventSchema} from "../types/event.js";
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
/*
|
||||||
|
* This file is a part of the SteamWar software.
|
||||||
|
*
|
||||||
|
* Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU Affero General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU Affero General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU Affero General Public License
|
||||||
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
import type {EventFight} from "../types/event.js";
|
import type {EventFight} from "../types/event.js";
|
||||||
import {fetchWithToken} from "./repo.js";
|
import {fetchWithToken} from "./repo.js";
|
||||||
import {z} from "zod";
|
import {z} from "zod";
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
/*
|
||||||
|
* This file is a part of the SteamWar software.
|
||||||
|
*
|
||||||
|
* Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU Affero General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU Affero General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU Affero General Public License
|
||||||
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
import type {Page, PageList} from "../types/page.ts";
|
import type {Page, PageList} from "../types/page.ts";
|
||||||
import {fetchWithToken} from "./repo.ts";
|
import {fetchWithToken} from "./repo.ts";
|
||||||
import {PageListSchema, PageSchema} from "../types/page.ts";
|
import {PageListSchema, PageSchema} from "../types/page.ts";
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
/*
|
||||||
|
* This file is a part of the SteamWar software.
|
||||||
|
*
|
||||||
|
* Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU Affero General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU Affero General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU Affero General Public License
|
||||||
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
import type {Perms, UserPerms} from "../types/perms.js";
|
import type {Perms, UserPerms} from "../types/perms.js";
|
||||||
import {fetchWithToken} from "./repo.js";
|
import {fetchWithToken} from "./repo.js";
|
||||||
import {PermsSchema, UserPermsSchema} from "../types/perms.js";
|
import {PermsSchema, UserPermsSchema} from "../types/perms.js";
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
/*
|
||||||
|
* This file is a part of the SteamWar software.
|
||||||
|
*
|
||||||
|
* Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU Affero General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU Affero General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU Affero General Public License
|
||||||
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
import {derived, writable} from "svelte/store";
|
import {derived, writable} from "svelte/store";
|
||||||
import {EventRepo} from "./event.js";
|
import {EventRepo} from "./event.js";
|
||||||
import {FightRepo} from "./fight.js";
|
import {FightRepo} from "./fight.js";
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
/*
|
||||||
|
* This file is a part of the SteamWar software.
|
||||||
|
*
|
||||||
|
* Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU Affero General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU Affero General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU Affero General Public License
|
||||||
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
import {fetchWithToken} from "./repo.ts";
|
import {fetchWithToken} from "./repo.ts";
|
||||||
import type {SchematicCode, SchematicInfo, SchematicList} from "../types/schem.ts";
|
import type {SchematicCode, SchematicInfo, SchematicList} from "../types/schem.ts";
|
||||||
import {SchematicCodeSchema, SchematicInfoSchema, SchematicListSchema} from "../types/schem.ts";
|
import {SchematicCodeSchema, SchematicInfoSchema, SchematicListSchema} from "../types/schem.ts";
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
/*
|
||||||
|
* This file is a part of the SteamWar software.
|
||||||
|
*
|
||||||
|
* Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU Affero General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU Affero General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU Affero General Public License
|
||||||
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
import type {FightStats, Ranking, UserStats} from "../types/stats.ts";
|
import type {FightStats, Ranking, UserStats} from "../types/stats.ts";
|
||||||
import {fetchWithToken} from "./repo.ts";
|
import {fetchWithToken} from "./repo.ts";
|
||||||
import {FightStatsSchema, RankingSchema, UserStatsSchema} from "../types/stats.ts";
|
import {FightStatsSchema, RankingSchema, UserStatsSchema} from "../types/stats.ts";
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
/*
|
||||||
|
* This file is a part of the SteamWar software.
|
||||||
|
*
|
||||||
|
* Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU Affero General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU Affero General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU Affero General Public License
|
||||||
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
import {readonly, writable} from "svelte/store";
|
import {readonly, writable} from "svelte/store";
|
||||||
|
|
||||||
import type {Readable, Subscriber, Unsubscriber} from "svelte/store";
|
import type {Readable, Subscriber, Unsubscriber} from "svelte/store";
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
/*
|
||||||
|
* This file is a part of the SteamWar software.
|
||||||
|
*
|
||||||
|
* Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU Affero General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU Affero General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU Affero General Public License
|
||||||
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
import type {Player, SchematicType} from "../types/data.js";
|
import type {Player, SchematicType} from "../types/data.js";
|
||||||
import {PlayerSchema} from "../types/data.js";
|
import {PlayerSchema} from "../types/data.js";
|
||||||
import {cached, cachedFamily} from "./cached.js";
|
import {cached, cachedFamily} from "./cached.js";
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
/*
|
||||||
|
* This file is a part of the SteamWar software.
|
||||||
|
*
|
||||||
|
* Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU Affero General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU Affero General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU Affero General Public License
|
||||||
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
import {z} from "zod";
|
import {z} from "zod";
|
||||||
|
|
||||||
export const SchematicTypeSchema = z.object({
|
export const SchematicTypeSchema = z.object({
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
/*
|
||||||
|
* This file is a part of the SteamWar software.
|
||||||
|
*
|
||||||
|
* Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU Affero General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU Affero General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU Affero General Public License
|
||||||
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
import {z} from "zod";
|
import {z} from "zod";
|
||||||
import {TeamSchema} from "./team.js";
|
import {TeamSchema} from "./team.js";
|
||||||
import {PlayerSchema} from "./data.js";
|
import {PlayerSchema} from "./data.js";
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
/*
|
||||||
|
* This file is a part of the SteamWar software.
|
||||||
|
*
|
||||||
|
* Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU Affero General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU Affero General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU Affero General Public License
|
||||||
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
import {z} from "zod";
|
import {z} from "zod";
|
||||||
|
|
||||||
export const ListPageSchema = z.object({
|
export const ListPageSchema = z.object({
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
/*
|
||||||
|
* This file is a part of the SteamWar software.
|
||||||
|
*
|
||||||
|
* Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU Affero General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU Affero General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU Affero General Public License
|
||||||
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
import {z} from "zod";
|
import {z} from "zod";
|
||||||
|
|
||||||
export const PrefixSchema = z.object({
|
export const PrefixSchema = z.object({
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
/*
|
||||||
|
* This file is a part of the SteamWar software.
|
||||||
|
*
|
||||||
|
* Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU Affero General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU Affero General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU Affero General Public License
|
||||||
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
import {z} from "zod";
|
import {z} from "zod";
|
||||||
import {PlayerSchema} from "./data.ts";
|
import {PlayerSchema} from "./data.ts";
|
||||||
|
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
/*
|
||||||
|
* This file is a part of the SteamWar software.
|
||||||
|
*
|
||||||
|
* Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU Affero General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU Affero General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU Affero General Public License
|
||||||
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
import {z} from "zod";
|
import {z} from "zod";
|
||||||
|
|
||||||
export const RankingSchema = z.array(z.object({
|
export const RankingSchema = z.array(z.object({
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
/*
|
||||||
|
* This file is a part of the SteamWar software.
|
||||||
|
*
|
||||||
|
* Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU Affero General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU Affero General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU Affero General Public License
|
||||||
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
import {z} from "zod";
|
import {z} from "zod";
|
||||||
|
|
||||||
export const TeamSchema = z.object({
|
export const TeamSchema = z.object({
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
/*
|
||||||
|
* This file is a part of the SteamWar software.
|
||||||
|
*
|
||||||
|
* Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU Affero General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU Affero General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU Affero General Public License
|
||||||
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
export function window<T>(arr: T[], len: number): T[][] {
|
export function window<T>(arr: T[], len: number): T[][] {
|
||||||
let result: T[][] = [];
|
let result: T[][] = [];
|
||||||
for (let i = 0; i < arr.length; i += len) {
|
for (let i = 0; i < arr.length; i += len) {
|
||||||
|
26
src/content/announcements/de/airship-publicclash.md
Normale Datei
26
src/content/announcements/de/airship-publicclash.md
Normale Datei
@ -0,0 +1,26 @@
|
|||||||
|
---
|
||||||
|
title: AirShip PublicClash
|
||||||
|
key: as-publicclash
|
||||||
|
description: Ein kleines Airshipevent für die Community nur mit Publics
|
||||||
|
created: 2023-11-08
|
||||||
|
tags:
|
||||||
|
- event
|
||||||
|
- airship
|
||||||
|
- publicclash
|
||||||
|
---
|
||||||
|
|
||||||
|
**Liebe Community**
|
||||||
|
|
||||||
|
Nach längerer Zeit steht wieder ein kleineres Airshipevent am **17.12.2023** an. Es wird nur an einem Tag statt finden.
|
||||||
|
|
||||||
|
Es ist ein Public Event welch in der **Version 1.20** Ausgetragen wird. Es werden noch zeitlich noch ein weitere Public/ Publics hinzugefügt.
|
||||||
|
|
||||||
|
Mit dem Befehl /team event ASPublicClash könnt Ihr euch ab sofort bis zum **15.12.2023** anmelden.
|
||||||
|
|
||||||
|
Es sind pro Team **max 6 Kämpfer** zugelassen. Der Ansprechpartner ist der Airshiprat (Atom65, Novacfranz) Eventleiter wird TheBreadBeard sein.
|
||||||
|
|
||||||
|
Wir würden uns freuen, wenn sich ein Paar Teams anmelden und wünschen viel Spaß bei diesem kleinen Event.
|
||||||
|
|
||||||
|
Viele Grüßen
|
||||||
|
|
||||||
|
SteamwarServerteam
|
@ -1,17 +0,0 @@
|
|||||||
---
|
|
||||||
title: First Announcement
|
|
||||||
description: First announcement for the 2021 edition of the conference.
|
|
||||||
created: 2021-01-01
|
|
||||||
tags:
|
|
||||||
- blog
|
|
||||||
- event
|
|
||||||
---
|
|
||||||
|
|
||||||
# First Announcement
|
|
||||||
|
|
||||||
<fight-table data-event="7" data-group="Gruppe 1" data-rows="2"></fight-table>
|
|
||||||
|
|
||||||
|
|
||||||
<group-table data-event="7" data-group="Gruppe 1" data-rows="1"></group-table>
|
|
||||||
|
|
||||||
Text, text, text
|
|
@ -1,10 +1,11 @@
|
|||||||
---
|
---
|
||||||
title: First Announcement
|
title: MicroNeujahrsEvent
|
||||||
description: First announcement for the 2021 edition of the conference. With realy long text to test the layout. But this is not enough, so I will add some more
|
key: microneujahrsevent
|
||||||
|
description: Das traditionelle MicroNeujahrsEvent findet auch 2024 wieder statt. Wir freuen uns auf Eure Teilnahme!
|
||||||
created: 2023-12-03
|
created: 2023-12-03
|
||||||
tags:
|
tags:
|
||||||
- event
|
- event
|
||||||
- miniwargear
|
- microwargear
|
||||||
---
|
---
|
||||||
|
|
||||||
Liebe Community!
|
Liebe Community!
|
||||||
@ -17,7 +18,7 @@ Auf diesem Wege Lade ich Euch zum traditionelle MicroWargearEvent auf Steamwar e
|
|||||||
- Wo? Steamwar.de Minecraft Server
|
- Wo? Steamwar.de Minecraft Server
|
||||||
- Version: 1.20
|
- Version: 1.20
|
||||||
- Regelwerk: MicroWarGear Regelwerk – SteamWar
|
- Regelwerk: MicroWarGear Regelwerk – SteamWar
|
||||||
- max 3 Fighter pro Team
|
- max. 3 Fighter pro Team
|
||||||
|
|
||||||
das Serverteam würde sich freuen, wenn es wieder viele Teams gibt welch an diesem Event teilnehmen und wünschen allen Viel Spaß, Erfolg und einen Guten Rutsch!
|
das Serverteam würde sich freuen, wenn es wieder viele Teams gibt welch an diesem Event teilnehmen und wünschen allen Viel Spaß, Erfolg und einen Guten Rutsch!
|
||||||
|
|
26
src/content/announcements/de/steamwar-winterzeit.md
Normale Datei
26
src/content/announcements/de/steamwar-winterzeit.md
Normale Datei
@ -0,0 +1,26 @@
|
|||||||
|
---
|
||||||
|
title: Steamwar Winterzeit
|
||||||
|
key: winterzeit
|
||||||
|
description: Die Winterzeit ist angebrochen. Wir nutzen den November für die Vorbereitung der Winterzeit. Es wird einige Events geben. Zudem werden noch Builder gesucht.
|
||||||
|
created: 2023-11-05
|
||||||
|
tags:
|
||||||
|
- event
|
||||||
|
---
|
||||||
|
|
||||||
|
Liebe Steamwar Community.
|
||||||
|
|
||||||
|
bestimmt ist Euch aufgefallen, welch dieses Jahr unüblich ist, dass wir im November kein Event angesetzt haben und wir nach außen hin recht ruhig geworden sind. Hierbei möchte ich eine Info an Euch weiter geben was gerade Sache ist.
|
||||||
|
|
||||||
|
Der November wird bei uns als primäre Vorbereitung genutzt für die Winterzeit.
|
||||||
|
|
||||||
|
aktuell werden noch nach wie vor Builder gesucht um z.B an unseren Vorbereitungen zu unterstützen. Falls Ihr daran Interesse habt noch dem Builderteam beizutreten steht Tim7077 Euch als Ansprechpartner zur Verfügung.
|
||||||
|
|
||||||
|
Zudem stehen mindestens zwei Events an. Einmal ein Public AS Event am 17.12.2023 sowie unser Traditionelles Micro Neujahrs Event. Hierbei laufen die Vorbereitungen. (näheres zu den Events kommt später in einer Extra Ankündigung) .
|
||||||
|
|
||||||
|
Auch wird es einige Plugin Veränderungen /Erweiterungen geben unteranderem für die Verwirklichung des von Haylim’s vorgeschlagenen QuickGear Modus. Sowie einige 1.20 Updates
|
||||||
|
|
||||||
|
Ich hoffe es trifft auf Verständnis, dass der November daher mit wenig „Aktion“ abgeht.
|
||||||
|
|
||||||
|
Liebe Grüße
|
||||||
|
|
||||||
|
Steamwar Team
|
24
src/content/announcements/de/veraenderung-im-supporterteam.md
Normale Datei
24
src/content/announcements/de/veraenderung-im-supporterteam.md
Normale Datei
@ -0,0 +1,24 @@
|
|||||||
|
---
|
||||||
|
title: Veränderung im Supporterteam
|
||||||
|
key: supporter-entfernung
|
||||||
|
description: Wir haben uns entschieden die Zusammenarbeit mit einem Supporter zu beenden.
|
||||||
|
created: 2023-11-01
|
||||||
|
tags:
|
||||||
|
- team
|
||||||
|
---
|
||||||
|
|
||||||
|
Hallo Liebe Community,
|
||||||
|
|
||||||
|
wie die aktiven Diskussionen auf unserem Community DC bezüglich dem Vertrauen eines Supporters, wurde von mir entschieden unsere Zusammenarbeit mit der Betroffenen Person zukünftig zu beenden.
|
||||||
|
|
||||||
|
Es existiert keine Vertrauensbasis mehr. Es würde nur die Moral des restlichen Serverteams schaden und soll ein Zeichen sein, dass wir von Serverteammitglieder eine gewisse Verantwortung Verlangen!
|
||||||
|
|
||||||
|
Ob die Vorwürfe gegen Ihn stimmen oder nicht, ist erstmal dahingestellt. Die Bestätigte Aussagen als „ist doch nicht verboten“ abzustempeln war für mich schlussendlich der Grund ihn zukünftig nicht mehr im Serverteam zu halten. Vor allem als Supporter sollte man im Klaren sein, dass die Moralischen Aspekten sehr viel mehr von Bedeutung sind, als wie von einem Normalen Spieler.
|
||||||
|
|
||||||
|
Er hat uns gezeigt, dass er für die Verantwortungsvolle Aufgaben als Supporter nicht geeignet sind. Wir das Serverteam sind ebenso nicht Bereit uns für dieses dumme und Verantwortungslose Verhalten eines Supporters zu rechtfertigen.
|
||||||
|
|
||||||
|
Ich hoffe, dass hiermit die Streitigkeiten geklärt sind
|
||||||
|
|
||||||
|
Liebe Grüße
|
||||||
|
|
||||||
|
AdmiralSeekrank
|
@ -1,11 +0,0 @@
|
|||||||
---
|
|
||||||
title: Second Announcement
|
|
||||||
description: Second announcement for the 2022 edition of the conference.
|
|
||||||
created: 2022-01-01
|
|
||||||
tags:
|
|
||||||
- blog
|
|
||||||
---
|
|
||||||
|
|
||||||
# First Announcement
|
|
||||||
|
|
||||||
<fight-table data-event="7" data-group="Gruppe 1" />
|
|
@ -1,3 +1,22 @@
|
|||||||
|
/*
|
||||||
|
* This file is a part of the SteamWar software.
|
||||||
|
*
|
||||||
|
* Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU Affero General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU Affero General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU Affero General Public License
|
||||||
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
// @ts-ignore
|
// @ts-ignore
|
||||||
import {defineCollection, reference, z} from 'astro:content';
|
import {defineCollection, reference, z} from 'astro:content';
|
||||||
|
|
||||||
@ -44,7 +63,6 @@ export const downloads = defineCollection({
|
|||||||
export const rules = defineCollection({
|
export const rules = defineCollection({
|
||||||
type: "content",
|
type: "content",
|
||||||
schema: z.object({
|
schema: z.object({
|
||||||
german: z.boolean().optional().default(false),
|
|
||||||
translationKey: z.string(),
|
translationKey: z.string(),
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
@ -56,8 +74,8 @@ export const announcements = defineCollection({
|
|||||||
description: z.string(),
|
description: z.string(),
|
||||||
image: image().optional(),
|
image: image().optional(),
|
||||||
tags: z.array(z.string()),
|
tags: z.array(z.string()),
|
||||||
german: z.boolean().optional().default(false),
|
created: z.date(),
|
||||||
created: z.date()
|
key: z.string()
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
|
||||||
|
@ -2,6 +2,7 @@
|
|||||||
title: FAQ
|
title: FAQ
|
||||||
description: Frequently asked questions
|
description: Frequently asked questions
|
||||||
slug: faq
|
slug: faq
|
||||||
|
german: true
|
||||||
---
|
---
|
||||||
|
|
||||||
# Server/ IP-Adresse
|
# Server/ IP-Adresse
|
||||||
|
@ -2,6 +2,7 @@
|
|||||||
title: Join Now!
|
title: Join Now!
|
||||||
description: How to join SteamWar.de
|
description: How to join SteamWar.de
|
||||||
slug: join
|
slug: join
|
||||||
|
german: true
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|
||||||
|
@ -1,114 +0,0 @@
|
|||||||
---
|
|
||||||
german: true
|
|
||||||
translationKey: as
|
|
||||||
---
|
|
||||||
|
|
||||||
# AirShip-Regelwerk
|
|
||||||
|
|
||||||
## Definitionen
|
|
||||||
|
|
||||||
Ein AirShip ist eine beidseitig bewaffnete Struktur in Minecraft 1.19 und sieht flugfähig aus.
|
|
||||||
|
|
||||||
## Maße
|
|
||||||
|
|
||||||
![Picture](../../../images/Screenshot_2023-08-30_at_21.43.56-1536x714.png)
|
|
||||||
|
|
||||||
**Technikbereich**:
|
|
||||||
- 70 lang
|
|
||||||
- 35 breit
|
|
||||||
- 24 hoch
|
|
||||||
|
|
||||||
**Designbereich**:
|
|
||||||
- 130 lang
|
|
||||||
- 51 breit
|
|
||||||
- 32 hoch
|
|
||||||
|
|
||||||
Entfernung von Mitte zu Mitte des Gegners: 100 Block
|
|
||||||
|
|
||||||
Technik darf sich 4 Blöcke über die Maße hinaus ausfahren – unabhängige Flugmaschinen ausgenommen. Kanonen, Schilde, Flugmaschinen und Panzerung dürfen nur im Technikbereich verbaut werden.
|
|
||||||
|
|
||||||
## Projektile
|
|
||||||
|
|
||||||
Ein Projektil ist ein gezündetes TNT, welches in die gegnerische Hälfte wechselt. Eine Kanone ist eine Vorrichtung zum Beschleunigen von Projektilen. Es ist verboten, mehrere Kanonen als eine Einzige auszugeben.
|
|
||||||
|
|
||||||
Jeder Seite stehen bis zu 30 Projektile zur Verfügung. Sie müssen auf der dem Gegner zugewandten Seite oder, wenn beidseitig, in der Mitte gezündet werden
|
|
||||||
|
|
||||||
## Kampfablauf
|
|
||||||
|
|
||||||
- 5 min Vorbereitungszeit
|
|
||||||
- 45 s zum Starten von Flugmaschinen
|
|
||||||
- ab 5 min Kampfzeit ist Entern erlaubt
|
|
||||||
- 10 min Kampf
|
|
||||||
|
|
||||||
## Siegesbedingung
|
|
||||||
|
|
||||||
- Ein AirShip wird zu 60% (nach prozentualer Redstonekomponenten) zerstört.
|
|
||||||
- Alle Kämpfer eines AirShips sind tot.
|
|
||||||
- Nach 10 Minuten wird ein Unentschieden eingeleitet.
|
|
||||||
- Der Kampfleiter entscheidet.
|
|
||||||
|
|
||||||
## Blöcke
|
|
||||||
|
|
||||||
Es dürfen maximal je 30 TNT/slime/honey und 32 Werfer verbaut werden. Verbaute Blöcke dürfen einen TNT-Widerstand von maximal 6 haben. Ausgenommen davon ist Wasser mit dem einzigen Zweck, die Kanone vor selbstverursachtem Schaden zu bewahren.
|
|
||||||
|
|
||||||
Inventar-Blöcke dürfen nur mit Blumen, Honigflaschen und Pferderüstungen gefüllt sein. Zusätzlich dürfen sich in Kisten und Fässern TNT sowie in Werfern 2·64 Feuerbälle, 2·64 reguläre Pfeile oder 1 Eimer zum Aufheben von powdered Snow befinden.
|
|
||||||
|
|
||||||
Zusätzlich verboten: Monster Spawner, Eis, Nether Portal, Silberfischsteine, Leuchtfeuer, unsichtbare Blöcke (Ausnahme: structure_void) Das Duplizieren von Blöcken und Entities ist verboten.
|
|
||||||
Blöcke aus dem eigenen AS dürfen nicht in großer Menge entfernt werden.
|
|
||||||
Bug-Using ist nicht erwünscht.
|
|
||||||
|
|
||||||
<hr>
|
|
||||||
|
|
||||||
# Versteckte Blöcke (Ersetzt durch Stein)
|
|
||||||
|
|
||||||
- WATER
|
|
||||||
- NOTE_BLOCK
|
|
||||||
- POWERED_RAIL
|
|
||||||
- DETECTOR_RAIL
|
|
||||||
- PISTON
|
|
||||||
- PISTON_HEAD
|
|
||||||
- STICKY_PISTON
|
|
||||||
- TNT
|
|
||||||
- CHEST
|
|
||||||
- TRAPPED_CHEST
|
|
||||||
- REDSTONE_WIRE
|
|
||||||
- STONE_PRESSURE_PLATE
|
|
||||||
- IRON_DOOR
|
|
||||||
- OAK_PRESSURE_PLATE
|
|
||||||
- SPRUCE_PRESSURE_PLATE
|
|
||||||
- BIRCH_PRESSURE_PLATE
|
|
||||||
- JUNGLE_PRESSURE_PLATE
|
|
||||||
- ACACIA_PRESSURE_PLATE
|
|
||||||
- DARK_OAK_PRESSURE_PLATE
|
|
||||||
- REDSTONE_TORCH
|
|
||||||
- REDSTONE_WALL_TORCH
|
|
||||||
- REPEATER
|
|
||||||
- BREWING_STAND
|
|
||||||
- TRIPWIRE_HOOK
|
|
||||||
- TRIPWIRE
|
|
||||||
- HEAVY_WEIGHTED_PRESSURE_PLATE
|
|
||||||
- LIGHT_WEIGHTED_PRESSURE_PLATE
|
|
||||||
- COMPARATOR
|
|
||||||
- REDSTONE_BLOCK
|
|
||||||
- HOPPER
|
|
||||||
- ACTIVATOR_RAIL
|
|
||||||
- DROPPER
|
|
||||||
- SLIME_BLOCK
|
|
||||||
- OBSERVER
|
|
||||||
- HONEY_BLOCK
|
|
||||||
- LEVER
|
|
||||||
|
|
||||||
# Zusatzinhalte folgender Blöcke (z.B. Text, Inhalt von Inventaren) werden mit versteckt:
|
|
||||||
|
|
||||||
- SIGN
|
|
||||||
- DISPENSER
|
|
||||||
- CHEST
|
|
||||||
- TRAPPED_CHEST
|
|
||||||
- FURNACE
|
|
||||||
- BREWING_STAND
|
|
||||||
- HOPPER
|
|
||||||
- DROPPER
|
|
||||||
- SHULKER_BOX
|
|
||||||
- JUKEBOX
|
|
||||||
- COMPARATOR
|
|
||||||
|
|
@ -1,8 +0,0 @@
|
|||||||
---
|
|
||||||
german: true
|
|
||||||
translationKey: megawg
|
|
||||||
---
|
|
||||||
|
|
||||||
# MegaWarGear Regelwerk
|
|
||||||
|
|
||||||
MegaWarGear-Kämpfe finden aus technischen Gründen in der 1.12.2 statt. Der Spielmodus MegaWarGear soll die Möglichkeit bieten, einfach mal ein grenzenloses WarGear zu bauen. Daher ist ein anspruchsvolles Design bzw. Formgebung notwendig (kein Kasten o.ä.). MegaWarGears sollen (abgesehen von Größen- und Mengenlimitierungen) technisch typischen WarGears ähnlich sein (Endstoneblöcke als stärkste Panzerung, kein TNT in Dispensern etc.) Da dieser Spielmodus nicht als kompetetiver Spielmodus (mit dem Hauptziel, den Gegner mit allen Mitteln zu besiegen) ausgelegt ist, sollte jedes freigegebene MegaWarGear auch so als Public veröffentlicht werden (können).
|
|
@ -1,131 +0,0 @@
|
|||||||
---
|
|
||||||
german: true
|
|
||||||
translationKey: microwg
|
|
||||||
---
|
|
||||||
|
|
||||||
# MicroWarGear Regelwerk
|
|
||||||
|
|
||||||
MicroWargears werden in der 1.20 gebaut.
|
|
||||||
|
|
||||||
## Maße
|
|
||||||
|
|
||||||
Max. 7 Block tief
|
|
||||||
Max. 7 Block breit
|
|
||||||
Max. 7 Block hoch
|
|
||||||
|
|
||||||
Ein MicroWarGear darf sich maximal 7 Blöcke in alle Richtungen ausfahren. Schildtechniken dürfen von jeder beliebigen Stelle im MicroWarGear aktiviert werden.
|
|
||||||
|
|
||||||
## Materialien
|
|
||||||
|
|
||||||
Alle Blöcke im MicroWarGear dürfen maximal einen TNT-Widerstand von 9 aufweisen. Inventarblöcke dürfen ausschließlich Blumen, Honigflaschen und Pferderüstungen beinhalten. In Truhen, Shulker-Boxen und Fässern darf TNT gelagert werden. In Werfern dürfen sich nur 1*64 Feuerbälle oder 1*64 Pfeile (ohne Effekte) befinden.
|
|
||||||
Es dürfen maximal 8 Werfer verbaut werden.
|
|
||||||
|
|
||||||
Folgende Materialien dürfen zusätzlich nicht verbaut werden: Alle Sprösslinge, Eis (Minecraft:Ice),
|
|
||||||
Nether Portal, Lava, Waterlogged Leaves und Waterlogged Roots, TNT (vorverbaut), jegliche (nicht Block-) Entities.
|
|
||||||
Wasser darf nur und ausschließlich in Kanonen verwendet werden, um Schaden beim eigenen
|
|
||||||
Schuss zu verhindern.
|
|
||||||
|
|
||||||
## Kanonen
|
|
||||||
|
|
||||||
Eine Kanone ist eine durchgehende Redstonekonstruktion, welche in der Lage ist,
|
|
||||||
den Gegner durch gezündetes TNT zu beschädigen. Eine TNT-Kanone ist der einzige Ort in einem Micro an dem Wasser verbaut werden darf, wenn es die Kanone nicht verlässt und /oder im intakten Zustand Wasserschilde bildet. Außerdem darf sich die Kanone nicht gezielt selbst beschädigen. Eine TNT-Kanone darf maximal 8 Projektile pro Schuss abfeuern.
|
|
||||||
Zusätzlich ist eine Hauptkanone mit 12 Projektilen erlaubt.
|
|
||||||
|
|
||||||
## Brücke
|
|
||||||
|
|
||||||
Ein MicroWargear benötigt eine Brücke welche entweder als klar erkennbarer Raum, als Freiluftbrücke oder als Kriechbrücke vom Rest des Micros durch Türen, Zauntore, Falltüren oder Kolben abtrennbar ist.
|
|
||||||
|
|
||||||
Die Brücke muss folgende Voraussetzungen erfüllen:
|
|
||||||
|
|
||||||
- Min. 25 m² (1 Block = 1 Meter)
|
|
||||||
- Ein Sichtfenster auf das gegnerische MicroWarGear (Ausnahme bei Freiluftbrücken mit direkter Sicht auf den Gegner, diese benötigen kein extra Sichtfenster)
|
|
||||||
- Die Ansteuerung für min. 4 vom Gegner aus sichtbare Frontscheinwerfer.
|
|
||||||
- Diese müssen ihren Zustand beibehalten, bis der/ die Mechanismen erneut manuell betätigt wird/ werden
|
|
||||||
- Die einzige Ansteuerung für ggf. vorhandene Werfer, die mit Pfeilen oder Feuerbällen den Gegner beschießen
|
|
||||||
|
|
||||||
## Design
|
|
||||||
|
|
||||||
Ein MicroWarGear benötigt (neben mindestens einer Kanone) ein Design. Die äußere Schicht
|
|
||||||
des MicroWarGears darf maximal einen TNT-Widerstand von 6 besitzen. Es wird eine
|
|
||||||
durchgängige Struktur über die gesamte Front des Micros erwartet. Es müssen
|
|
||||||
mindestens 2 verschiedene Blöcke im Design eingebaut werden. (Redstone-Komponenten nicht mitgezählt).
|
|
||||||
|
|
||||||
Eine durchgängige Struktur bedeutet, dass keine größeren Flächen keine Variation in der
|
|
||||||
Tiefe besitzen. Eine Variation in der Tiefe kann auch durch Mauern oder
|
|
||||||
Treppenstufen erreicht werden.
|
|
||||||
|
|
||||||
## Bug-Using
|
|
||||||
|
|
||||||
Das Duplizieren jeglicher Blöcke oder Entities ist verboten. Exzessives Verwenden von Blöcken, die vom Techhider replaced werden ist ebenfalls verboten
|
|
||||||
|
|
||||||
## Definitionen
|
|
||||||
|
|
||||||
### Projektil
|
|
||||||
Ein Projektil ist ein TNT, welches im gezündeten Zustand die maximalen Ausfahrmaße eines
|
|
||||||
MicroWarGears in Richtung des Gegners verlässt.
|
|
||||||
|
|
||||||
### Treibladung
|
|
||||||
Eine Treibladung ist ein TNT, welches im gezündeten Zustand Projektile in die gegnerische
|
|
||||||
Hälfte beschleunigt. Die Treibladungen einer Kanone dürfen nur die Projektile der dazugehörigen Kanone beeinflussen
|
|
||||||
|
|
||||||
## Versteckte Blöcke (Ersetzt durch Endstone)
|
|
||||||
|
|
||||||
- WATER
|
|
||||||
- NOTE_BLOCK
|
|
||||||
- POWERED_RAIL
|
|
||||||
- DETECTOR_RAIL
|
|
||||||
- PISTON
|
|
||||||
- PISTON_HEAD
|
|
||||||
- STICKY_PISTON
|
|
||||||
- TNT
|
|
||||||
- CHEST
|
|
||||||
- TRAPPED_CHEST
|
|
||||||
- REDSTONE_WIRE
|
|
||||||
- STONE_PRESSURE_PLATE
|
|
||||||
- IRON_DOOR
|
|
||||||
- OAK_PRESSURE_PLATE
|
|
||||||
- SPRUCE_PRESSURE_PLATE
|
|
||||||
- BIRCH_PRESSURE_PLATE
|
|
||||||
- JUNGLE_PRESSURE_PLATE
|
|
||||||
- ACACIA_PRESSURE_PLATE
|
|
||||||
- DARK_OAK_PRESSURE_PLATE
|
|
||||||
- REDSTONE_TORCH
|
|
||||||
- REDSTONE_WALL_TORCH
|
|
||||||
- REPEATER
|
|
||||||
- BREWING_STAND
|
|
||||||
- TRIPWIRE_HOOK
|
|
||||||
- TRIPWIRE
|
|
||||||
- HEAVY_WEIGHTED_PRESSURE_PLATE
|
|
||||||
- LIGHT_WEIGHTED_PRESSURE_PLATE
|
|
||||||
- COMPARATOR
|
|
||||||
- REDSTONE_BLOCK
|
|
||||||
- HOPPER
|
|
||||||
- ACTIVATOR_RAIL
|
|
||||||
- DROPPER
|
|
||||||
- SLIME_BLOCK
|
|
||||||
- OBSERVER
|
|
||||||
- HONEY_BLOCK
|
|
||||||
- LEVER
|
|
||||||
- SCULK_SENSOR
|
|
||||||
- POLISHED_BLACKSTONE_PRESSURE_PLATE
|
|
||||||
- MANGROVE_PRESSURE_PLATE
|
|
||||||
- CRIMSON_PRESSURE_PLATE
|
|
||||||
- WARPED_PRESSURE_PLATE
|
|
||||||
|
|
||||||
## Zusatzinhalte folgender Blöcke (z.B. Text, Inhalt von Inventaren) werden mit versteckt:
|
|
||||||
|
|
||||||
- SIGN
|
|
||||||
- DISPENSER
|
|
||||||
- CHEST
|
|
||||||
- TRAPPED_CHEST
|
|
||||||
- FURNACE
|
|
||||||
- BREWING_STAND
|
|
||||||
- HOPPER
|
|
||||||
- DROPPER
|
|
||||||
- SHULKER_BOX
|
|
||||||
- JUKEBOX
|
|
||||||
- COMPARATOR
|
|
||||||
|
|
||||||
<hr>
|
|
||||||
|
|
||||||
Ob ein MicroWarGear Regelkonform ist, obliegt der Entscheidung der Prüfer
|
|
@ -1,166 +0,0 @@
|
|||||||
---
|
|
||||||
german: true
|
|
||||||
translationKey: mwg
|
|
||||||
---
|
|
||||||
|
|
||||||
# MiniWarGear-Regelwerk
|
|
||||||
|
|
||||||
MiniWargears werden in der 1.19 gebaut.
|
|
||||||
|
|
||||||
## Maße
|
|
||||||
|
|
||||||
- Max. 20 Block tief (+ 1 Block Design pro Seite) (22)
|
|
||||||
- Max. 35 Block breit (+ 1 Block Design pro Seite) (37)
|
|
||||||
- Max. 26 Block hoch
|
|
||||||
|
|
||||||
Ein MiniWarGear darf sich maximal 7 Blöcke in alle Richtungen ausfahren. Alle ausfahrbare Schild- Komponenten dürfen nur von der Brücke aus aktivierbar sein.
|
|
||||||
|
|
||||||
## Materialien
|
|
||||||
|
|
||||||
Alle Blöcke im MiniWarGear dürfen maximal einen TNT-Widerstand von 9 aufweisen. Es
|
|
||||||
dürfen maximal 120 TNT verbaut werden. Inventarblöcke dürfen ausschließlich Blumen,
|
|
||||||
Honigflaschen und Pferderüstungen beherbergen. In Truhen und Fässer darf TNT gelagert
|
|
||||||
werden. In Werfern dürfen sich nur 1*64 Feuerbälle oder 1*64 Pfeile (ohne Effekte) befinden.
|
|
||||||
Es dürfen maximal 16 Werfer verbaut werden.
|
|
||||||
|
|
||||||
Folgende Materialien dürfen zusätzlich nicht verbaut werden: Alle Sprösslinge (6), Eis (79),
|
|
||||||
Nether Portal (90), Waterlogged Leaves und Waterlogged Roots
|
|
||||||
Wasser darf nur und ausschließlich in Kanonen verwendet werden, um Schaden beim eigenen
|
|
||||||
Schuss zu verhindern.
|
|
||||||
|
|
||||||
## Kanonen
|
|
||||||
|
|
||||||
Eine Kanone ist eine durchgehende Redstonekonstruktion, welche in der Lage ist,
|
|
||||||
gezündetes TNT in die gegnerische Hälfte zu befördern. Eine TNT-Kanone ist der einzige Ort
|
|
||||||
in einem MWG an dem Wasser verbaut werden darf, wenn es die Kanone nicht verlässt und
|
|
||||||
/oder im intakten Zustand Wasserschilde bildet. Außerdem darf sich die Kanone nicht gezielt
|
|
||||||
selbst beschädigen. Eine TNT-Kanone darf maximal 8 Projektile pro Schuss abfeuern.
|
|
||||||
Zusätzlich ist eine Hauptkanone mit 12 Projektilen erlaubt. Die Hauptkanone darf nur eine
|
|
||||||
manuelle Kanone sein.
|
|
||||||
|
|
||||||
Ein MiniWarGear darf insgesamt 9 Kanonen besitzen. Es ist
|
|
||||||
verboten, eine Vielzahl von Kanonen als eine einzige Kanone auszugeben. Es ist ebenfalls
|
|
||||||
Verboten eine einzige Kanone als mehrere auszugeben. Ob dies der Fall ist, entscheidet der
|
|
||||||
Prüfer des MiniWarGears oder der / die Kampfleiter.
|
|
||||||
|
|
||||||
Manuelle Kanonen sind TNT-Kanonen, welche manuell beladen werden müssen. Diese
|
|
||||||
dürfen vor dem Kampf nicht beladen sein. Des Weiteren müssen manuelle Kanonen am
|
|
||||||
Gegner Schaden anrichten können. Eine manuelle Kanone darf bis zu 3 Schüsse ohne
|
|
||||||
Nachladen abschießen.
|
|
||||||
Eine manuelle Kanone, welche ohne weiteres Nachladen mehrere
|
|
||||||
Schüsse hintereinander abgeben kann, muss die Projektile der einzelnen Schüsse von
|
|
||||||
denselben Abschusspunkt(en) aus abschießen. Der Ort wird vom ersten Schuss definiert.
|
|
||||||
|
|
||||||
Automatische Kanonen sind Kanonen welche ohne manuelles beladen mindestens 5
|
|
||||||
Schüsse abgeben können und vor Fightbeginn beladen sein müssen. Damit eine automaische
|
|
||||||
Kanone vorbeladen sein darf, muss diese mindestens 5 Schüsse abgeben. Alle Schüsse
|
|
||||||
müssen von den selben Abschusspunkt/en abgeschossen werden und die ersten 5 Schüsse
|
|
||||||
müssen gleich viele Projektile verschießen. Ab dem 6. Schuss darf die Projektilanzahl
|
|
||||||
abnehmen, jedoch nicht zunehmen. Eine Automatische Kanone darf max. alle 4 Sekunden
|
|
||||||
(40 Redstoneticks) schießen. Es sind max. 2 Automatische Kanonen erlaubt.
|
|
||||||
|
|
||||||
## Brücke
|
|
||||||
|
|
||||||
Ein MiniWargear benötigt eine Brück welche als klar erkennbarer Raum vom Rest des Miniwargears durch Türen oder Kolben abtrennbar ist.
|
|
||||||
|
|
||||||
Die Brücke muss folgende Voraussetzungen erfüllen:
|
|
||||||
|
|
||||||
- Min. 25 begehbare Blöcke
|
|
||||||
- Einen periodisch akustischen (Notenblock/Glocke) und optischen Schadenssensor
|
|
||||||
- Sichtfenster auf das gegnerische MiniWarGear
|
|
||||||
- Die Ansteuerung für min. 4 vom Gegner aus Sichtbare Frontscheinwerfer
|
|
||||||
- Die Ansteuerung für ggf. vorhandene automatische Kanonen
|
|
||||||
- Die einzige Ansteuerung für ggf. vorhandene Werfer, die mit Pfeilen oder Feuerbällen den Gegner beschießen
|
|
||||||
- Die Ansteuerung für ggf. vorhandene Schildtechniken
|
|
||||||
|
|
||||||
## Design
|
|
||||||
|
|
||||||
Ein MiniWarGear benötigt (neben mindestens einer Kanone) ein Design. Die äußere Schicht
|
|
||||||
des MiniWarGears darf maximal einen TNT-Widerstand von 6 besitzen. Es wird eine
|
|
||||||
durchgängige Struktur über die gesamte Front des MiniWarGears erwartet. Es müssen
|
|
||||||
mindestens 2 verschiedene Blöcke im Design eingebaut werden. (Werfer und
|
|
||||||
Redstonelampen werden nicht mitgezählt).
|
|
||||||
|
|
||||||
Eine durchgängige Struktur bedeutet, dass keine größeren Flächen keine Variation in der
|
|
||||||
Tiefe besitzen. Eine Variation in der Tiefe kann teilweise auch durch Mauern oder
|
|
||||||
Treppenstufen erreicht werden, darf aber nicht überwiegend dadurch erzeugt werden. Ob dies
|
|
||||||
der Fall ist, liegt im Ermessen des Prüfers.
|
|
||||||
|
|
||||||
## Bug-Using
|
|
||||||
|
|
||||||
Das erschaffen von TNT im MWG ist verboten
|
|
||||||
|
|
||||||
Exzessives verwenden von Blöcken die vom Techhider replacet werden ist verboten
|
|
||||||
|
|
||||||
## Definitionen
|
|
||||||
|
|
||||||
### Projektil
|
|
||||||
|
|
||||||
Ein Projektil ist ein TNT, welches im gezündeten Zustand von den Treibladungen
|
|
||||||
beschleunigt wird. Ein Projektil ist auch ein TNT, welches die maximalen Maße eines
|
|
||||||
MiniWarGears in Richtung des Gegners verlässt.
|
|
||||||
|
|
||||||
### Treibladung
|
|
||||||
|
|
||||||
Eine Treibladung ist ein TNT, das im gezündeten Zustand Projektile in die gegnerische
|
|
||||||
Hälfte beschleunigt. Die Treibladungen einer Kanone (manuelle und automatische Kanonen)
|
|
||||||
dürfen nur die eigenen Projektile beeinflussen.
|
|
||||||
|
|
||||||
## Versteckte Blöcke (Ersetzt durch Endstein)
|
|
||||||
|
|
||||||
- WATER
|
|
||||||
- NOTE_BLOCK
|
|
||||||
- POWERED_RAIL
|
|
||||||
- DETECTOR_RAIL
|
|
||||||
- PISTON
|
|
||||||
- PISTON_HEAD
|
|
||||||
- STICKY_PISTON
|
|
||||||
- TNT
|
|
||||||
- CHEST
|
|
||||||
- TRAPPED_CHEST
|
|
||||||
- REDSTONE_WIRE
|
|
||||||
- STONE_PRESSURE_PLATE
|
|
||||||
- IRON_DOOR
|
|
||||||
- OAK_PRESSURE_PLATE
|
|
||||||
- SPRUCE_PRESSURE_PLATE
|
|
||||||
- BIRCH_PRESSURE_PLATE
|
|
||||||
- JUNGLE_PRESSURE_PLATE
|
|
||||||
- ACACIA_PRESSURE_PLATE
|
|
||||||
- DARK_OAK_PRESSURE_PLATE
|
|
||||||
- REDSTONE_TORCH
|
|
||||||
- REDSTONE_WALL_TORCH
|
|
||||||
- REPEATER
|
|
||||||
- BREWING_STAND
|
|
||||||
- TRIPWIRE_HOOK
|
|
||||||
- TRIPWIRE
|
|
||||||
- HEAVY_WEIGHTED_PRESSURE_PLATE
|
|
||||||
- LIGHT_WEIGHTED_PRESSURE_PLATE
|
|
||||||
- COMPARATOR
|
|
||||||
- REDSTONE_BLOCK
|
|
||||||
- HOPPER
|
|
||||||
- ACTIVATOR_RAIL
|
|
||||||
- DROPPER
|
|
||||||
- SLIME_BLOCK
|
|
||||||
- OBSERVER
|
|
||||||
- HONEY_BLOCK
|
|
||||||
- LEVER
|
|
||||||
- SCULK_SENSOR
|
|
||||||
- POLISHED_BLACKSTONE_PRESSURE_PLATE
|
|
||||||
- MANGROVE_PRESSURE_PLATE
|
|
||||||
- CRIMSON_PRESSURE_PLATE
|
|
||||||
- WARPED_PRESSURE_PLATE
|
|
||||||
|
|
||||||
## Zusatzinhalte folgender Blöcke (z.B. Text, Inhalt von Inventaren) werden mit versteckt:
|
|
||||||
|
|
||||||
- SIGN
|
|
||||||
- DISPENSER
|
|
||||||
- CHEST
|
|
||||||
- TRAPPED_CHEST
|
|
||||||
- FURNACE
|
|
||||||
- BREWING_STAND
|
|
||||||
- HOPPER
|
|
||||||
- DROPPER
|
|
||||||
- SHULKER_BOX
|
|
||||||
- JUKEBOX
|
|
||||||
- COMPARATOR
|
|
||||||
|
|
@ -1,28 +0,0 @@
|
|||||||
---
|
|
||||||
translationKey: qg
|
|
||||||
german: true
|
|
||||||
---
|
|
||||||
|
|
||||||
# QuickGear-Regelwerk
|
|
||||||
|
|
||||||
QuickGears werden in der 1.20 gebaut.
|
|
||||||
|
|
||||||
## Maße
|
|
||||||
|
|
||||||
Max. 20 Block tief (+ 1 Block Design pro Seite) (22)
|
|
||||||
Max. 35 Block breit (+ 1 Block Design pro Seite) (37)
|
|
||||||
Max. 26 Block hoch
|
|
||||||
|
|
||||||
Kein Block darf das QuickGear verlassen.
|
|
||||||
|
|
||||||
## Materialien
|
|
||||||
|
|
||||||
Alle Blöcke im QuickGear müssen durch TNT zerstörbar sein. Davon ausgenommen ist Wasser. Es dürfen sich keine TNT Blocke im QuickGear befinden. Inventarblöcke dürfen ausschließlich Blumen, Honigflaschen und Pferderüstungen beherbergen. In Werfern dürfen sich nur 1×64 Feuerbälle oder 1×64 Pfeile (ohne Effekte) befinden.
|
|
||||||
|
|
||||||
## Design
|
|
||||||
|
|
||||||
Ein Design ist erwünscht, muss aber nicht zwingend vorhanden sein.
|
|
||||||
|
|
||||||
## Bug-Using
|
|
||||||
|
|
||||||
Gezündetes TNT darf nur durch vom Spieler platzierte TNT-Blöcke entstehen. Das Duplizieren von TNT ist verboten.
|
|
@ -1,69 +0,0 @@
|
|||||||
---
|
|
||||||
german: true
|
|
||||||
translationKey: sf
|
|
||||||
---
|
|
||||||
|
|
||||||
# Street Fight Regelwerk
|
|
||||||
|
|
||||||
**Street Fight WarGears** werden in der Version 1.19 Gebaut und sind Redstone-Kampfmaschinen in Minecraft. Sie sind mit einer Vielzahl von
|
|
||||||
Redstonetechniken und TNT-Kanonen ausgestattet
|
|
||||||
|
|
||||||
<hr>
|
|
||||||
|
|
||||||
## Maße
|
|
||||||
|
|
||||||
Höhe: 41
|
|
||||||
Block Tiefe: 47
|
|
||||||
Block Breite: 67 Block
|
|
||||||
|
|
||||||
Die Ausfahrmaße sind nicht begrenzt
|
|
||||||
|
|
||||||
<hr>
|
|
||||||
|
|
||||||
## Materialien
|
|
||||||
|
|
||||||
Es dürfen alle Blöcke verbaut werden, die einen TNT-Widerstand von max. 9 haben.
|
|
||||||
Folgende Blöcke sind nicht erlaubt:
|
|
||||||
|
|
||||||
- Alle Sprösslinge (6),
|
|
||||||
- jegliche Spawnerarten (52),
|
|
||||||
- Eis (Minecraft:Ice)
|
|
||||||
- Nether-Portal (90),
|
|
||||||
- Waterlogged Leaves
|
|
||||||
- Waterlogged Roots
|
|
||||||
|
|
||||||
Folgende Blöcke sind erlaubt:
|
|
||||||
|
|
||||||
- Wasser
|
|
||||||
- Lava
|
|
||||||
|
|
||||||
Inventarblöcke dürfen ausschließlich Blumen, Honigflaschen und Pferderüstungen beinhalten. Truhen, Fässer, Shulker-Boxen und Fässer dürfen TNT beinhalten.
|
|
||||||
|
|
||||||
Werfer dürfen nur mit je **2*64 Pfeilen (ohne Effekte) oder 2*64 Feuerbällen** bestückt sein. Insgesamt dürfen sich von beiden Typen nur je 2048 Items (32 Stacks) in Werfern befinden.
|
|
||||||
|
|
||||||
Es dürfen **max. 200 TNT** verbaut werden.
|
|
||||||
|
|
||||||
Das Generieren von Blöcken, welche vom Regelwerk erlaubt sind, ist erlaubt (z.B. Cobblestone-Generatoren)
|
|
||||||
|
|
||||||
<hr>
|
|
||||||
|
|
||||||
## Design
|
|
||||||
|
|
||||||
Ein Street Fight WarGear benötigt ein Design. Die äußere Schicht
|
|
||||||
des Street Fight WarGears darf maximal einen TNT-Widerstand von 6 besitzen. Es wird eine
|
|
||||||
durchgängige Struktur über die gesamte Front erwartet. Dies bedeutet, dass keine größeren Flächen keine Variation in der Tiefe besitzen. Eine Variation in der Tiefe kann teilweise auch durch Mauern oder Treppenstufen erreicht werden, darf aber nicht überwiegend dadurch erzeugt werden. Ein Design muss darüber hinaus aus mindestens 2 verschiedenen Blöcken bestehen. Alle Redstone-Elemente, wie zum Beispiel Werfer, Redstonelampen, Redstone Blöcke, usw., werden nicht mitgezählt.
|
|
||||||
|
|
||||||
<hr>
|
|
||||||
|
|
||||||
## Bug-Using/ Lag-Regeln
|
|
||||||
|
|
||||||
Beacons dürfen als Block in WarGears vorhanden sein, jedoch nicht im aktiven Zustand.
|
|
||||||
Diese dürfen auch während eines Fights nicht aktiviert werden.
|
|
||||||
|
|
||||||
Das dupen von TNT ist verboten.
|
|
||||||
|
|
||||||
Alle **Clocks** müssen nach Vollendung ihrer Aufgabe sich selbst ausschalten.
|
|
||||||
|
|
||||||
Übermäßiges Erzeugen von Lags (z.B. zu viele Banner, zu viele Partikel durch Campfire oder Entities) kann zum Sperren der Schematic führen.
|
|
||||||
|
|
||||||
Bis auf das direkte Zünden von TNT ist das Erzeugen von jeglicher anderen Entität in den Ausfahrmaßen des eigenen WarGears verboten. Das Erzeugen von Sand-, Gravel-, Concrete-Powder-, DragonEgg- und Scaffolding-Entities ist in den Ausfahrmaßen des eigenen WarGears erlaubt, genauso ist das Erzeugen von Items, durch Dispenser oder Droppern erlaubt. Feuerball-Entities, sowie Pfeil-Entities dürfen auch von Dispensern erzeugt werden.
|
|
@ -1,219 +0,0 @@
|
|||||||
---
|
|
||||||
german: true
|
|
||||||
translationKey: wg
|
|
||||||
---
|
|
||||||
|
|
||||||
# WarGear 1.20 Regelwerk
|
|
||||||
|
|
||||||
Ein **WarGear** ist eine Redstone-Kampfmaschine in Minecraft. Es ist mit einer Vielzahl von Redstonetechniken und
|
|
||||||
TNT-Kanonen ausgestattet. Es ist gebaut, um anderen WarGears Schaden zuzufügen.
|
|
||||||
|
|
||||||
Diese unterteilen sich in Basic WarGear, WarGear und Pro WarGear. Basic WarGears sollen insbesondere Einsteigern eine
|
|
||||||
Möglichkeit geben in WarGears rein zu kommen und erste selbstgebaute Technik zu ermöglichen. WarGear, auch Competitive
|
|
||||||
WarGear genannt, ist der Modus, worin primär Events ausgetragen werden. Außerdem ist dieser für Casual Fights ausgelegt.
|
|
||||||
Pro WarGears sind für sogenannte "Schwitzer", welche sich mit starken SFA's und starker manueller Technik bekämpfen
|
|
||||||
wollen.
|
|
||||||
|
|
||||||
## Definitionen
|
|
||||||
|
|
||||||
### Clocks
|
|
||||||
|
|
||||||
Eine **Clock** ist ein Mechanismus, welcher in einem regelmäßigen oder unregelmäßigen Abstand wiederholt ein Signal
|
|
||||||
ausgibt. Diese muss sich unmittelbar nach Vollendung ihrer Aufgabe selbst abschalten.
|
|
||||||
|
|
||||||
### Autostarter
|
|
||||||
|
|
||||||
Ein **Autostarter** ist eine Konstruktion, welche entweder durch Spielerinteraktion oder/durch das replacen des
|
|
||||||
einzelnen Bedrocks, automatische Kanonen und oder automatische Schilde aktiviert.
|
|
||||||
|
|
||||||
### Kampfbereiten Zustand
|
|
||||||
|
|
||||||
Der **Kampfbereite Zustand** beschreibt den Zustand in dem das WarGear nach der Freigabe vor dem Kampf verweilt.
|
|
||||||
|
|
||||||
## Maße/Blöcke/Design
|
|
||||||
|
|
||||||
Ein WarGear ist 41 Blöcke hoch, 47 Blöcke tief und 67 Blöcke breit. In jede Richtung, außer nach unten, darf sich dieses
|
|
||||||
16 Blöcke ausfahren.
|
|
||||||
|
|
||||||
Es dürfen alle Blöcke in einem WarGear verbaut werden, die einen TNT-Widerstand von maximal 9 haben. Ausgenommen davon
|
|
||||||
sind alle Sprösslinge, jegliche Spawner, Eis (`minecraft:ice`), Nether-Portal und Lava. Wasser darf verbaut werden. Für
|
|
||||||
einen Autostarter darf im WarGear ein Bedrock verbaut werden, dieser muss in der Nähe der Kommandozentrale verbaut
|
|
||||||
werden. Zum Zeitpunkt der Kitvergabe, wird der Bedrock zu einem Slime Block replaced. Inventarblöcke dürfen
|
|
||||||
ausschließlich Blumen, Honigflaschen und Pferderüstungen beinhalten. Truhen, Fässer und Shulker Boxen dürfen TNT
|
|
||||||
beinhalten. In Werfer dürfen neben Blumen, Honigflaschen und Pferderüstungen auch noch 2\*64 Pfeile (ohne Effekt) oder
|
|
||||||
2\*64 Feuerbälle oder ein leerer Eimer sein. Der leeren Eimer darf hierbei nur für die Aufnahme und das wieder
|
|
||||||
platzieren von Pulverschnee verwendet werden. Es dürfen sich nur 2048 (32 Stacks) Pfeile und 2048 (32 Stacks) Feuerbälle
|
|
||||||
in Werfern befinden. In Lecterns dürfen Bücher enthalten sein.
|
|
||||||
|
|
||||||
Ein WarGear benötigt ein Design. Die äußere Schicht des WarGears darf maximal einen TNT-Widerstand von 6 besitzen. Es
|
|
||||||
wird eine durchgängige Struktur über die gesamte Front des WarGears erwartet. Dies bedeutet, dass keine größeren Flächen
|
|
||||||
keine Variation in der Tiefe besitzen. Eine Variation in der Tiefe kann teilweise auch durch Mauern oder Treppenstufen
|
|
||||||
erreicht werden, darf aber nicht überwiegend dadurch erzeugt werden. Ein Design muss darüber hinaus aus mindestens 2
|
|
||||||
verschiedenen Blöcken bestehen. Alle Redstone-Elemente, wie zum Beispiel Werfer, Redstonelampen, Redstone Blöcke, usw.,
|
|
||||||
und auch jegliches Glas werden nicht mitgezählt.
|
|
||||||
|
|
||||||
Jedes WarGear benötigt mindestens 1 Ausguck. Einer davon muss mindestens eine auf den Gegner weisende Oberfläche
|
|
||||||
von mindestens 6 durchsichtige Blöcke aufweisen. Ein Ausguck zählt nicht als dieser, wenn er den Lauf einer Kanone
|
|
||||||
darstellt.
|
|
||||||
|
|
||||||
## Kanonen
|
|
||||||
|
|
||||||
Ein WarGear darf maximal 14 Kanonen beinhalten. Es ist verboten, eine Vielzahl von Kanonen als eine einzige Kanone
|
|
||||||
auszugeben.
|
|
||||||
|
|
||||||
### Definitionen
|
|
||||||
|
|
||||||
Eine **Treibladung** ist ein gezündetes TNT, das durch seine Explosion Projektile und ggf. Step-Ladungen beschleunigt.
|
|
||||||
|
|
||||||
Eine **Step-Ladung** ist ein gezündetes TNT, das durch seine Explosion Projektile und ggf. weitere Step-Ladungen
|
|
||||||
beschleunigt. Diese dürfen keinen Block Schaden am Gegner verursachen und nicht für das Brechen von Schilden genutzt
|
|
||||||
werden.
|
|
||||||
|
|
||||||
Ein **Projektil** ist ein gezündetes TNT, welches Schaden am Gegner anrichtet.
|
|
||||||
|
|
||||||
Ein **Schuss** ist der Vorgang, bei dem Treibladungen, Projektile und ggf. Step-Ladungen beschleunigt werden. Ein Schuss
|
|
||||||
ist dann beendet, wenn keine weiteren TNT-Explosionen auf die Projektile Einfluss nehmen. Die Explosionen, welche von
|
|
||||||
einem Schuss ausgehen, dürfen im Kampfbereiten Zustand nicht das eigene WarGear beschädigen. Das Beschleunigen von
|
|
||||||
mehreren Projektilen, von noch getrennten Schüssen, durch die **selben** Steps lässt diese Schüsse als einen gelten.
|
|
||||||
|
|
||||||
Der **Abschusspunkt**, ist der Punkt, an dem das TNT die letzte Beschleunigung erhält, die nachfolgend zu einem
|
|
||||||
Verlassen oder Durchfliegen des eignen WarGears führt.
|
|
||||||
|
|
||||||
**Wasser** darf nicht verbaut werden um den Platz anderer Wasserquellen einzunehmen oder diese zu ersetzten.
|
|
||||||
|
|
||||||
Eine **Kanone** ist eine durchgehende Redstoneschaltung, welche mindestens einen Schuss abgeben kann.
|
|
||||||
|
|
||||||
### Manuelle Kanonen
|
|
||||||
|
|
||||||
Manuelle Kanonen dürfen vor dem Kampfgeschehen kein TNT beinhalten. Diese werden manuell beladen und dürfen auch mehrere
|
|
||||||
Schüsse abgeben ohne neu beladen werden zu müssen.
|
|
||||||
|
|
||||||
### Automatische Kanonen
|
|
||||||
|
|
||||||
Automatische Kanonen sind Kanonen, welche vor dem Kampfgeschehen TNT beinhalten und ohne nachgeladen zu werden mehrere
|
|
||||||
Schüsse abgeben können. Zu beachten ist, dass die Projektile aller Schüsse immer von dem/den exakt gleichen Punkt-/en
|
|
||||||
aus abgeschossen werden müssen. Vor Fightbeginn dürfen automatische Kanonen vollständig leergeschossen werden.
|
|
||||||
Automatische Kanonen müssen von der Kommandozentrale aus aktivierbar sein. Dies kann auch durch den Verbau des
|
|
||||||
Autostarters innerhalb der Kommandozentrale erfolgen. Des weiteren muss eine Möglichkeit innerhalb der Kommandozentrale
|
|
||||||
gegeben sein die automatische Kanone vollständig vor Fightbeginn leerschießen zu können.
|
|
||||||
|
|
||||||
Das wiederverwenden des Abschusswinkels einer Automatischen Kanone zählt immer als zweite Kanone. Auch das Nachladen
|
|
||||||
der Automatischen Kanone zählt als zweite Kanone.
|
|
||||||
|
|
||||||
#### Competitive
|
|
||||||
|
|
||||||
336 TNT dürfen in Automatischen Kanonen vorverbaut werden. Eine automatische Kanone muss mindestens 6 Schüsse
|
|
||||||
aufeinanderfolgend abgeben. Alle 6 Schüsse müssen dieselbe Projektilanzahl verschießen. Bei jedem weiteren Schuss darf
|
|
||||||
die Projektilanzahl abnehmen. SFAs dürfen eine maximale Feuerrate von einem Schuss alle 1,5 Redstoneticks haben.
|
|
||||||
Das Zünden der Projektile und Steps ist überall erlaubt.
|
|
||||||
|
|
||||||
#### Pro
|
|
||||||
|
|
||||||
600 TNT dürfen in Automatischen Kanonen vorverbaut werden. Eine automatische Kanone muss mindestens 8 Schüsse
|
|
||||||
aufeinanderfolgend abgeben. Alle 8 Schüsse müssen dieselbe Projektilanzahl verschießen. Bei jedem weiteren Schuss darf
|
|
||||||
die Projektilanzahl abnehmen. SFAs dürfen eine maximale Feuerrate von einem Schuss alle 0,5 Redstoneticks haben.
|
|
||||||
Die Projektile und Steps aller Schüsse **müssen** von dem/den exakt gleichen Punkt-/en aus gezündet werden.
|
|
||||||
|
|
||||||
## Schilde
|
|
||||||
|
|
||||||
Jeder Block, welcher aus den normalen Maßen, geschoben wird, zählt als Schild. Ausgenommen hiervon sind
|
|
||||||
Abschussvorrichtungen von Kanonen und einzelne ausfahrende Blöcke. Diese müssen weder von der Kommandozentrale aktiviert
|
|
||||||
werden, noch automatisch ausfahren können.
|
|
||||||
|
|
||||||
### Manuelle Schilde
|
|
||||||
|
|
||||||
Alle Manuelle Schilde benötigen einen aktiven Input eines Users um sich auszufahren. Der Autostarter zählt nicht als
|
|
||||||
aktiven Input. Alle manuelle Schilde müssen vollständig von der Kommandozentrale aus ansteuerbar sein. Darüber hinaus
|
|
||||||
dürfen die Schilde von weiteren Stellen aus aktivierbar sein. Wenn ein manuelles Schild mehrere Interaktionen braucht um
|
|
||||||
sich vollständig auszufahren, ist die Reihenfolge unmissverständlich in der Kommandozentrale anzugeben.
|
|
||||||
|
|
||||||
### Automatische Schilde
|
|
||||||
|
|
||||||
Alle Schilde, welche durch den Autostarter oder das Pasten aktivieren, zählen als automatische Schilde. Diese bedürfen
|
|
||||||
keiner weiteren Aktivierungsmöglichkeit in der Kommandozentrale.
|
|
||||||
|
|
||||||
## Kommandozentrale
|
|
||||||
|
|
||||||
Jedes WarGear braucht neben der Bewaffnung eine Kommandozentrale. Diese muss vom Prüfer als solche erkennbar sein. Sie
|
|
||||||
muss nicht abriegelbar sein und darf sich auch in einem Gang befinden. Die Ansteuerungselemente der Kommandozentrale
|
|
||||||
müssen nah beieinander sein.
|
|
||||||
Die Ansteuerungselemente sind:
|
|
||||||
|
|
||||||
- Ansteuerung von mindestens 8 Scheinwerfern, welche frontal vom Gegner aus, im angeschalteten/aufgedeckten Zustand,
|
|
||||||
erkennbar sein müssen
|
|
||||||
- Autostarter Block (Bedrock) oder alternative Autostarter Vorrichtung, für sowohl Automatische Schilde als auch für
|
|
||||||
Automatische Kanonen
|
|
||||||
- Manuelle Schildansteuerung
|
|
||||||
- Manuelle Ansteuerung für automatische Kanonen
|
|
||||||
|
|
||||||
## Publics
|
|
||||||
|
|
||||||
WarGears, welche später öffentlich werden, nennen sich Publics und unterliegen besonderen Anforderungen. Der Fokus eines
|
|
||||||
solchen Publics sollte auf der Verständlichkeit der Kanonen und Schilde liegen. Wir erwarten ein ausgeprägtes Außen- als
|
|
||||||
auch Innen-Design. Kanonen müssen **nicht** vollständig designt sein. An die Kommandozentrale gibt es neben den normalen
|
|
||||||
Regeln noch weitere Anforderungen. Diese muss ein nach Möglichkeit abriegelbarer eigenständiger Raum sein. Außerdem muss
|
|
||||||
der Ausguck in der Kommandozentrale verbaut sein. Alle Schilde müssen sich automatisch ausfahren und ein
|
|
||||||
Bedrock-Autostarter für automatische Kanonen verwendet werden. Automatische Kanonen müssen über eine Standarteinstellung
|
|
||||||
verfügen.
|
|
||||||
|
|
||||||
### Basic WarGear
|
|
||||||
|
|
||||||
#### Kanonen
|
|
||||||
|
|
||||||
- Second (oder mehr) - Step Stich Kanonen/SFAs sind nicht erlaubt (Ausnahme sind Q's, also Statics, welche im Gegner zu
|
|
||||||
einer
|
|
||||||
Seite stepen können)
|
|
||||||
- Backstich Kanonen/SFAs sind nicht erlaubt
|
|
||||||
- AKs sind erlaubt, dürfen allerdings kein Schwenkmodul und keine Höhenabprallblöcke haben (Ausnahme für Modes, die
|
|
||||||
unter der Kanonenhöhe liegen)
|
|
||||||
- SLS/SMS/STS Kanonen sind erlaubt, dürfen allerdings keine Höhenabprallblöcke haben.
|
|
||||||
- Mehr-Mann Kanonen (also Kanonen, welche von mehr als einer Person beladen werden) sind nicht erlaubt
|
|
||||||
- Automatische Kanonen sind gestattet, dürfen aber nicht schneller als 12 Tick laufen. Automatische Kanonen dürfen keine
|
|
||||||
Schilde brechen. Sie dürfen nur maximal 3 Block Dicke Schilde brechen
|
|
||||||
- Jegliche Streuschaden Kanonen (Smartie, Static, etc.) sind gestattet.
|
|
||||||
- Es darf Powderedsnow für das Erzeugen von Höhenmodi verwendet werden
|
|
||||||
|
|
||||||
#### Schilde
|
|
||||||
|
|
||||||
- 2 oder mehr Achsenmassivschilde sind nicht gestattet. Wurmloch oder 3D-Druck-Schilde ebenfalls nicht.
|
|
||||||
- Artischilde, Backstepschilde, Spikes, Massivschilde, Sandschilde, Vorgesetzte Sidestep- und Artischilde sind
|
|
||||||
gestattet, sollten aber nicht übermäßig verbaut werden.
|
|
||||||
|
|
||||||
### WarGear
|
|
||||||
|
|
||||||
Neben allen Regelungen von Basic WarGear gelten noch die folgenden.
|
|
||||||
|
|
||||||
#### Kanonen
|
|
||||||
|
|
||||||
- IDS und ISS sind erlaubt, allerdings nur in nicht brechend
|
|
||||||
- Automatische Kanonen sind gestattet, dürfen aber nicht schneller als 6 Tick laufen. Automatische Kanonen dürfen keine
|
|
||||||
Schilde brechen (Sie müssen also alle nicht brechend sein).
|
|
||||||
- Oberlader-Kanonen sind gestattet, sollten aber simpel gehalten werden
|
|
||||||
|
|
||||||
### Rat
|
|
||||||
|
|
||||||
Die oben genannten Punkte gelten nur als Richtwerte. Am Ende obliegt die Entscheidung, ob ein WarGear Public wird dem
|
|
||||||
WarGear-Rat. Der WG-Rat behält sich ebenfalls vor, diese Kriterien zu verändern und Ausnahmen festzulegen. Allgemein ist
|
|
||||||
eine gute Kommunikation mit dem WarGear-Rat beim Bau eines Publics von Vorteil.
|
|
||||||
|
|
||||||
## Bug-Using/Anti-Lag
|
|
||||||
|
|
||||||
Bis auf das direkte Zünden von TNT ist das Erzeugen von jeglicher anderen Entität in den Ausfahrmaßen des eigenen
|
|
||||||
WarGears verboten. Das Erzeugen von Sand-, Gravel-, Concrete-Powder-, DragonEgg-, Drippstone- und Scaffolding-Entities
|
|
||||||
ist in den Ausfahrmaßen des eigenen WarGears erlaubt, genauso ist das Erzeugen von Items, durch Dispenser oder Droppern
|
|
||||||
erlaubt. Feuerball-Entities, sowie Pfeil-Entities dürfen auch von Dispensern erzeugt werden.
|
|
||||||
|
|
||||||
Beacons dürfen im **nicht** aktiven Zustand verbaut werden und auch im Laufe eines Fights nicht aktiviert werden.
|
|
||||||
|
|
||||||
Der Techhider darf nicht missbraucht werden, um dadurch jegliche Läufe, auch Fake-Läufe unkenntlich und unersichtlich zu
|
|
||||||
machen. Außerdem darf die Designschicht keine Techhiderblöcke, welche Läufe oder ähnliches verbergen, enthalten. Das
|
|
||||||
Benutzen des Techhiders um damit Gänge unkenntlich zu machen ist ebenfalls verboten.
|
|
||||||
|
|
||||||
Übermäßiges Erzeugen von Lags (z.B. zu viele Banner, zu viele Partikel durch Campfire) kann zum Sperren der Schematic
|
|
||||||
führen.
|
|
||||||
|
|
||||||
## Prüfer
|
|
||||||
|
|
||||||
Dem Prüfer obliegt am Ende des Prüfprozesses, die finale Entscheidung darüber, ob das WarGear insbesondere im Bereich
|
|
||||||
von Grauzonen, noch konform ist. Des weiteren darf das Serverteam auch bei schon freigegebenen Schematics diese im
|
|
||||||
nachhinein sperren.
|
|
@ -1,79 +0,0 @@
|
|||||||
---
|
|
||||||
german: true
|
|
||||||
translationKey: ws
|
|
||||||
---
|
|
||||||
|
|
||||||
# WarShip-Regelwerk
|
|
||||||
|
|
||||||
## Definitionen
|
|
||||||
|
|
||||||
### WarShip
|
|
||||||
|
|
||||||
Ein WarShip ist eine bewaffnete, schwimmende Struktur in Minecraft mit der optischen Erscheinung eines Schiffes. Der Schwimmkörper muss dabei einen Großteil des WarShips ausmachen. Ein WarShip kann optional ein Design aufweisen, das andere im Wasser schwimmende/befindliche Dinge oder Tiere repräsentiert, sofern das gewählte Design gänzlich implementiert wird. Jedes WarShip muss beidseitig gleich bewaffnet sein.
|
|
||||||
|
|
||||||
### Projektil
|
|
||||||
|
|
||||||
Ein Projektil ist ein TNT, welches im gezündeten Zustand in die gegnerische Hälfte wechselt. Projektile müssen auf der dem Gegner zugewandten Schiffsseite gezündet werden. Unter Wasser gezündete Projektile müssen innerhalb des Technikbereiches, oberhalb der Wasserlinie gezündete Projektile innerhalb des Ausfahrbereichs gezündet werden.
|
|
||||||
|
|
||||||
### Kanone
|
|
||||||
|
|
||||||
Eine Kanone ist eine Vorrichtung zum Beschleunigen von Projektilen. Eine Kanone darf maximal 2 Projektile verschießen. Eine Kanone muss manuell beladen werden. Eine Kanone darf maximal alle 2s schießen. Es dürfen maximal 32 Kanonen pro Seite verbaut werden. Kanonen sind der einzige Ort, an dem Wasser verbaut werden darf, wenn es keinen anderen Zweck hat, als diese vor selbst verursachten Schaden zu bewahren und TNT zu transportieren.
|
|
||||||
|
|
||||||
## Maße
|
|
||||||
|
|
||||||
- Länge: 230 Block
|
|
||||||
- Breite: 35 Block (+ 4 Block Design pro Seite)
|
|
||||||
- Höhe: 30 Block + 20 Block Design
|
|
||||||
- Tiefe: Bis zu 8 Block unter dem Meeresspiegel
|
|
||||||
|
|
||||||
Bei jedem WarShip müssen sich mindestens 10% der absoluten Blöcke (45.000 Blöcke) über der Wasserlinie befinden.
|
|
||||||
|
|
||||||
Im Designbereich dürfen sich keine kampfrelevanten (Kanonen, Schleim/Honigfahrzeuge, Schilde) Techniken befinden. Eine Durchpanzerung des Designbereiches ist nicht zulässig. Der Designbereich ist ausschließlich für einzelne überstehende Designobjekte wie beispielsweise Kanonenrohre, Segel, Banner oder Bullaugen da.
|
|
||||||
|
|
||||||
## Blöcke
|
|
||||||
|
|
||||||
Es dürfen nur Blöcke mit einem TNT-Widerstand von maximal 6 verbaut werden. Vor und im Kampf dürfen sich in allen Blöcken mit Inventar nur Blumen, Honigflaschen und Pferderüstungen befinden, in Kisten und Fässer darf auch TNT sein. Es dürfen maximal 32 Werfer pro Seite verbaut werden. In Werfern dürfen sich 2×64 Feuerbälle oder 2×64 Pfeile (ohne Effekte) befinden.
|
|
||||||
|
|
||||||
Das Verbauen von unsichtbaren Mauern oder anderen unsichtbaren Blöcken mit Hitbox ist verboten.
|
|
||||||
Ebenso verboten sind: Monsterspawner, Eis, Netherportalblock, Alle Silberfischsteine.
|
|
||||||
|
|
||||||
Das Missbrauchen von unverschiebbaren Blöcken als Panzerung ist verboten.
|
|
||||||
Wasser darf nicht zum Schutz des eigenen WarShips missbraucht werden.
|
|
||||||
|
|
||||||
## Design
|
|
||||||
|
|
||||||
Größere Hohlräume im Rumpf zum Ausweichen feindlicher Schüsse sind nicht gestattet, auch nicht während des Kampfes. Jedes WarShip braucht eine Flagge.
|
|
||||||
|
|
||||||
Ein WarShip benötigt einen fortbewegungsfähigen Rumpf mit entsprechendem Antrieb (z.B. Segel, Schiffsschrauben).
|
|
||||||
Der Rumpf muss mindestens einen Block tief unter Wasser sowie mindestens 5 Block über dem Meeresspiegel sein (dies gilt auch während des Kampfes relativ zur Wasseroberfläche). Der Rumpf darf max. 16 Block hoch sein.
|
|
||||||
|
|
||||||
Jedes WarShip benötigt eine Brücke, welche die folgenden Kriterien erfüllt:
|
|
||||||
|
|
||||||
- Min. 50 begehbare Blöcke
|
|
||||||
- Min. 2 Block hoch im gesamten Brückenraum
|
|
||||||
- Ansteuerung von min. zwei zum Gegner gewandten Scheinwerfer
|
|
||||||
- Optische Brückeneinrichtung
|
|
||||||
|
|
||||||
## Anti-Lag-Regeln
|
|
||||||
|
|
||||||
Clocks müssen sich mit Ende ihres Einsatzzweckes selbst abschalten.
|
|
||||||
Sämtliche Redstonetechnik zum Schutz des eigenen WarShips muss ihre Aktivität vor dem Verteilen der Kits eingestellt haben.
|
|
||||||
Raketen und Flugmaschinen
|
|
||||||
|
|
||||||
Ein WarShip darf sich maximal 12 Block vom Technikbereich an weit ausfahren, davon ausgenommen sind Raketen und Flugmaschinen. Raketen und Flugmaschinen dürfen sich im Flug nicht in mehrere Schleim/Honigfahrzeuge aufteilen.
|
|
||||||
|
|
||||||
Flugmaschinen sind Schleim/Honigfahrzeuge, welche die Ausfahrmaße des WarShips verlassen und kein TNT zum Gegner transportieren. Flugmaschinen, welche TNT von Raketen zünden oder Flugmaschinen und/oder Raketen stoppen werden bei der Bestimmung der Anzahl nicht gezählt. Es dürfen maximal 8 Flugmaschinen pro Seite verbaut werden.
|
|
||||||
|
|
||||||
Eine Rakete ist ein Schleim/Honigfahrzeug, das TNT zum Gegner transportiert. Es dürfen maximal 12 Raketen pro Seite verbaut werden. Ein Raketenmagazin ist in der Lage, mehrere Raketen auf der nahezu gleichen Flugbahn zum Gegner zu schicken. Ein Raketenmagazin wird wie 2 Raketen gewertet.
|
|
||||||
|
|
||||||
Es dürften maximal 1000 der vorverbauten Slime- + Honig- + TNT-Blöcke das WarShip in Flugmaschinen und Raketen verlassen.
|
|
||||||
|
|
||||||
## Kampfablauf
|
|
||||||
|
|
||||||
60 Sekunden vor Kampfbeginn können Flugmaschinen und Raketen das eigene WarShip verlassen. Mit Kampfbeginn dürfen Blöcke abgebaut und platziert werden; TNT-Schaden wird aktiviert. 10 Minuten nach Kampfbeginn wird das Entern des feindlichen WarShips erlaubt. Spieler mit einem Kit, welches TNT beladen kann und nicht dem Kapitän zugeordnet ist, dürfen erst 15 Minuten nach Kampfbeginn entern.
|
|
||||||
|
|
||||||
Der Kampf endet, wenn:
|
|
||||||
|
|
||||||
- Der Kampf länger als 20 Minuten dauert
|
|
||||||
- Der Anführer eines Teams tot ist
|
|
||||||
- Ein WarShip zu 7% beschädigt wurde
|
|
19
src/env.d.ts
vendored
19
src/env.d.ts
vendored
@ -1,3 +1,22 @@
|
|||||||
|
/*
|
||||||
|
* This file is a part of the SteamWar software.
|
||||||
|
*
|
||||||
|
* Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU Affero General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU Affero General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU Affero General Public License
|
||||||
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
/// <reference path="../.astro/types.d.ts" />
|
/// <reference path="../.astro/types.d.ts" />
|
||||||
/// <reference types="astro/client" />
|
/// <reference types="astro/client" />
|
||||||
|
|
||||||
|
@ -27,12 +27,12 @@ const { title } = Astro.props;
|
|||||||
</a>
|
</a>
|
||||||
<div class="flex justify-center flex-wrap">
|
<div class="flex justify-center flex-wrap">
|
||||||
<div class="btn-dropdown my-1">
|
<div class="btn-dropdown my-1">
|
||||||
<div class="btn btn-gray" tabindex="0">
|
<button class="btn btn-gray">
|
||||||
<a href={l("/")}>
|
<a href={l("/")}>
|
||||||
<span class="btn__text">{t("navbar.links.home.title")}</span>
|
<span class="btn__text">{t("navbar.links.home.title")}</span>
|
||||||
</a>
|
</a>
|
||||||
<CaretDownOutline class="ml-2 mt-auto" />
|
<CaretDownOutline class="ml-2 mt-auto" />
|
||||||
</div>
|
</button>
|
||||||
<div>
|
<div>
|
||||||
<a class="btn btn-gray my-1" href={l("/announcements")}>{t("navbar.links.home.announcements")}</a>
|
<a class="btn btn-gray my-1" href={l("/announcements")}>{t("navbar.links.home.announcements")}</a>
|
||||||
<a class="btn btn-gray" href={l("/about")}>{t("navbar.links.home.about")}</a>
|
<a class="btn btn-gray" href={l("/about")}>{t("navbar.links.home.about")}</a>
|
||||||
@ -41,12 +41,12 @@ const { title } = Astro.props;
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="btn-dropdown my-1">
|
<div class="btn-dropdown my-1">
|
||||||
<div class="btn btn-gray" tabindex="0">
|
<button class="btn btn-gray">
|
||||||
<a rel="prefetch" href={l("/rules")}>
|
<a rel="prefetch" href={l("/rules")}>
|
||||||
<span class="btn__text">{t("navbar.links.rules.title")}</span>
|
<span class="btn__text">{t("navbar.links.rules.title")}</span>
|
||||||
</a>
|
</a>
|
||||||
<CaretDownOutline class="ml-2 mt-auto" />
|
<CaretDownOutline class="ml-2 mt-auto" />
|
||||||
</div>
|
</button>
|
||||||
<div>
|
<div>
|
||||||
<h2 class="px-2 text-gray-300">{t("navbar.links.rules.gamemode")}</h2>
|
<h2 class="px-2 text-gray-300">{t("navbar.links.rules.gamemode")}</h2>
|
||||||
<a href={l("/rules/wargear")} class="btn btn-gray">{t("navbar.links.rules.wg")}</a>
|
<a href={l("/rules/wargear")} class="btn btn-gray">{t("navbar.links.rules.wg")}</a>
|
||||||
@ -107,7 +107,7 @@ const { title } = Astro.props;
|
|||||||
<main class="flex-1">
|
<main class="flex-1">
|
||||||
<slot />
|
<slot />
|
||||||
</main>
|
</main>
|
||||||
<footer class="bg-gray-900 w-screen min-h-80 mt-4 rounded-t-2xl flex flex-col dark:bg-neutral-900">
|
<footer class="bg-gray-900 w-screen min-h-80 mt-4 pb-2 rounded-t-2xl flex flex-col dark:bg-neutral-900">
|
||||||
<div class="flex-1 flex justify-evenly items-center md:items-start mt-4 md:flex-row flex-col">
|
<div class="flex-1 flex justify-evenly items-center md:items-start mt-4 md:flex-row flex-col">
|
||||||
<div class="footer-card">
|
<div class="footer-card">
|
||||||
<h1>Serverstatus</h1>
|
<h1>Serverstatus</h1>
|
||||||
@ -130,7 +130,7 @@ const { title } = Astro.props;
|
|||||||
<a class="flex" href="/"><DiscordSolid class="mr-2" /> Discord</a>
|
<a class="flex" href="/"><DiscordSolid class="mr-2" /> Discord</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<span class="text-sm text-white text-center">© SteamWar.de - {new Date().getFullYear()}</span>
|
<span class="text-sm text-white text-center mt-1">© SteamWar.de - Made with ❤️ by Chaoscaot</span>
|
||||||
</footer>
|
</footer>
|
||||||
</div>
|
</div>
|
||||||
</Fragment>
|
</Fragment>
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
/*
|
||||||
|
* This file is a part of the SteamWar software.
|
||||||
|
*
|
||||||
|
* Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU Affero General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU Affero General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU Affero General Public License
|
||||||
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
import { sequence } from "astro/middleware"
|
import { sequence } from "astro/middleware"
|
||||||
import { useAstroI18n } from "astro-i18n"
|
import { useAstroI18n } from "astro-i18n"
|
||||||
|
|
||||||
|
@ -4,26 +4,37 @@ import {getCollection, CollectionEntry} from "astro:content";
|
|||||||
import PageLayout from "../../layouts/PageLayout.astro";
|
import PageLayout from "../../layouts/PageLayout.astro";
|
||||||
import {TagSolid, CalendarMonthSolid} from "flowbite-svelte-icons"
|
import {TagSolid, CalendarMonthSolid} from "flowbite-svelte-icons"
|
||||||
import TagComponent from "../../components/TagComponent.astro";
|
import TagComponent from "../../components/TagComponent.astro";
|
||||||
import {l} from "../../util/util";
|
|
||||||
import {capitalize} from "../../components/admin/util";
|
|
||||||
export const getStaticPaths = createGetStaticPaths(async () => {
|
export const getStaticPaths = createGetStaticPaths(async () => {
|
||||||
const posts = await getCollection('announcements', entry => entry.id.split('/')[0] === astroI18n.locale)
|
const posts = await getCollection('announcements', entry => entry.id.split('/')[0] === astroI18n.locale);
|
||||||
|
|
||||||
|
const germanPosts = await getCollection('announcements', entry => entry.id.split('/')[0] === 'de');
|
||||||
|
|
||||||
|
germanPosts.forEach(value => {
|
||||||
|
if (posts.find(post => post.data.key === value.data.key)) {
|
||||||
|
return
|
||||||
|
} else {
|
||||||
|
posts.push(value)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
return posts.map(value => ({
|
return posts.map(value => ({
|
||||||
params: {
|
params: {
|
||||||
slug: value.slug.split("/").slice(1).join("/")
|
slug: value.slug.split("/").slice(1).join("/")
|
||||||
},
|
},
|
||||||
props: {
|
props: {
|
||||||
post: value
|
post: value,
|
||||||
|
german: value.id.split('/')[0] != astroI18n.locale
|
||||||
}
|
}
|
||||||
}))
|
}))
|
||||||
})
|
})
|
||||||
|
|
||||||
interface Props {
|
interface Props {
|
||||||
post: CollectionEntry<'announcements'>
|
post: CollectionEntry<'announcements'>,
|
||||||
|
german: boolean
|
||||||
}
|
}
|
||||||
|
|
||||||
const {post} = Astro.props;
|
const {post, german} = Astro.props;
|
||||||
const { Content } = await post.render();
|
const { Content } = await post.render();
|
||||||
---
|
---
|
||||||
|
|
||||||
@ -37,7 +48,7 @@ const { Content } = await post.render();
|
|||||||
month: 'short',
|
month: 'short',
|
||||||
year: 'numeric'
|
year: 'numeric'
|
||||||
}).format(post.data.created)} </h5>
|
}).format(post.data.created)} </h5>
|
||||||
{post.data.german && (
|
{german && (
|
||||||
<div class="bg-yellow-100 border-l-4 border-yellow-500 text-yellow-700 p-4" role="alert">
|
<div class="bg-yellow-100 border-l-4 border-yellow-500 text-yellow-700 p-4" role="alert">
|
||||||
<div class="font-bold">{t("warning.title", {}, {route: "/rules"})}</div>
|
<div class="font-bold">{t("warning.title", {}, {route: "/rules"})}</div>
|
||||||
<div>{t("warning.text", {}, {route: "/rules"})}</div>
|
<div>{t("warning.text", {}, {route: "/rules"})}</div>
|
||||||
@ -111,6 +122,10 @@ const { Content } = await post.render();
|
|||||||
|
|
||||||
<style is:global>
|
<style is:global>
|
||||||
article {
|
article {
|
||||||
|
fight-table, group-table {
|
||||||
|
display: contents;
|
||||||
|
}
|
||||||
|
|
||||||
>* {
|
>* {
|
||||||
all: revert;
|
all: revert;
|
||||||
}
|
}
|
||||||
|
@ -3,10 +3,25 @@ import { getCollection } from "astro:content"
|
|||||||
import PageLayout from "../../layouts/PageLayout.astro";
|
import PageLayout from "../../layouts/PageLayout.astro";
|
||||||
import {astroI18n, t} from "astro-i18n";
|
import {astroI18n, t} from "astro-i18n";
|
||||||
import PostComponent from "../../components/PostComponent.astro";
|
import PostComponent from "../../components/PostComponent.astro";
|
||||||
import * as dayjs from "dayjs";
|
import dayjs from "dayjs";
|
||||||
|
|
||||||
const posts = (await getCollection("announcements", (entry) => entry.id.split("/")[0] === astroI18n.locale))
|
async function getPosts() {
|
||||||
.sort((a, b) => dayjs(b.data.created).unix() - dayjs(a.data.created).unix());
|
const posts = await getCollection('announcements', entry => entry.id.split('/')[0] === astroI18n.locale);
|
||||||
|
|
||||||
|
const germanPosts = await getCollection('announcements', entry => entry.id.split('/')[0] === 'de');
|
||||||
|
|
||||||
|
germanPosts.forEach(value => {
|
||||||
|
if (posts.find(post => post.data.key === value.data.key)) {
|
||||||
|
return
|
||||||
|
} else {
|
||||||
|
posts.push(value)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
return posts.sort((a, b) => dayjs(b.data.created).unix() - dayjs(a.data.created).unix()).filter((value, index) => index < 20);
|
||||||
|
}
|
||||||
|
|
||||||
|
const posts = await getPosts();
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
@ -5,11 +5,24 @@ import {getCollection} from "astro:content";
|
|||||||
import PageLayout from "../../../layouts/PageLayout.astro";
|
import PageLayout from "../../../layouts/PageLayout.astro";
|
||||||
import {capitalize} from "../../../components/admin/util";
|
import {capitalize} from "../../../components/admin/util";
|
||||||
import PostComponent from "../../../components/PostComponent.astro";
|
import PostComponent from "../../../components/PostComponent.astro";
|
||||||
import * as dayjs from "dayjs";
|
import dayjs from "dayjs";
|
||||||
|
|
||||||
export const getStaticPaths = createGetStaticPaths(async () => {
|
export const getStaticPaths = createGetStaticPaths(async () => {
|
||||||
const posts = (await getCollection('announcements', entry => entry.id.split("/")[0] === astroI18n.locale))
|
let posts = (await getCollection('announcements', entry => entry.id.split("/")[0] === astroI18n.locale));
|
||||||
.sort((a, b) => dayjs(b.data.created).unix() - dayjs(a.data.created).unix());
|
|
||||||
|
const germanPosts = await getCollection('announcements', entry => entry.id.split('/')[0] === 'de');
|
||||||
|
|
||||||
|
posts.sort((a, b) => dayjs(b.data.created).unix() - dayjs(a.data.created).unix());
|
||||||
|
|
||||||
|
germanPosts.forEach(value => {
|
||||||
|
if (posts.find(post => post.data.key === value.data.key)) {
|
||||||
|
return
|
||||||
|
} else {
|
||||||
|
posts.push(value)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
posts = posts.filter((value, index) => index < 20)
|
||||||
|
|
||||||
let groupedByTags: Record<string, CollectionEntry<'announcements'>[]> = {}
|
let groupedByTags: Record<string, CollectionEntry<'announcements'>[]> = {}
|
||||||
posts.forEach(post => {
|
posts.forEach(post => {
|
||||||
|
@ -6,23 +6,34 @@ import PageLayout from "../../layouts/PageLayout.astro";
|
|||||||
export const getStaticPaths = createGetStaticPaths(async () => {
|
export const getStaticPaths = createGetStaticPaths(async () => {
|
||||||
let posts = await getCollection("rules", value => value.id.split("/")[0] === astroI18n.locale);
|
let posts = await getCollection("rules", value => value.id.split("/")[0] === astroI18n.locale);
|
||||||
|
|
||||||
|
const germanPosts = await getCollection('rules', entry => entry.id.split('/')[0] === 'de');
|
||||||
|
|
||||||
|
germanPosts.forEach(value => {
|
||||||
|
if (posts.find(post => post.id.split("/")[1] === value.id.split("/")[1])) {
|
||||||
|
return
|
||||||
|
} else {
|
||||||
|
posts.push(value)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
return posts.map((page) => ({
|
return posts.map((page) => ({
|
||||||
props: { page }, params: { mode: page.slug.split("/")[1] }
|
props: { page, german: page.id.split("/")[0] != astroI18n.locale }, params: { mode: page.slug.split("/")[1] }
|
||||||
}))
|
}))
|
||||||
})
|
})
|
||||||
|
|
||||||
interface Props {
|
interface Props {
|
||||||
page: CollectionEntry<"rules">
|
page: CollectionEntry<"rules">,
|
||||||
|
german: boolean
|
||||||
}
|
}
|
||||||
|
|
||||||
const { page } = Astro.props;
|
const { page, german } = Astro.props;
|
||||||
const { Content } = await page.render();
|
const { Content } = await page.render();
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|
||||||
<PageLayout title={t("title", {mode: t(`${page.data.translationKey}.title`, {}, {route: "/rules"})}, {route: "/rules"})}>
|
<PageLayout title={t("title", {mode: t(`${page.data.translationKey}.title`, {}, {route: "/rules"})}, {route: "/rules"})}>
|
||||||
<article>
|
<article>
|
||||||
{page.data.german && (
|
{german && (
|
||||||
<div class="bg-yellow-100 border-l-4 border-yellow-500 text-yellow-700 p-4" role="alert">
|
<div class="bg-yellow-100 border-l-4 border-yellow-500 text-yellow-700 p-4" role="alert">
|
||||||
<div class="font-bold">{t("warning.title", {}, {route: "/rules"})}</div>
|
<div class="font-bold">{t("warning.title", {}, {route: "/rules"})}</div>
|
||||||
<div>{t("warning.text", {}, {route: "/rules"})}</div>
|
<div>{t("warning.text", {}, {route: "/rules"})}</div>
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
/*
|
||||||
|
* This file is a part of the SteamWar software.
|
||||||
|
*
|
||||||
|
* Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU Affero General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU Affero General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU Affero General Public License
|
||||||
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
.btn {
|
.btn {
|
||||||
@apply bg-yellow-400 font-bold py-2 px-4 rounded cursor-pointer select-none mx-2 text-black flex flex-row;
|
@apply bg-yellow-400 font-bold py-2 px-4 rounded cursor-pointer select-none mx-2 text-black flex flex-row;
|
||||||
@apply hover:bg-yellow-300 hover:text-black hover:shadow-2xl hover:scale-105;
|
@apply hover:bg-yellow-300 hover:text-black hover:shadow-2xl hover:scale-105;
|
||||||
|
@ -1,3 +1,22 @@
|
|||||||
|
/*
|
||||||
|
* This file is a part of the SteamWar software.
|
||||||
|
*
|
||||||
|
* Copyright (C) 2023 SteamWar.de-Serverteam
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU Affero General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU Affero General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU Affero General Public License
|
||||||
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
import { l as proxyL } from 'astro-i18n'
|
import { l as proxyL } from 'astro-i18n'
|
||||||
|
|
||||||
const locales = ["de"];
|
const locales = ["de"];
|
||||||
|
Laden…
In neuem Issue referenzieren
Einen Benutzer sperren