Bonjour,
Première chose, merci pour la stack trace, par contre faites attention le numéro de ligne indiqué dans la stacktrace n'est pas compatible avec le listing de votre code!
Malgré ça je vous répond sans vous donnez directement la bonne réponse que je n'ai pas.
On commence par les attributs, à moins que celà soit absolument nécessaire ne créez jamais d'objet avec le type Object!
Code :
- private Object CapInitial;
- private Object nbrAl;
|
non!
À la place préférez un type explicite (int, String, MonObject, ...), qui vous aidera vous, le lecteur mais aussi votre IDE/compilateur! (tout le monde quoi!)
Ensuite pensez à respecter les conventions Java en utilisant la camel case.
Les attributs commencent avec une minuscule tout comme le nom des méthodes!
Dans votre méthode "ChangerCap" pourquoi créez vous un nouvel objet "Combat"? vous êtes déjà dans un objet "Combat".
Le problème que j'identifie est que dans "ChangerCap" vous instanciez un objet "Combat", vous appellez la méthode "ChoisirCap" sur cette instance, et de retour dans "ChangerCap" vous lisez l'attribut de l'instance courrante et non de l'instance créée.
Un code un peu trop confus,
Bon courage tout de même!
Cordialement,
Sébastien Millot