Makes temporary permissions work

Saves and loads temporary permissions to/from disk as necessary
Gives players their temporary permissions when joining
Adds an un-used config file
Changes an english string in strings.yml
This commit is contained in:
2022-01-14 20:33:08 +01:00
parent 339aedf2e9
commit 112fd0d53d
7 changed files with 127 additions and 18 deletions

View File

@ -5,6 +5,7 @@ import net.knarcraft.permissionsigns.command.PermissionSignsTabCompleter;
import net.knarcraft.permissionsigns.container.PermissionSign;
import net.knarcraft.permissionsigns.container.SignCreationRequest;
import net.knarcraft.permissionsigns.formatting.Translator;
import net.knarcraft.permissionsigns.listener.PlayerListener;
import net.knarcraft.permissionsigns.listener.SignListener;
import net.knarcraft.permissionsigns.manager.EconomyManager;
import net.knarcraft.permissionsigns.manager.PermissionManager;
@ -149,6 +150,10 @@ public final class PermissionSigns extends JavaPlugin {
//TODO: Check for existence of old permission signs when clicked and register them as new permission signs. If
// it has the permissionSigns header and a name matching contents in signs.yml, add it.
//TODO: Implement config file
//TODO: Account for per-world permissions if enabled (perhaps allow world specification as world:permission?)
//TODO: Allow for custom language files. Perhaps just look for strings.yml in the folder
//Check if vault is loaded
ServicesManager servicesManager = this.getServer().getServicesManager();
RegisteredServiceProvider<Permission> permissionProvider = servicesManager.getRegistration(Permission.class);
@ -160,6 +165,7 @@ public final class PermissionSigns extends JavaPlugin {
throw new IllegalStateException("[PermissionSigns] Error: Vault could not be loaded");
}
getServer().getPluginManager().registerEvents(new SignListener(), this);
getServer().getPluginManager().registerEvents(new PlayerListener(), this);
Translator.loadLanguages("en");
registerCommands();
@ -167,6 +173,7 @@ public final class PermissionSigns extends JavaPlugin {
scheduler.runTaskTimer(this, new SignCreationRequestTimeoutThread(signCreationRequests), 0L, 100L);
scheduler.runTaskTimer(this, new PermissionTimeoutThread(), 0L, 25L);
SignManager.loadSigns();
PermissionManager.loadTemporaryPermissions();
}
/**