mirror of
https://github.com/Melledy/Grasscutter.git
synced 2024-11-25 23:07:50 +00:00
commit
105efe1d81
@ -16,10 +16,12 @@ import emu.grasscutter.game.entity.EntityMonster;
|
||||
import emu.grasscutter.game.inventory.GenshinItem;
|
||||
import emu.grasscutter.game.inventory.Inventory;
|
||||
import emu.grasscutter.game.inventory.ItemType;
|
||||
import emu.grasscutter.game.props.ClimateType;
|
||||
import emu.grasscutter.game.props.ActionReason;
|
||||
import emu.grasscutter.game.props.FightProperty;
|
||||
import emu.grasscutter.game.props.PlayerProperty;
|
||||
import emu.grasscutter.server.packet.send.PacketEntityFightPropUpdateNotify;
|
||||
import emu.grasscutter.server.packet.send.PacketSceneAreaWeatherNotify;
|
||||
import emu.grasscutter.server.packet.send.PacketGetPlayerTokenRsp;
|
||||
import emu.grasscutter.server.packet.send.PacketItemAddHintNotify;
|
||||
import emu.grasscutter.server.packet.send.PacketPlayerLoginRsp;
|
||||
@ -663,6 +665,31 @@ public final class PlayerCommands {
|
||||
player.dropMessage(String.format("Coord: %.3f, %.3f, %.3f", player.getPos().getX(), player.getPos().getY(), player.getPos().getZ()));
|
||||
}
|
||||
}
|
||||
|
||||
@Command(label = "weather", aliases = {"weather", "w"},
|
||||
usage = "weather <weather id>", description = "Changes the weather.",
|
||||
execution = Command.Execution.PLAYER, permission = "player.weather"
|
||||
)
|
||||
public static class ChangeWeatherCommand implements CommandHandler {
|
||||
@Override
|
||||
public void execute(GenshinPlayer player, List<String> args) {
|
||||
if (args.size() < 1) {
|
||||
CommandHandler.sendMessage(player, "Usage: weather <weather id>");
|
||||
return;
|
||||
}
|
||||
|
||||
try {
|
||||
int weatherId = Integer.parseInt(args.get(0));
|
||||
|
||||
ClimateType climate = ClimateType.getTypeByValue(weatherId);
|
||||
|
||||
player.getScene().setClimate(climate);
|
||||
player.getScene().broadcastPacket(new PacketSceneAreaWeatherNotify(player));
|
||||
} catch (NumberFormatException ignored) {
|
||||
CommandHandler.sendMessage(player, "Invalid weather ID.");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Command(label = "restart", usage = "Usage: restart", description = "Restarts the current session", execution = Command.Execution.PLAYER, permission = "player.restart")
|
||||
public static class RestartCommand implements CommandHandler {
|
||||
|
Loading…
Reference in New Issue
Block a user