Voici le premier écran achevé. Il s'agit de l'écran permettant d'augmenter les caractéristiques du personnage en jeu.
Je le détaille :
1/ L'image sur la gauche est générée aléatoirement. C'est juste pour faire joli ^^ Je peux facilement le configurer pour faire apparaître la carrière du PJ en cours.
2/ Le chiffre dans le cercle au dessus des caractéristiques ("900") indique l'xp qu'il reste au PJ. Celui-ci se met à jour au fur et à mesure que le PJ acquiert ses promotions de carrière.
3/ La liste des caractéristiques dans l'ordre :
- Capacité de combat : correspond au bonus au jet d'attaque (BAB) au corps à corps (1).
- Capacité de tir : correspond au bonus au jet d'attaque à distance (2).
- Force : idem nwn2.
- Endurance : correspond à la constitution de nwn2.
- Agilité : correspond à la dextérité de nwn2.
- Intelligence : idem nwn2.
- Force Mentale : correspond à la sagesse nwn2.
- Sociabilité : correspond au charisme nwn2.
- Attaque : indique le nombre d'attaque supplémentaire par round (3).
- Blessures : Indique le nombre de points de vie supplémentaires qui s'ajoute aux points de vie de base (4).
- Magie : Correspond au nombre de dé à lancer pour la réussite du sort(5).
4/ La première colonne de chiffres (couleur blanc) indique la valeur de la caractéristique du PJ.
5/ La deuxième colonne de chiffres (couleur jaune) correspond aux promotions qu'il reste à prendre (plan de carrière). Ainsi dans le cas présent le PJ peut augmenter sa capacité de combat, sa capacité de tir, etc... mais pas sa Force ou son Endurance. Les promotions diffèrent selon la carrière actuelle du PJ.
6/ La colonne de "+" se passe de commentaire...
- Spoiler:
On clique dessus et ça augmente d'un point la caractéristique correspondante !!!
7/ L'écran le plus à droite contient la description de la caractéristique sélectionnée.
8/ Le bouton "valider" ferme l'UI. Je n'ai pas créer de bouton "Annuler" par flemme. Cela me fait rajouter pas mal de ligne de code pour pas grand chose à mon humble avis... Il ne faut pas se tromper ^^
Chaque augmentation de caractéristique coûte 100 xp pour un point. Je vais rajouter une constante afin que cela soit paramétrable. La seule exception ce sont les blessures qui augmentent de 2 points pour 100 xp dépensé (Je trouvais qu'un PV pour 100 xp ça faisait un peu cher ^^).
Je précise que cet écran (comme les autres d'ailleurs) peut-être "ouvert" à partir de l'écran de jeu ou bien à partir d'un dialogue. L'intérêt réside dans le fait qu'il est possible de configurer la nécessité d'avoir ou non un "entraîneur" pour augmenter ses caractéristiques.
D'un point de vue de la technique pour ceux qui sont intéressés :
(1) Pour gérer l'augmentation du bonus d'attaque, j'ai appliqué l'effet permanent correspondant. Toutefois pour contourner les différents problèmes liés au repos et dissipation d'effet, j'ai créé un don permanent (invisible pour les joueurs) qui active en continu l'effet. La variable contenant la valeur de la caractéristique est stockée sur le PJ (comme toutes les autres caractéristiques).
(2) Héhé là je suis assez fier de moi. En effet pour gérer le bonus de CT j'étais embêté car il n'existe pas de caractéristique correspondante à Nwn2. Alors en fait je me suis servi du script gérant la CC (voir ci-dessus) et j'y ai ajouté une condition "si l'objet tenu en main est une arme à distance", dans ce cas là on change le bonus d'attaque ^^ De mes tests cela semble fonctionner à merveille
(3) Même technique que pour le bonus d'attaque appliqué au nombre d'attaque.
(4) Même technique que le bonus d'attaque appliqué aux points de vie.
(5) à scripter...
[edit] J'ai oublié de préciser que l'ensemble des informations concernant les carrières sont stockées dans des 2da, ce qui permet des mises à jour rapide. Oberon crée un petit programme excel permettant de saisir rapidement les différentes données et génèrent les 2da liés.
Les bugs connus :
- la barre de points de vie sur l'écran de jeu ne prend pas en compte les modifications d'augmentation des PV. En effet il s'agit de "point de vie supplémentaire" et non d'une modification du nombre de points de vie de base. J'y remédierai en modifiant l'UI gérant l'affichage de la barre de points de vie... au pire je supprimerai la barre et afficherai directement sur le portrait du PJ le nombre de PV.
- les effets d'augmentation des points de vie et d'augmentation du bonus d'attaque entraîne l'apparition d'un icône d'état à côté du portrait du joueur. Là par contre je ne vois pas ce que je peux faire, mis à part supprimer les "effets d'état"... mais cela s'appliquera dans tous les cas, même pour les sorts et potions.