Better admin management

This commit is contained in:
Anuken
2020-02-11 13:06:52 -05:00
parent d99f9740e8
commit ad7c72015c
3 changed files with 23 additions and 21 deletions

View File

@ -21,7 +21,7 @@ public class SerializeProcess extends BaseProcessor{
/** Target class name. */
private static final String className = "Serialization";
/** Name of the base package to put all the generated classes. */
private static final String data = "eJy1V21v2zYQ/gf7DZyAAVTjqUk6rFvVdMhbNwNt2sVpg6EOCoqibSYSKZCUHdfwH9+n3ZF07KT24g2bEUQiebx77rkXUt/82TB+w4aC1FKVrXVmmpWiaIe5rBttHGGGZ09WBwNZCftgqlUPhGrmRvdnWierNTNWGMkq+YU5qdVyfQmGayPWzUu9blYJlx0afibce6PHshRmk9R7cFu4FUeu2Zjd0+onKqaGmRGDSnD3YEl9Jew9+iIbmOYVs5Z01TXs02bWtEUlObEO/ORkrGVJpKTp7DxqtsLRgKgXCQHkXkeHJBMjnTBJh9Bjrez+y3WOdMjR1ImjdjAQ5lVKmw4pUvL9KzKTA9oQqcCy4kIPCKhQYDHsSmf3hoSTA29kRaLJC1D86YoYYdvKdUsQUWJC/OzuVQ4w0Ma7XibtoSoNuAZavfd8D2T9azbQ5ozVgiYsiGTaZketrMokzXvOSDX0I2FIEZ/Byr01muavpahKADPApwUhvpcNhfPTFtbBDvWDIEFeRMkUMfpXFL+YNoKm5OAg6g9MpzP0JdrPWNMIVS73UNVWVZrmc84cH9GLkdETVlSCAInz+TyShA+7ytBPVzm+n4PfdKHa6WCWptmI2dGxLgFNCsG8dRhES72WNF9h3M/kc1FZQRZsX0Ia6AnAxk0NGIeUYE4MpUcwoyH+wRSppBIwCxvFreA0mdSQh9w2RpctdwQcJB8+dE8gHNt4gtoyUFw/7oJrjVrA70RMr6GFEOwjoB/fM24EIL8QdYNDmkA5DG8g4ZNsXNgEw16JS18FZDCJoJZzFFUt8ojADnKQ9MAhXVxfvu1CQY0lR1O/CveuwIKk/WQiVT2snX3Rh1/W7xutXb/PZT3e7ydpXyU7xOvguuo6USMT99Rlp0Dj760wU/KZBHFCCCjuCSxo8oQMjK4JxOjZ/ucjZsWRZqYE1VH4tTbklPERakUDUKJLW0Hk0nIjG5ed8pFeiGWhPZy1dQFcBDlxKx2BxI/DM4gBvuaDSeY7BwVGUhzxSlsIU74hJXiwR54+PdNv9FCDRzs+Spj+x0xpJTmr3kNnx1CH6P+32eKNlUCgQ5ibcoeUEtvDMR4M4TBihdVVC5uSY4gndP6hYfUJc6zfRx+6CqrC191v4jaW3ltwY5AZgKfrnhAl7U0t8jv0J0cjjJvSpIXTKVPQt5JV4B2y2yE/x18KLQEK8lvABDRK66ALpTMc1Tfwf9GTpHJEAujdHB4vyR4+d3aCIB9BW6DJZe+P3jZoabQLokl2cngB2HyYA5N3AXiwJb2C1jUH8tzQAY4t7T5//hxWtqcmkgE2VsjYJkXWJAMqWXEszs5jVuAqNI0yLKJvi7RGUGDmEdB5oXUlmCJMTUF6wKCzrovUsqdmlVBDN4qBw6NipT8vxT5RCZShkVVeyHdfa7ryx0qaBwTOtCIvwKWbDUcMEguiKXE472k8b5WTtTi95aLB+xPygEfE7G9EEnR+vs4EuhSqy99ZpqE3AMbDpsFiOlks0P+7oO4gLIsIgMUDY7kYEngdmH+csb7zLFP2kZJ91P66et2+TP9lwXgf1lbMXZp6kXtl81Ue7KeLK0PbynLRZ+FAdjBnkdLoY4LreEYnnkIcwaXktG6A7GXVB+PbeBEk0zyaXd7+KB6fP/6A8YIeqzjGLQqn+X10TevucOHj4bpl43Cy3DESXmPZrMyv2iyFt7kFEVhZ8wJhQFbQj8JY/Krx9740x1tn912IUNxadAjPxkEMlzcLYeJuXm0t+uoNU/j40gWWyi/Ep0C6B7fg3biKsDh8U1XaLOQXTgNX58fP9gk3PNLvx0AXx4+1poTutSLsN7/RgACXgY2PrGqxoKLaYBvBlMA7fM+sPQhX1mN5bXLRy2HDlJ5lfxNu4gWngBn4A93CDBjc9fyNeJGCvsuGrmnJXaaDjr8ApwI0lQ==";
private static final String data = "eJy1V41u2zYQfoM9AydgANV4apIO61Y1HfLXzUCbdnHaYKiDgqJom4lECiRlxzX80HuD3ZFSLKfO4g2bEUTi3fF+vztS3/xZMX7DxoKUUuW1dWae5CKrx6ksK20cYYYnT7qLkSyEvUeq1T2hkrnJOqV2sthAscJIVsgvzEmtVvyVM1wbsYku9SaqEi45NPxMuPdGT2UuzENS7yFs4TqBXLMpW9PqCQVT48SIUSG4u8dSXwn7iL7ICsi8YNaSvrqGfdosqjorJCfWQZycTLXMiZQ0Xpw3mq1wNHg0aBICnnsdPRLNjHTCRD1Cj7Wy+y83BdIjR3MnjurRSJhXMa16JIvJ96/IQo5oRaQCy4oLPSKgQoHFsCterC0JJwfeSEeiSjNQ/OmKGGHrwvVzEFFiRjx19yoFN9DGu0Ei7aHKDYQGWn30fA9k/Wsy0uaMlYJGLIgk2iZHtSzyKE4Hzkg19ithSNY8g5U1Ho3T11IUOTgzwqcFIb6XjIXzZAt8sEP9IkiQF41kjD76VxS/mFeCxuTgoNEfMh0vMJbGfsKqSqh8tYequijiOF1y5viEXkyMnrGsEASSuFwumyThw3Yz9NNViu/nEDdtVTsdzNI4mTA7OdY5eBNDMW8dFtFSryVOOxn3lHQpCitIm+1LgIGegdu4qQLjAAnmxFh6DxY01D+YIoVUAqiwUdwKTqNZCTjktjI6r7kjECD58KF/EiW2KqSjEYkg1m2CQsUJ2Cgfj8bVRrWR9Br3XsM0IThSQD++J9wICOJClBUuaQSdMb4B7EfJNLMRIqAQl74hyGjWOLWiUVTVQorADnIQDSA2nV1fvu1Db00lR1O/Cvcuw96kw2gmVTkunX0xhF8yHBqt3XDIZTndH0bxUEU7xOvguug7UWIm1tQlp5DR32th5uQzCeKEEFA8ENjb5AkZGV0SKNez/c9HzIojzUwOqhvh19qQU8YnqBUNQLeubAWRS8uNrFxyyie6FUvCpDirywxyEeTErXQEeqBZnkEN8DUdzRI/RChkJMYVL7SFMqWb0UEjHgySp0/P9Bs91hDSji8TtsIxU1pJzor3MOWx1h3MNFD4b6HjDeeQTYc+rwNp2cagYL6ApcHcYnLG/gSohHFzGtVwyiTIB/xkWheCKcLUHKRHDDrKTw2pHJFA2U3h8bLTS0kh1NhNgLyzE0ZEpy9XYp+ohBShkW4s5LuvNV35cRKnwQNnapFmAPqbB0YLtPu3IBpDq5Bc4mA8xiMxHMMss7qoIS3RMcAXIh4bVp4wx4ZDrFhfgWU/cX4Tt83QeQtFGyUGCqDLgRA5fSRjnXB6ZLdHfm5+MQwI9A18AtRI62D+xgtclTfwv53G9/K6t9skEgX5BAYijS4Hfwy28ZY2dkE0Sk4OL8A3j+qAlTuI3dsSX8HQXkLy3NiBH1vaff78OXC2T02TDLDRScY2TbAB7qikE1hDXXZghxIAmTwIYHx4MiwcIsebOa+Vk6U4veWiwpsVjRD7y00IQ0QHaPmryjzMAQj5sKoQSSctg/7faLpzYYUgcKw5HFbMUL1NzvzjcvnBsqrXI3h91P4msG6P0X+JFh/D38PFi6zh5Ssc7MftTaGuZd4OGTh8HdAsprSJMUI+nseRTyGu4C5yWlaQ7BXkg/FtogiScdqYXV36KB6VP/6A9YIBozjWrRGO03Xvqtrd+YWP+3zLpuHguMtIeA0Xqu4879rMhbe5RSKws5YZugGooB+Fsfgx4697cYqXzf67UKFma9YjPJkGMWQ/LITAfZhbW4zVG6bwzaUzbJVfiIdAvAeX392Gi25x+JQqtGnl26AhV+fHz/YJN7xJv19Dujh+o1U5HF4dYb/5jQYPkA3Z+MiKGhuqURtsozM55B0+YzaeAh1+014Phejl8LyUcTvmSNVcZjKgwB/oFmbE4F7nL8ItBP0hS/xItOQO6aDjL203L98=";
@Override
public void process(RoundEnvironment env) throws Exception{

View File

@ -112,6 +112,7 @@ public class NetServer implements ApplicationListener{
}
PlayerInfo info = admins.getInfo(uuid);
info.adminUsid = packet.usid;
con.hasBegunConnecting = true;
con.mobile = packet.mobile;

View File

@ -660,37 +660,38 @@ public class ServerControl implements ApplicationListener{
}
});
handler.register("admin", "<username...>", "Make an online user admin", arg -> {
handler.register("admin", "<add/remove> <username/ID...>", "Make an online user admin", arg -> {
if(!state.is(State.playing)){
err("Open the server first.");
return;
}
Player target = playerGroup.find(p -> p.name.equals(arg[0]));
if(target != null){
netServer.admins.adminPlayer(target.uuid, target.usid);
target.isAdmin = true;
info("Admin-ed player: {0}", arg[0]);
}else{
info("Nobody with that name could be found.");
}
});
handler.register("unadmin", "<username...>", "Removes admin status from an online player", arg -> {
if(!state.is(State.playing)){
err("Open the server first.");
if(!(arg[0].equals("add") || arg[0].equals("remove"))){
err("Second parameter must be either 'add' or 'remove'.");
return;
}
Player target = playerGroup.find(p -> p.name.equals(arg[0]));
boolean add = arg[0].equals("add");
PlayerInfo target;
Player playert = playerGroup.find(p -> p.name.equals(arg[1]));
if(playert != null){
target = playert.getInfo();
}else{
target = netServer.admins.getInfoOptional(arg[1]);
playert = playerGroup.find(p -> p.getInfo() == target);
}
if(target != null){
netServer.admins.unAdminPlayer(target.uuid);
target.isAdmin = false;
info("Un-admin-ed player: {0}", arg[0]);
if(add){
netServer.admins.adminPlayer(target.id, target.adminUsid);
}else{
info("Nobody with that name could be found.");
netServer.admins.unAdminPlayer(target.id);
}
if(playert != null) playert.isAdmin = add;
info("Changed admin status of player: &ly{0}", target.lastName);
}else{
err("Nobody with that name or ID could be found. If adding an admin by name, make sure they're online; otherwise, use their UUID.");
}
});