Mod Examples: Difference between revisions
Appearance
Created page with "This page demonstrates how to use fCraft's event system to add functionality." |
No edit summary |
||
| Line 1: | Line 1: | ||
This page demonstrates how to use fCraft's event system to add functionality. | This page demonstrates how to use fCraft's event system to add functionality. | ||
==Adding a new command== | |||
<syntaxhighlight lang="csharp"> | |||
// Command descriptor | |||
CommandDescriptor CdBleep = new CommandDescriptor { | |||
Name = "bleep", | |||
Aliases = new[] { "bloop" }, | |||
Category = CommandCategory.Chat, | |||
Permissions = new[] { Permission.Chat }, | |||
Help = "Prints a number of bleeps in chat.", | |||
Usage = "/bleep [Times]", | |||
Handler = Bleep | |||
}; | |||
// Command handler - must implement CommandHandler delegate | |||
void Bleep( Player player, Command cmd ){ | |||
int numberOfBleeps; | |||
// try to parse next argument as a number | |||
if( !cmd.NextInt( out numberOfBleeps ) ){ | |||
// fall back to 10 if no number was given | |||
numberOfBleeps = 10; | |||
} | |||
// check the range | |||
if( numberOfBleeps < 1 || numberOfBleeps > 32 ){ | |||
player.Message( "Specify between 1 and 32 bleeps." ); | |||
return; | |||
} | |||
for( int i=0; i<numberOfBleeps; i++ ){ | |||
Chat.SendGlobal( player, "bleep" ); | |||
} | |||
} | |||
// Registering your command with the server | |||
CommandManager.RegisterCustomCommand( CdBleep ); | |||
</syntaxhighlight> | |||
Revision as of 02:45, 23 June 2011
This page demonstrates how to use fCraft's event system to add functionality.
Adding a new command
// Command descriptor
CommandDescriptor CdBleep = new CommandDescriptor {
Name = "bleep",
Aliases = new[] { "bloop" },
Category = CommandCategory.Chat,
Permissions = new[] { Permission.Chat },
Help = "Prints a number of bleeps in chat.",
Usage = "/bleep [Times]",
Handler = Bleep
};
// Command handler - must implement CommandHandler delegate
void Bleep( Player player, Command cmd ){
int numberOfBleeps;
// try to parse next argument as a number
if( !cmd.NextInt( out numberOfBleeps ) ){
// fall back to 10 if no number was given
numberOfBleeps = 10;
}
// check the range
if( numberOfBleeps < 1 || numberOfBleeps > 32 ){
player.Message( "Specify between 1 and 32 bleeps." );
return;
}
for( int i=0; i<numberOfBleeps; i++ ){
Chat.SendGlobal( player, "bleep" );
}
}
// Registering your command with the server
CommandManager.RegisterCustomCommand( CdBleep );