Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
ziqian zhang
Grasscutter
Commits
e8a30599
Commit
e8a30599
authored
Apr 20, 2022
by
Jaida Wu
Browse files
Add weather command
Signed-off-by:
Jaida Wu
<
mlgmxyysd@meowcat.org
>
parent
c42fa4ee
Changes
1
Hide whitespace changes
Inline
Side-by-side
src/main/java/emu/grasscutter/command/commands/Weather.java
0 → 100644
View file @
e8a30599
package
emu.grasscutter.command.commands
;
import
emu.grasscutter.command.Command
;
import
emu.grasscutter.command.CommandHandler
;
import
emu.grasscutter.game.GenshinPlayer
;
import
emu.grasscutter.game.props.ClimateType
;
import
emu.grasscutter.server.packet.send.PacketSceneAreaWeatherNotify
;
import
java.util.List
;
@Command
(
label
=
"weather"
,
usage
=
"weather <weatherId>"
,
description
=
"Changes the weather."
,
aliases
=
{
"w"
},
permission
=
"player.weather"
)
public
class
Weather
implements
CommandHandler
{
@Override
public
void
onCommand
(
GenshinPlayer
sender
,
List
<
String
>
args
)
{
if
(
sender
==
null
)
{
CommandHandler
.
sendMessage
(
null
,
"Run this command in-game."
);
return
;
}
if
(
args
.
size
()
<
1
)
{
CommandHandler
.
sendMessage
(
sender
,
"Usage: weather <weatherId>"
);
return
;
}
try
{
int
weatherId
=
Integer
.
parseInt
(
args
.
get
(
0
));
ClimateType
climate
=
ClimateType
.
getTypeByValue
(
weatherId
);
sender
.
getScene
().
setClimate
(
climate
);
sender
.
getScene
().
broadcastPacket
(
new
PacketSceneAreaWeatherNotify
(
sender
));
CommandHandler
.
sendMessage
(
sender
,
"Changed weather to "
+
weatherId
);
}
catch
(
NumberFormatException
ignored
)
{
CommandHandler
.
sendMessage
(
sender
,
"Invalid weather ID."
);
}
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment