1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
|
package gregtech.api.interfaces;
import java.math.BigInteger;
import java.util.UUID;
import net.minecraft.entity.player.EntityPlayer;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.common.misc.WirelessNetworkManager;
// If you are adding very late-game content feel free to tap into this interface.
// The eventual goal is to bypass laser/dynamo stuff and have energy deposited directly from ultra-endgame
// multi-blocks directly into the users network.
/**
* Use WirelessNetworkManager instead
*/
@Deprecated
public interface IGlobalWirelessEnergy {
// User 0 will join user 1 by calling this function. They will share the same energy network.
default void joinUserNetwork(String user_uuid_0, String user_uuid_1) {
WirelessNetworkManager.joinUserNetwork(user_uuid_0, user_uuid_1);
}
// Adds a user to the energy map if they do not already exist. Otherwise, do nothing. Will also check if the user
// has changed their username and adjust the maps accordingly. This should be called infrequently. Ideally on first
// tick of a machine being placed only.
default void strongCheckOrAddUser(EntityPlayer user) {
WirelessNetworkManager.strongCheckOrAddUser(
user.getUniqueID()
.toString(),
user.getDisplayName());
}
default void strongCheckOrAddUser(UUID user_uuid, String user_name) {
WirelessNetworkManager.strongCheckOrAddUser(user_uuid.toString(), user_name);
}
default void strongCheckOrAddUser(String user_uuid, String user_name) {
WirelessNetworkManager.strongCheckOrAddUser(user_uuid, user_name);
}
// ------------------------------------------------------------------------------------
// Add EU to the users global energy. You can enter a negative number to subtract it.
// If the value goes below 0 it will return false and not perform the operation.
// BigIntegers have much slower operations than longs/ints. You should call these methods
// as infrequently as possible and bulk store values to add to the global map.
default boolean addEUToGlobalEnergyMap(String userUUID, BigInteger EU) {
return WirelessNetworkManager.addEUToGlobalEnergyMap(userUUID, EU);
}
default boolean addEUToGlobalEnergyMap(UUID user_uuid, BigInteger EU) {
return addEUToGlobalEnergyMap(user_uuid.toString(), EU);
}
default boolean addEUToGlobalEnergyMap(UUID user_uuid, long EU) {
return addEUToGlobalEnergyMap(user_uuid.toString(), BigInteger.valueOf(EU));
}
default boolean addEUToGlobalEnergyMap(UUID user_uuid, int EU) {
return addEUToGlobalEnergyMap(user_uuid.toString(), BigInteger.valueOf(EU));
}
default boolean addEUToGlobalEnergyMap(String user_uuid, long EU) {
return addEUToGlobalEnergyMap(user_uuid, BigInteger.valueOf(EU));
}
default boolean addEUToGlobalEnergyMap(String user_uuid, int EU) {
return addEUToGlobalEnergyMap(user_uuid, BigInteger.valueOf(EU));
}
// ------------------------------------------------------------------------------------
default BigInteger getUserEU(String user_uuid) {
return WirelessNetworkManager.getUserEU(user_uuid);
}
// This overwrites the EU in the network. Only use this if you are absolutely sure you know what you are doing.
default void setUserEU(String user_uuid, BigInteger EU) {
WirelessNetworkManager.setUserEU(user_uuid, EU);
}
default String GetUsernameFromUUID(String uuid) {
return WirelessNetworkManager.getUsernameFromUUID(uuid);
}
default String getUUIDFromUsername(String username) {
return WirelessNetworkManager.getUUIDFromUsername(username);
}
/**
*
* @param username
* @return
*/
default String getRawUUIDFromUsername(String username) {
return WirelessNetworkManager.getRawUUIDFromUsername(username);
}
static void clearGlobalEnergyInformationMaps() {
WirelessNetworkManager.clearGlobalEnergyInformationMaps();
}
default String processInitialSettings(final IGregTechTileEntity machine) {
return WirelessNetworkManager.processInitialSettings(machine);
}
}
|