mirror of
https://github.com/pragma-/pbot.git
synced 2024-11-25 21:39:27 +01:00
Plugin/WordMorph: improve hints with ? in place of next letter change
This commit is contained in:
parent
d5c336c058
commit
b9dc225763
@ -19,7 +19,7 @@ sub initialize {
|
|||||||
|
|
||||||
$self->{pbot}->{commands}->add(
|
$self->{pbot}->{commands}->add(
|
||||||
name => 'wordmorph',
|
name => 'wordmorph',
|
||||||
help => 'Word Morph game',
|
help => 'Word Morph game! Solve a path between two words by changing one letter at a time: love > shot = love > lose > lost > loot > soot > shot.',
|
||||||
subref => sub { $self->wordmorph(@_) },
|
subref => sub { $self->wordmorph(@_) },
|
||||||
);
|
);
|
||||||
|
|
||||||
@ -68,7 +68,24 @@ sub wordmorph {
|
|||||||
my @hints;
|
my @hints;
|
||||||
|
|
||||||
for (my $i = 0; $i < $self->{$channel}->{hint}; $i++) {
|
for (my $i = 0; $i < $self->{$channel}->{hint}; $i++) {
|
||||||
push @hints, $self->{$channel}->{morph}->[$i];
|
my $hint = '';
|
||||||
|
|
||||||
|
if ($i > 0) {
|
||||||
|
my $word1 = $self->{$channel}->{morph}->[$i - 1];
|
||||||
|
my $word2 = $self->{$channel}->{morph}->[$i];
|
||||||
|
|
||||||
|
for (0 .. length $word1) {
|
||||||
|
if (substr($word1, $_, 1) eq substr($word2, $_, 1)) {
|
||||||
|
$hint .= substr($word1, $_, 1);
|
||||||
|
} else {
|
||||||
|
$hint .= "?";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
$hint = $self->{$channel}->{morph}->[$i];
|
||||||
|
}
|
||||||
|
|
||||||
|
push @hints, $hint;
|
||||||
}
|
}
|
||||||
|
|
||||||
my $hint = '_' x length $self->{$channel}->{morph}->[0];
|
my $hint = '_' x length $self->{$channel}->{morph}->[0];
|
||||||
|
@ -25,7 +25,7 @@ use PBot::Imports;
|
|||||||
# These are set by the /misc/update_version script
|
# These are set by the /misc/update_version script
|
||||||
use constant {
|
use constant {
|
||||||
BUILD_NAME => "PBot",
|
BUILD_NAME => "PBot",
|
||||||
BUILD_REVISION => 4573,
|
BUILD_REVISION => 4574,
|
||||||
BUILD_DATE => "2022-08-24",
|
BUILD_DATE => "2022-08-24",
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user