prison SLA is here

This commit is contained in:
Stachelbeere1248 2024-06-25 01:20:26 +02:00
parent f6a3d3272f
commit c3947d8fb3
Signed by: Stachelbeere1248
SSH key fingerprint: SHA256:IozEKdw2dB8TZxkpPdMxcWSoWTIMwoLaCcZJ1AJnY2o
5 changed files with 112 additions and 11 deletions

View file

@ -1,5 +1,5 @@
# zombies-utils # zombies-utils
##### Download latest release: [v1.3.3](https://github.com/Stachelbeere1248/zombies-utils/releases/tag/v1.3.3). ##### Download latest release: [v1.3.4](https://github.com/Stachelbeere1248/zombies-utils/releases/tag/v1.3.4).
Hello, I am currently working on this mod. More features will come. For now it has: Hello, I am currently working on this mod. More features will come. For now it has:
- An accurate timer + Automatic splitting - An accurate timer + Automatic splitting
- Tracking of splits & segment PBs (with custom categories) - Tracking of splits & segment PBs (with custom categories)
@ -34,7 +34,7 @@ The timer automatically splits every round. The PB/Segment recorder automaticall
- note: you do NOT need to make your own categories to seperate difficulties or map - note: you do NOT need to make your own categories to seperate difficulties or map
- /sla \<off|map|quick|rotate|mirror|offset> - /sla \<off|map|quick|rotate|mirror|offset>
- /sla off - Disables the SLA hud - /sla off - Disables the SLA hud
- /sla map \<de|bb|aa> - forcefully set the map - /sla map \<de|bb|aa|p> - forcefully set the map
- /sla quick \<mogi_a|ghxula|ghxula-garden> - /sla quick \<mogi_a|ghxula|ghxula-garden>
- /sla rotate - rotates all windows around the axis (0,y,0) - /sla rotate - rotates all windows around the axis (0,y,0)
- /sla mirror \<x|z> - mirrors all windows along the plane (0,y,z) or (x,y,0) - /sla mirror \<x|z> - mirrors all windows along the plane (0,y,z) or (x,y,0)

View file

@ -3,4 +3,4 @@ org.gradle.jvmargs=-Xmx2g
baseGroup = com.github.stachelbeere1248.zombiesutils baseGroup = com.github.stachelbeere1248.zombiesutils
mcVersion = 1.8.9 mcVersion = 1.8.9
modid = zombiesutils modid = zombiesutils
version = 1.3.3 version = 1.3.4

View file

