Skip to content

Commit 350fdd4

Browse files
JustAPototamarcus8448
and
marcus8448
authored
fix: Space Race Manager screen not rendering as it should (#321)
* fix: Space Race Manager screen rendering out of order * fix: Space Race Manager screen animation not respecting framerate * chore: combine Space Race Manager button renderers * fix: button renderer * refactor: convert Space Race Manager buttons to widgets * refactor: better Space Race Manager menu switching * feat: team color menu and customize flag button * feat: Space Race menu translations * wip: draw flag when confirming after drag+drop * fix: license header in ConfirmFlagScreen.java * feat: draw flag in space race menu * fix: pose stack usage in ConfirmFlagScreen.java * fix: use the right function in SpaceRaceScreen.java Co-authored-by: marcus8448 <marcus8448_devtools@outlook.com> --------- Co-authored-by: marcus8448 <marcus8448_devtools@outlook.com>
1 parent 3f46476 commit 350fdd4

File tree

5 files changed

+328
-241
lines changed

5 files changed

+328
-241
lines changed

src/main/generated/assets/galacticraft/lang/en_us.json

+9-1
Original file line numberDiff line numberDiff line change
@@ -594,13 +594,21 @@
594594
"ui.galacticraft.space_race_manager.back": "Back",
595595
"ui.galacticraft.space_race_manager.button": "Space Race",
596596
"ui.galacticraft.space_race_manager.button_2": "Manager",
597+
"ui.galacticraft.space_race_manager.color.blue": "Blue",
598+
"ui.galacticraft.space_race_manager.color.green": "Green",
599+
"ui.galacticraft.space_race_manager.color.red": "Red",
597600
"ui.galacticraft.space_race_manager.coming_soon": "Coming Soon™",
601+
"ui.galacticraft.space_race_manager.customize_flag": "Customize Flag",
602+
"ui.galacticraft.space_race_manager.drap_and_drop_flag": "Drag and drop an image to use as a flag",
598603
"ui.galacticraft.space_race_manager.exit": "Exit",
599-
"ui.galacticraft.space_race_manager.flag.confirm": "Confirm Flag",
604+
"ui.galacticraft.space_race_manager.flag.confirm": "Use this team flag?",
600605
"ui.galacticraft.space_race_manager.flag.confirm.message": "",
601606
"ui.galacticraft.space_race_manager.global_stats": "Global Statistics",
602607
"ui.galacticraft.space_race_manager.remove_players": "Remove Player(s)",
603608
"ui.galacticraft.space_race_manager.server_stats": "Server Statistics",
609+
"ui.galacticraft.space_race_manager.team_color_1": "Change",
610+
"ui.galacticraft.space_race_manager.team_color_2": "Team",
611+
"ui.galacticraft.space_race_manager.team_color_3": "Color",
604612
"ui.galacticraft.status.already_sealed": "Already Sealed",
605613
"ui.galacticraft.status.area_too_large": "Area Too Large",
606614
"ui.galacticraft.status.blocked": "Blocked",
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
/*
2+
* Copyright (c) 2019-2024 Team Galacticraft
3+
*
4+
* Permission is hereby granted, free of charge, to any person obtaining a copy
5+
* of this software and associated documentation files (the "Software"), to deal
6+
* in the Software without restriction, including without limitation the rights
7+
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8+
* copies of the Software, and to permit persons to whom the Software is
9+
* furnished to do so, subject to the following conditions:
10+
*
11+
* The above copyright notice and this permission notice shall be included in all
12+
* copies or substantial portions of the Software.
13+
*
14+
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15+
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16+
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17+
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18+
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19+
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
20+
* SOFTWARE.
21+
*/
22+
23+
package dev.galacticraft.mod.client.gui.screen.ingame;
24+
25+
import it.unimi.dsi.fastutil.booleans.BooleanConsumer;
26+
import net.minecraft.client.gui.GuiGraphics;
27+
import net.minecraft.client.gui.screens.ConfirmScreen;
28+
import net.minecraft.network.chat.Component;
29+
import net.minecraft.resources.ResourceLocation;
30+
import net.minecraft.util.Mth;
31+
32+
public class ConfirmFlagScreen extends ConfirmScreen {
33+
protected final ResourceLocation imageLocation;
34+
public ConfirmFlagScreen(BooleanConsumer booleanConsumer, ResourceLocation flagImage, Component component, Component component2) {
35+
super(booleanConsumer, component, component2);
36+
this.imageLocation = flagImage;
37+
}
38+
39+
private int titleTop() {
40+
int i = this.height/2;
41+
return Mth.clamp(i - 20 - this.font.lineHeight, 10, 80);
42+
}
43+
44+
private int flagTop() {
45+
return this.titleTop() + 20;
46+
}
47+
48+
@Override
49+
public void render(GuiGraphics graphics, int mouseX, int mouseY, float delta) {
50+
super.render(graphics, mouseX, mouseY, delta);
51+
graphics.blit(this.imageLocation, this.width/2 - 24, this.flagTop(), 0, 0, 0, 48, 32, 48, 32);
52+
}
53+
}

0 commit comments

Comments
 (0)