Joueur

Le joueur est une entité attaquante, contrôlée par l’utilisateur humain.

Il est représenté dans le pack de textures ASCII par le caractère @, et dans le pack de textures écureuil par le fameux émoji écureuil 🐿.

En plus des attributs d’une entité attaquante, le joueur dispose des atrributs supplémentaires :

  • current_xp: int

    Correspond à l’expérience accumulée par le joueur depuis le dernier niveau obtenu.

  • max_xp: int

    Expérience requise au joueur pour changer de niveau. Vaut 10 fois le niveau actuel.

  • inventory: List[Item]

    Contient l’ensemble des objets détenus par le joueur.

Déplacement

Selon les paramètres, il est possible de bouger le joueur dans les 4 directions en appuyant sur z, q, s, d ou sur les flèches directionnelles.

Le joueur se retrouvera bloqué s’il avance contre un mur. Si il avance sur un objet, alors il prend l”objet et avance sur la case.

S’il rencontre une autre entité attaquante, alors il frappe l’entité en infligeant autant de dégâts qu’il n’a de force. À chaque fois qu’une entité est tuée, le joueur gagne aléatoirement entre 3 et 7 points d’expérience.

Expérience

À chaque monstre tué, le joueur gagne entre 3 et 7 points d’expérience aléatoirement. Lorsque le joueur atteint la quantité d’expérience requise pour monter de niveau, le joueur gagne un niveau, regagne toute sa vie, consomme son expérience et la nouvelle quantité d’expérience requise est 10 fois le niveau actuel. De plus, entre 5 et 10 fois le niveau actuel entités apparaissent aléatoirement sur la carte à la montée de niveau. Enfin, le joueur gagne en force en montant de niveau.