package LasTres::Planet::Bahdder::BosqueDelHeroe::BosqueDelHeroeI::TribuDeLaLima;

use v5.36.0;

use strict;
use warnings;
use utf8;

use Moo;

use LasTres::Planet::Bahdder::BosqueDelHeroe::BosqueDelHeroeI;

has identifier => (
    is => 'ro',
    builder => \&_build_identifier,
);

has name => (
    is => 'ro',
    builder => \&_build_name,
);

has description => (
    is => 'ro',
    builder => \&_build_description,
);

has parent => (
    is => 'ro',
    builder => \&_build_parent,
);

has actions => (
    is => 'ro',
    builder => \&_build_actions,
);

has npcs => (
    is => 'ro',
    builder => \&_build_npcs,
);

with 'LasTres::Location';

sub _build_identifier {
    return 'tribu_de_la_lima';
}

sub _build_name {
    return 'Tribu de la Lima (Exterior)';
}

sub _build_description {
    return 'La Tribu de la Lima se siente como un hogar seas o no de aquí. ' 
        . 'Las casitas están improvisadas con paja que los aldeanos intercambian con otras tribus. '
        . 'Los cultivos de Lima están siempre buscando trabajadores, el sueldo es una parte de lo cosechado. ';
}

sub _build_parent {
    return LasTres::Planet::Bahdder::BosqueDelHeroe::BosqueDelHeroeI->instance;
}

sub _build_actions {
    return [];
}

sub _build_npcs {
    return [];
}

sub connected_places {
    return [
        LasTres::Planet::Bahdder::BosqueDelHeroe::TribuDeLaLima::Entrada->instance,
    ];
}

my $singleton;
sub instance {
    my $class = shift;
    if (!defined $singleton) {
        $singleton = $class->new(@_);
    }
    return $singleton;
}
1;
