1
1
package dev .ithundxr .railwaystweaks .commands ;
2
2
3
+ import com .mojang .brigadier .Command ;
3
4
import com .mojang .brigadier .builder .ArgumentBuilder ;
5
+ import com .mojang .brigadier .context .CommandContext ;
4
6
import com .simibubi .create .Create ;
5
7
import com .simibubi .create .content .trains .entity .CarriageContraptionEntity ;
6
8
import dev .ithundxr .railwaystweaks .RailwaysTweaks ;
9
11
import me .pepperbell .simplenetworking .S2CPacket ;
10
12
import net .fabricmc .fabric .api .command .v2 .CommandRegistrationCallback ;
11
13
import net .minecraft .commands .CommandSourceStack ;
14
+ import net .minecraft .commands .Commands ;
15
+ import net .minecraft .commands .arguments .UuidArgument ;
12
16
import net .minecraft .network .chat .Component ;
13
17
import slimeknights .tconstruct .common .network .TinkerNetwork ;
18
+ import xaero .pac .common .server .api .OpenPACServerAPI ;
19
+ import xaero .pac .common .server .parties .party .api .IServerPartyAPI ;
14
20
15
- import java .util .ArrayList ;
16
- import java .util .HashMap ;
17
- import java .util .List ;
18
- import java .util .Map ;
21
+ import java .util .*;
19
22
20
23
import static net .minecraft .commands .Commands .literal ;
21
24
@@ -36,6 +39,18 @@ public static void init() {
36
39
.requires (cs -> cs .hasPermission (2 ))
37
40
.executes (ctx -> avgMSPT (ctx .getSource ())));
38
41
});
42
+
43
+ CommandRegistrationCallback .EVENT .register ((dispatcher , registryAccess , environment ) -> {
44
+ dispatcher .register (literal ("railwaystweaks" )
45
+ .then (
46
+ literal ("opac-party" )
47
+ .then (Commands .argument ("player_uuid" , UuidArgument .uuid ())
48
+ .executes (RailwaysTweaksCommands ::getPlayerPartyName )
49
+ )
50
+ )
51
+ );
52
+ });
53
+
39
54
}
40
55
41
56
private static ArgumentBuilder <CommandSourceStack , ?> $dump_hephaestus_packets () {
@@ -109,4 +124,19 @@ private static int avgMSPT(CommandSourceStack source) {
109
124
source .sendSuccess (() -> Component .literal ("Average MSPT (10s): " + String .format ("%.1f" , RailwaysTweaks .MSPT_TRACKER .getAverageMSPT ())), true );
110
125
return 0 ;
111
126
}
127
+
128
+ private static int getPlayerPartyName (CommandContext <CommandSourceStack > ctx ) {
129
+ UUID uuid = UuidArgument .getUuid (ctx , "player_uuid" );
130
+
131
+ OpenPACServerAPI api = OpenPACServerAPI .get (ctx .getSource ().getServer ());
132
+ IServerPartyAPI partyAPI = api .getPartyManager ().getPartyByMember (uuid );
133
+
134
+ if (partyAPI != null ) {
135
+ ctx .getSource ().sendSuccess (() -> Component .literal (partyAPI .getDefaultName () + "\n " + partyAPI .getId ()), true );
136
+ return 0 ;
137
+ } else {
138
+ ctx .getSource ().sendFailure (Component .literal ("Failed to get a party uuid from this player" ));
139
+ return 1 ;
140
+ }
141
+ }
112
142
}
0 commit comments