134 lines
3.6 KiB
Perl
134 lines
3.6 KiB
Perl
package LasTres::TalkingNPC::VeteranoCalizor;
|
|
|
|
use v5.36.0;
|
|
use strict;
|
|
use warnings;
|
|
use utf8;
|
|
|
|
use feature 'signatures';
|
|
|
|
use Moo;
|
|
|
|
use LasTres::Flags;
|
|
use LasTres::Word::Devota;
|
|
use LasTres::Word::Ayazel;
|
|
|
|
use parent 'LasTres::TalkingNPC';
|
|
|
|
sub talk ( $self, $pj, $word = undef ) {
|
|
$self->SUPER::talk( $pj, $word );
|
|
if ( !defined $word ) {
|
|
$self->wordlessly_talk($pj);
|
|
return;
|
|
}
|
|
$self->word_talk($pj, $word);
|
|
}
|
|
|
|
sub word_talk($self, $pj, $word) {
|
|
require LasTres::Word::Devota;
|
|
if ($word->identifier eq LasTres::Word::Devota->instance->identifier) {
|
|
$self->word_devota($pj);
|
|
return;
|
|
}
|
|
if ($word->identifier eq LasTres::Word::Ayazel->instance->identifier) {
|
|
$self->word_ayazel($pj);
|
|
return;
|
|
}
|
|
$self->word_unknown($pj);
|
|
|
|
}
|
|
|
|
sub word_devota($self, $pj) {
|
|
$self->send_response_dialog(
|
|
$pj,
|
|
[
|
|
{
|
|
text => '¿Buscas a mi esposa? Seguramente este rezando o junto a ese'
|
|
. ' chamán de pacotilla, suele rezar en ese pequeño santuario a'
|
|
. ' Ayazel, visitalo ahora que todavía sigue en pie...'
|
|
. ' Maldito sea el día que le enseñé a la gente a edificar'
|
|
. ' en piedra.'
|
|
}
|
|
]
|
|
);
|
|
$pj->teach_word( LasTres::Word::Ayazel->instance );
|
|
}
|
|
|
|
sub word_ayazel($self, $pj) {
|
|
$self->send_response_dialog(
|
|
$pj,
|
|
[
|
|
{
|
|
text => 'Eso de la Diosa de la Luna me parece una tontería, no me'
|
|
. ' creo ni una palabra y ese chamán es un charlantán, pero creo'
|
|
. ' que algo tiene que haber. Los cálizor tenemos nuestro propio Dios y'
|
|
. ' es mucho más interesante que esa Diosa. ¿Qué nos importa'
|
|
. ' lo que pase en la Luna si vivimos en tierra firme?'
|
|
}
|
|
]
|
|
);
|
|
}
|
|
|
|
sub word_unknown($self, $pj) {
|
|
$self->send_response_dialog(
|
|
$pj,
|
|
[
|
|
{
|
|
text => 'Mmmm, me lo tengo que pensar.'
|
|
}
|
|
]
|
|
);
|
|
}
|
|
|
|
sub identifier {
|
|
return 'veterano_calizor_tribu_de_la_lima';
|
|
}
|
|
|
|
# sub icon {
|
|
# return '/img/anciano.png';
|
|
# }
|
|
|
|
sub name {
|
|
return 'Veterano Cálizor';
|
|
}
|
|
|
|
sub verb ( $self, $pj ) {
|
|
return 'vocifera';
|
|
}
|
|
|
|
sub wordlessly_talk ( $self, $pj ) {
|
|
if ($pj->get_flag(LasTres::Flags::TALKED_FIRST_TIME_VETERANO_CALIZOR)) {
|
|
$self->send_response_dialog(
|
|
$pj,
|
|
[
|
|
{
|
|
text => 'Echo de menos la cerveza de mi tierra, pero no volvería allí ni'
|
|
. ' loco, y eso a pesar de esos malditos conejos que no nos dejan vivir.'
|
|
}
|
|
]
|
|
);
|
|
return;
|
|
}
|
|
$self->send_response_dialog(
|
|
$pj,
|
|
[
|
|
{
|
|
text => (
|
|
'¿Ya te quieres marchar de la tribu hacia la torre?'
|
|
. ' ¡Qué rápido creceis los jovenes!'
|
|
. ' ¡Cuando te conocí me llegabas por aquí!.- Con su mano se señala la rodilla.-'
|
|
. ' Este bosque es un lugar peligroso y endiablado, deberías quedarte aquí,'
|
|
. ' tendrías más seguridad y harías feliz a este pobre viejo.'
|
|
. ' ¿Qué ya lo tienes decidido? No puedo hacer nada para'
|
|
. ' evitar que persigas tus sueños, en ese caso ven a buscarme'
|
|
. ' más tarde, estoy preparandote una sorpresa que quizás'
|
|
. ' te proteja aunque yo no esté.'
|
|
|
|
)
|
|
}
|
|
]
|
|
);
|
|
$pj->set_flag(LasTres::Flags::TALKED_FIRST_TIME_VETERANO_CALIZOR);
|
|
}
|
|
1;
|