FlyCameraModule class
Пакет: com.hypixel.hytale.server.core.modules.camera
Файл: com/hypixel/hytale/server/core/modules/camera/FlyCameraModule.java
extends: JavaPlugin
Поля (7)
| Модификаторы | Тип | Имя |
|---|---|---|
|
EventBus |
var1 |
|
String |
var2 |
|
PlayerRef |
var2 |
|
PermissionsModule |
var3 |
|
boolean |
var3 |
|
UUID |
var6 |
|
Set |
var7 |
Методы (7)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
private |
void |
checkAndEnforceFlyCameraPermissionvoid checkAndEnforceFlyCameraPermission(@Nonnull UUID var1) |
private |
void |
handleGroupPermissionsRemovedvoid handleGroupPermissionsRemoved(@Nonnull GroupPermissionChangeEvent.Removed var1) |
private |
void |
handlePlayerGroupRemovedvoid handlePlayerGroupRemoved(@Nonnull PlayerGroupEvent.Removed var1) |
private |
void |
handlePlayerPermissionsRemovedvoid handlePlayerPermissionsRemoved(@Nonnull PlayerPermissionChangeEvent.PermissionsRemoved var1) |
|
|
if if(var2 != null) |
|
|
if if(!var3) |
abstract |
|
super super(var1) |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.server.core.modules.camera;
class="kw">import com.hypixel.hytale.common.plugin.PluginManifest;
class="kw">import com.hypixel.hytale.event.EventBus;
class="kw">import com.hypixel.hytale.protocol.packets.camera.SetFlyCameraMode;
class="kw">import com.hypixel.hytale.server.core.HytaleServer;
class="kw">import com.hypixel.hytale.server.core.event.events.permissions.GroupPermissionChangeEvent;
class="kw">import com.hypixel.hytale.server.core.event.events.permissions.PlayerGroupEvent;
class="kw">import com.hypixel.hytale.server.core.event.events.permissions.PlayerPermissionChangeEvent;
class="kw">import com.hypixel.hytale.server.core.permissions.HytalePermissions;
class="kw">import com.hypixel.hytale.server.core.permissions.PermissionsModule;
class="kw">import com.hypixel.hytale.server.core.plugin.JavaPlugin;
class="kw">import com.hypixel.hytale.server.core.plugin.JavaPluginInit;
class="kw">import com.hypixel.hytale.server.core.universe.PlayerRef;
class="kw">import com.hypixel.hytale.server.core.universe.Universe;
class="kw">import java.util.Set;
class="kw">import java.util.UUID;
class="kw">import javax.annotation.Nonnull;
class="kw">public class FlyCameraModule class="kw">extends JavaPlugin {
@Nonnull
class="kw">public class="kw">static class="kw">final PluginManifest MANIFEST = PluginManifest.corePlugin(FlyCameraModule.class).depends(PermissionsModule.class).build();
class="kw">public FlyCameraModule(@Nonnull JavaPluginInit var1) {
super(var1);
}
@Override
class="kw">protected void setup() {
EventBus var1 = HytaleServer.get().getEventBus();
var1.register(PlayerPermissionChangeEvent.PermissionsRemoved.class, this::handlePlayerPermissionsRemoved);
var1.register(PlayerGroupEvent.Removed.class, this::handlePlayerGroupRemoved);
var1.register(GroupPermissionChangeEvent.Removed.class, this::handleGroupPermissionsRemoved);
}
class="kw">private void handlePlayerPermissionsRemoved(@Nonnull PlayerPermissionChangeEvent.PermissionsRemoved var1) {
if (Boolean.TRUE.equals(PermissionsModule.hasPermission(var1.getRemovedPermissions(), HytalePermissions.FLY_CAM))) {
this.checkAndEnforceFlyCameraPermission(var1.getPlayerUuid());
}
}
class="kw">private void handlePlayerGroupRemoved(@Nonnull PlayerGroupEvent.Removed var1) {
this.checkAndEnforceFlyCameraPermission(var1.getPlayerUuid());
}
class="kw">private void handleGroupPermissionsRemoved(@Nonnull GroupPermissionChangeEvent.Removed var1) {
if (Boolean.TRUE.equals(PermissionsModule.hasPermission(var1.getRemovedPermissions(), HytalePermissions.FLY_CAM))) {
String var2 = var1.getGroupName();
PermissionsModule var3 = PermissionsModule.get();
for (PlayerRef var5 : Universe.get().getPlayers()) {
UUID var6 = var5.getUuid();
Set var7 = var3.getGroupsForUser(var6);
if (var7.contains(var2)) {
this.checkAndEnforceFlyCameraPermission(var6);
}
}
}
}
class="kw">private void checkAndEnforceFlyCameraPermission(@Nonnull UUID var1) {
PlayerRef var2 = Universe.get().getPlayer(var1);
if (var2 != null) {
boolean var3 = PermissionsModule.get().hasPermission(var1, HytalePermissions.FLY_CAM);
if (!var3) {
var2.getPacketHandler().writeNoCache(new SetFlyCameraMode(false));
}
}
}
}