Le titre est long... je sais... mais bon...
Pour une raison quelconque, je reçois l'erreur "Début de type illégal" dans un programme, mais lorsque je le compare à un programme que j'ai fait avant. L'erreur n'apparaît pas là. Et pour une raison étrange, dans le code que je suis en train de faire maintenant. J'obtiens également une erreur "attendue" aussi.
Le code que je suis en train de faire maintenant est celui-ci
public class Hero {
public static Dice d = new Dice();
public String n;
public int s, p ,i;
public int currentHP;
public int maxHP = 100;
public int maxMP = 100;
public int maxSP = 100;
public Hero(String n, int s, int p, int i,){ //début de type illégal
this.n = n;
this.s = s;
this.p = p;
this.i = i;
this.currentHP = maxHP;
}
public int Attack(){
int damage;
damage = (p*s) + d.Stats();
}
// attendu
}
Comparé à un programme que j'ai fait avant
public class Character implements Arma {
public static Dice d = new Dice();
public String n;
public int s, p, i;
public int currentHP;
public int MP;
public int maxHP = d.Health();
public int maxMP = d.Health();
public Character (String n, int s, int p, int i){
this.n = n;
this.s = s;
this.p = p;
this.i = i;
this.currentHP = maxHP;
this.MP = maxMP;
}
public int attack()
{
int damage;
damage = ((s * p) + i) + d.Dice();
return damage;
}
Je ne reçois aucune erreur ici dans Character... C'est une énigme pour moi... est-ce juste parce que je n'ai pas encore terminé tout le code pour Hero? mais cela n'a aucun sens car le code Character était parfait quand je l'ai fait, donc pourquoi le code Hero agit-il bizarrement?
P.S. J'ai fait le code du personnage quand j'étudiais. Cependant, il est entièrement fait de ma propre imagination. Le code du héros est essentiellement juste une copie reformatée.
P.P.S. Le code Arma est juste une interface qui devait "améliorer" la classe Character pour qu'elle puisse rivaliser avec un autre code que nous devions faire en classe. Cela ne fait littéralement rien d'autre que donner des armes au code Character.