2021-10-04 11:27:58 +02:00
|
|
|
/*
|
|
|
|
* This file is a part of the SteamWar software.
|
|
|
|
*
|
|
|
|
* Copyright (C) 2021 SteamWar.de-Serverteam
|
|
|
|
*
|
|
|
|
* This program is free software: you can redistribute it and/or modify
|
|
|
|
* it under the terms of the GNU Affero General Public License as published by
|
|
|
|
* the Free Software Foundation, either version 3 of the License, or
|
|
|
|
* (at your option) any later version.
|
|
|
|
*
|
|
|
|
* This program is distributed in the hope that it will be useful,
|
|
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
* GNU Affero General Public License for more details.
|
|
|
|
*
|
|
|
|
* You should have received a copy of the GNU Affero General Public License
|
|
|
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
|
|
*/
|
|
|
|
|
|
|
|
package de.steamwar.lobby;
|
|
|
|
|
2023-01-16 20:56:53 +01:00
|
|
|
import de.steamwar.entity.REntityServer;
|
2022-02-12 11:11:16 +01:00
|
|
|
import de.steamwar.lobby.command.FlyCommand;
|
2021-10-04 16:53:08 +02:00
|
|
|
import de.steamwar.lobby.command.HologramCommand;
|
2022-03-26 20:45:34 +01:00
|
|
|
import de.steamwar.lobby.command.ModifyCommand;
|
2021-10-04 12:20:51 +02:00
|
|
|
import de.steamwar.lobby.command.PortalCommand;
|
2022-11-13 15:01:52 +01:00
|
|
|
import de.steamwar.lobby.jumpandrun.JumpAndRun;
|
2022-03-10 14:21:53 +01:00
|
|
|
import de.steamwar.lobby.listener.*;
|
2022-03-26 22:31:40 +01:00
|
|
|
import de.steamwar.lobby.map.CustomMapCommand;
|
2023-03-26 13:06:49 +02:00
|
|
|
import de.steamwar.lobby.particle.ParticleListener;
|
|
|
|
import de.steamwar.lobby.special.easter.EggHunt;
|
2022-03-25 22:18:04 +01:00
|
|
|
import de.steamwar.lobby.team.TeamPlayer;
|
2021-10-04 11:46:15 +02:00
|
|
|
import de.steamwar.message.Message;
|
2021-10-04 11:27:58 +02:00
|
|
|
import org.bukkit.plugin.java.JavaPlugin;
|
|
|
|
|
|
|
|
public class LobbySystem extends JavaPlugin {
|
|
|
|
|
2021-10-04 16:53:08 +02:00
|
|
|
private static Message message;
|
2021-10-04 11:27:58 +02:00
|
|
|
private static LobbySystem plugin;
|
|
|
|
private static Config config;
|
2023-01-16 20:56:53 +01:00
|
|
|
private static REntityServer entityServer;
|
|
|
|
private static REntityServer debugEntityServer;
|
2021-10-04 11:27:58 +02:00
|
|
|
|
|
|
|
@Override
|
|
|
|
public void onLoad() {
|
|
|
|
plugin = this;
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public void onEnable() {
|
2021-10-04 16:53:08 +02:00
|
|
|
message = new Message("de.steamwar.lobby.LobbySystem", getClassLoader());
|
2023-01-16 20:56:53 +01:00
|
|
|
entityServer = new REntityServer();
|
|
|
|
debugEntityServer = new REntityServer();
|
2021-10-04 11:46:15 +02:00
|
|
|
|
2022-03-11 23:31:26 +01:00
|
|
|
Fightserver.init();
|
2021-10-04 11:27:58 +02:00
|
|
|
new Portals();
|
2021-10-04 12:20:51 +02:00
|
|
|
new PortalCommand();
|
2021-10-04 16:53:08 +02:00
|
|
|
new HologramCommand();
|
2022-02-12 11:11:16 +01:00
|
|
|
new FlyCommand();
|
2022-03-11 15:41:39 +01:00
|
|
|
new ModifyCommand();
|
2022-03-26 22:31:40 +01:00
|
|
|
new CustomMapCommand();
|
2021-10-04 16:53:08 +02:00
|
|
|
|
2022-11-13 15:01:52 +01:00
|
|
|
new JumpAndRun();
|
|
|
|
|
2021-10-04 16:53:08 +02:00
|
|
|
config = new Config(getConfig());
|
2022-03-10 14:21:53 +01:00
|
|
|
new PlayerSpawn();
|
2022-02-13 12:03:06 +01:00
|
|
|
new DoubleJumpListener();
|
|
|
|
new ParticleListener();
|
2022-03-10 14:56:20 +01:00
|
|
|
new InventoryInteraction();
|
|
|
|
new WorldInteraction();
|
2022-03-24 14:13:14 +01:00
|
|
|
new PlayerSeatListener();
|
2022-03-26 11:55:22 +01:00
|
|
|
new MapsRotateListener();
|
2022-03-26 14:08:49 +01:00
|
|
|
new TeleporterListener();
|
2022-03-25 22:18:04 +01:00
|
|
|
new TeamPlayer();
|
2022-03-19 16:56:02 +01:00
|
|
|
|
2023-03-26 13:06:49 +02:00
|
|
|
EggHunt.init();
|
|
|
|
|
2022-03-19 16:56:02 +01:00
|
|
|
new AlphaWall(l -> l.getX() > 1199, AlphaWall.REFLECT_X);
|
|
|
|
new AlphaWall(l -> l.getX() < 2977, AlphaWall.REFLECT_X);
|
|
|
|
new AlphaWall(l -> l.getZ() > 892, AlphaWall.REFLECT_Z);
|
|
|
|
new AlphaWall(l -> l.getZ() < 1794, AlphaWall.REFLECT_Z);
|
2022-06-19 16:32:05 +02:00
|
|
|
new LobbyPacketHandler().register();
|
2021-10-04 11:27:58 +02:00
|
|
|
}
|
|
|
|
|
2022-03-25 22:18:04 +01:00
|
|
|
@Override
|
|
|
|
public void onDisable() {
|
|
|
|
TeamPlayer.cleanup();
|
|
|
|
}
|
2022-03-10 13:10:56 +01:00
|
|
|
|
2021-10-04 11:27:58 +02:00
|
|
|
public static LobbySystem getPlugin() {
|
|
|
|
return plugin;
|
|
|
|
}
|
|
|
|
|
|
|
|
public static Config config() {
|
|
|
|
return config;
|
|
|
|
}
|
2021-10-04 16:53:08 +02:00
|
|
|
|
|
|
|
public static Message getMessage() {
|
|
|
|
return message;
|
|
|
|
}
|
2023-01-16 20:56:53 +01:00
|
|
|
|
|
|
|
public static REntityServer getEntityServer(boolean debug) {
|
|
|
|
return debug ? debugEntityServer : entityServer;
|
|
|
|
}
|
2021-10-04 11:27:58 +02:00
|
|
|
}
|