@ -21,7 +21,7 @@ public class SlaCommand extends CommandBase {
@Override @Override
public String getCommandUsage(ICommandSender sender) { public String getCommandUsage(ICommandSender sender) {
return "/sla off\n/sla offset [x] [x] [x]\n/sla rotate\n/sla mirror\n/sla map <de|bb|aa>\n/sla quick"; return "/sla off\n/sla offset [x] [x] [x]\n/sla rotate\n/sla mirror\n/sla map <de|bb|aa|p>\n/sla quick";
} }
@Override @Override
@ -83,9 +83,12 @@ public class SlaCommand extends CommandBase {
case "aa": case "aa":
SLA.instance = new SLA(Map.ALIEN_ARCADIUM); SLA.instance = new SLA(Map.ALIEN_ARCADIUM);
break; break;
case "p":
SLA.instance = new SLA(Map.PRISON);
break;
default: default:
throw new WrongUsageException( throw new WrongUsageException(
"[Invalid option] options: de, bb, aa", args[1]); "[Invalid option] options: de, bb, aa, p", args[1]);
} }
break; break;
case "quick": case "quick":
@ -124,7 +127,7 @@ public class SlaCommand extends CommandBase {
if (args.length < 5) options.add("0"); if (args.length < 5) options.add("0");
break; break;
case "map": case "map":
options.addAll(Arrays.asList("de", "bb", "aa")); options.addAll(Arrays.asList("de", "bb", "aa", "p"));
break; break;
case "mirror": case "mirror":
options.addAll(Arrays.asList("x", "z")); options.addAll(Arrays.asList("x", "z"));

View file

@ -30,8 +30,7 @@ public class SLA {
this.rooms = Room.getAA(); this.rooms = Room.getAA();
break; break;
case PRISON: case PRISON:
this.rooms = new Room[0]; this.rooms = Room.getP();
Minecraft.getMinecraft().thePlayer.addChatMessage(new ChatComponentText("§cThis map has no SLA database yet. Contribute by dming Stachelbeere1248 coordinates for windows on Discord."));
break; break;
default: default:
throw new IllegalStateException("Unexpected value: " + map); throw new IllegalStateException("Unexpected value: " + map);

View file

@ -149,10 +149,109 @@ public class Room {
}) })
}; };
} }
@Contract(" -> new") @Contract(" -> new")
public static Room @NotNull [] getPrison() { public static Room @NotNull [] getP() {
return new Room[0]; return new Room[]{
new Room("Cell Blocks", "cb", new Window[]{
new Window(1, 109, 144, 21),
new Window(2, 109, 144, -19),
new Window(3, 193, 158, -17),
new Window(4, 193, 158, 19),
}),
new Room("Corridors", "co", new Window[]{
new Window(1, 189, 144, 21),
new Window(2, 251, 144, 31),
new Window(3, 219, 144, -21),
new Window(4, 233, 144, -49),
new Window(5, 221, 158, -21),
new Window(6, 255, 158, 9),
new Window(7, 273, 158, 51),
}),
new Room("Cafeteria", "ca", new Window[]{
new Window(1, 249, 144, 73),
new Window(2, 189, 144, 25),
}),
new Room("Visitor's Room", "v", new Window[]{
new Window(1, 261, 146, -45),
}),
new Room("Library", "l", new Window[]{
new Window(1, 265, 158, 9),
new Window(2, 263, 158, -47),
}),
new Room("Monitor Room", "mt", new Window[]{
new Window(1, 201, 158, 25),
new Window(2, 197, 158, 3),
}),
new Room("Medical Bay", "mt", new Window[]{
new Window(1, 249, 158, 31),
new Window(2, 223, 158, 53),
}),
new Room("The Courts", "cs", new Window[]{
new Window(1, 285, 144, 81),
new Window(2, 211, 144, 157),
}),
new Room("Offices", "o", new Window[]{
new Window(1, 153, 144, 161),
new Window(2, 151, 144, 191),
new Window(3, 99, 144, 181),
new Window(4, 123, 144, 163),
new Window(5, 71, 144, 163),
}),
new Room("Head Manager's Office", "h", new Window[]{
new Window(1, 179, 158, 169),
new Window(2, 179, 158, 177),
new Window(3, 79, 158, 177),
new Window(4, 79, 158, 169),
}),
new Room("Basement Corridor", "bc", new Window[]{
new Window(1, 231, 130, 29),
}),
new Room("The Deep", "d", new Window[]{
new Window(1, 167, 126, -45),
new Window(2, 163, 122, 13),
new Window(3, 193, 122, 13),
}),
new Room("Boiler Room", "b", new Window[]{
new Window(1, 107, 126, -11),
new Window(2, 125, 126, 25),
new Window(3, 163, 130, -45),
new Window(4, 107, 130, -45),
}),
new Room("Yard", "y", new Window[]{
new Window(1, 185, 144, 79),
new Window(2, 189, 144, 119),
new Window(3, 107, 144, 121),
}),
new Room("Alleyway", "a", new Window[]{
new Window(1, 101, 144, 133),
}),
new Room("Guard's Gunroom", "gr", new Window[]{
new Window(1, 29, 148, 75),
new Window(2, 29, 144, 43),
new Window(3, 65, 126, 5),
}),
new Room("Guard's Quarters", "q", new Window[]{
new Window(1, 83, 148, 83),
new Window(2, 57, 148, 35),
}),
new Room("Stockage", "st", new Window[]{
new Window(1, 241, 130, -25),
new Window(2, 227, 130, -45),
}),
new Room("Kitchen", "k", new Window[]{
new Window(1, 261, 144, 33),
new Window(2, 271, 144, 45),
}),
new Room("Isolation", "i", new Window[]{
new Window(1, 75, 144, 91),
new Window(2, 29, 144, 87),
}),
new Room("Showers", "sh", new Window[]{
new Window(1, 37, 144, 15),
new Window(2, 37, 144, -11),
}),
};
} }
public String getName() { public String getName() {