use veloren_plugin_rt::{ api::{event::*, Action, GameMode}, *, }; #[veloren_plugin_rt::event_handler] pub fn on_load(load: PluginLoadEvent) { match load.game_mode { GameMode::Server => emit_action(Action::Print("Hello, server!".to_owned())), GameMode::Client => emit_action(Action::Print("Hello, client!".to_owned())), GameMode::Singleplayer => emit_action(Action::Print("Hello, singleplayer!".to_owned())), } } #[event_handler] pub fn on_command_testplugin(command: ChatCommandEvent) -> Result, String> { Ok(vec![format!( "Player of id {:?} sended command with args {:?}", command.player, command.command_args )]) } #[event_handler] pub fn on_player_join(input: PlayerJoinEvent) -> PlayerJoinResult { emit_action(Action::PlayerSendMessage( input.player_id, format!("Welcome {} on our server", input.player_name), )); if input.player_name == "Cheater123" { PlayerJoinResult::CloseConnection } else { PlayerJoinResult::None } }