View Single Post
  #1  
Old 09-13-2013, 07:12 AM
HnathBST
Sarnak
 
Join Date: Feb 2007
Location: Sunset Home
Posts: 71
Default Advanced announcement script

This is a modified version to kingly_krab's announcement script. I like options, sometimes I want red, sometimes green, etc.

This also shows a more advanced example of perls regular expression matching.

Code:
sub EVENT_SAY
{
 if($text =~ /announce (.{1,9}) ([01]) ([0-9]{1,3}) (.+)/i){
 my %colors =(
 "white"=>0,
 "gray"=>1,
 "blue"=>4,
 "green"=>2,
 "red"=>13,
 "cyan"=>18,
 "oocgr"=>260
 );

 my $color = $colors{$1};
 my $char = $client->GetCleanName();
 my $allZones = $2;
 my $minStatus = $3;
 my $message = $4;
 if($client)
 {
 quest::gmsay("$char Announces: $message", $color, $allZones, 0, $minStatus);
 }
 }
 }
}
I have mine assigned to a NPC who checks GM status before checking text.

To use, simply target and type:
announce <color> <send to world 1|0> <min status> message

Example:
announce red 1 0 The server is going down for reboot now!
Reply With Quote