процедура sub sendMessage
заменяем её на это, и теперь когда говрим отсылаем _ получаем пробел. знак "_" мона заменить на что вам угодно на любой символ или слово.
Код: Выделить всё
sub sendMessage {
my ($sender, $type, $msg, $user) = @_;
my ($j, @msgs, $oldmsg, $amount, $space);
@msgs = split /\\n/, $msg;
for ($j = 0; $j < @msgs; $j++) {
my (@msg, $i);
@msg = split / /, $msgs[$j];
undef $msg;
for ($i = 0; $i < @msg; $i++) {
if (!length($msg[$i])) {
$msg[$i] = " ";
$space = 1;
}
if (length($msg[$i]) > $config{'message_length_max'}) {
while (length($msg[$i]) >= $config{'message_length_max'}) {
$oldmsg = $msg;
if (length($msg)) {
$amount = $config{'message_length_max'};
if ($amount - length($msg) > 0) {
$amount = $config{'message_length_max'} - 1;
$msg .= " " . substr($msg[$i], 0, $amount - length($msg));
}
} else {
$amount = $config{'message_length_max'};
$msg .= substr($msg[$i], 0, $amount);
}
if ($type eq "c" && $msg eq "_") {
$sender->sendChat(" ");
} elsif ($type eq "c") {
$sender->sendChat($msg);
} elsif ($type eq "g" && $msg eq "_") {
$sender->sendGuildChat(" ");
} elsif ($type eq "g") {
$sender->sendGuildChat($msg);
} elsif ($type eq "p" && $msg eq "_") {
$sender->sendPartyChat(" ");
} elsif ($type eq "p") {
$sender->sendPartyChat($msg);
} elsif ($type eq "pm" && $msg eq "_") {
$sender->sendPrivateMsg($user, " ");
} elsif ($type eq "pm") {
$sender->sendPrivateMsg($user, $msg);
%lastpm = (
msg => $msg,
user => $user
);
push @lastpm, {%lastpm};
} elsif ($type eq "k") {
$sender->injectMessage($msg);
}
$msg[$i] = substr($msg[$i], $amount - length($oldmsg), length($msg[$i]) - $amount - length($oldmsg));
undef $msg;
}
}
if (length($msg[$i]) && length($msg) + length($msg[$i]) <= $config{'message_length_max'}) {
if (length($msg)) {
if (!$space) {
$msg .= " " . $msg[$i];
} else {
$space = 0;
$msg .= $msg[$i];
}
} else {
$msg .= $msg[$i];
}
} else {
if ($type eq "c" && $msg eq "_") {
$sender->sendChat(" ");
} elsif ($type eq "c") {
$sender->sendChat($msg);
} elsif ($type eq "g" && $msg eq "_") {
$sender->sendGuildChat(" ");
} elsif ($type eq "g") {
$sender->sendGuildChat($msg);
} elsif ($type eq "p" && $msg eq "_") {
$sender->sendPartyChat(" ");
} elsif ($type eq "p") {
$sender->sendPartyChat($msg);
} elsif ($type eq "pm" && $msg eq "_") {
$sender->sendPrivateMsg($user, " ");
} elsif ($type eq "pm") {
$sender->sendPrivateMsg($user, $msg);
%lastpm = (
msg => $msg,
user => $user
);
push @lastpm, {%lastpm};
} elsif ($type eq "k") {
$sender->injectMessage($msg);
}
$msg = $msg[$i];
}
if (length($msg) && $i == @msg - 1) {
if ($type eq "c" && $msg eq "_") {
$sender->sendChat(" ");
} elsif ($type eq "c") {
$sender->sendChat($msg);
} elsif ($type eq "g" && $msg eq "_") {
$sender->sendGuildChat(" ");
} elsif ($type eq "g") {
$sender->sendGuildChat($msg);
} elsif ($type eq "p" && $msg eq "_") {
$sender->sendPartyChat(" ");
} elsif ($type eq "p") {
$sender->sendPartyChat($msg);
} elsif ($type eq "pm" && $msg eq "_") {
$sender->sendPrivateMsg($user, " ");
} elsif ($type eq "pm") {
$sender->sendPrivateMsg($user, $msg);
%lastpm = (
msg => $msg,
user => $user
);
push @lastpm, {%lastpm};
} elsif ($type eq "k") {
$sender->injectMessage($msg);
}
}
}
}
}