A priori ta représentation de compétences, c'est pas simplement un arbre (binaire ou autre) mais c'est un graphe où il y a simplement des noeuds reliés par branches ou transition.
Le plus flexible c'est de faire deux tables :
- 1 table qui représente les noeuds c'est à dire les compétence dans ce cas.( les lettres dans le schema )
- 1 table qui représent les transition autorisées.( les chiffres dans le schema)
...........A..................B......
........1/...\2...........3/...\4..
........C.....D...........E......F..
......5/........\6......../7.........
....../..........G......H............
.....J...........8\...../9...........
......................I................
Table competence/noeud
Id................Description
A.................Eclair de feu
B.................Soin
C.................Boule de feu
etc
Transition :
Id..........Debut....Fin
1...........A..........C
2...........A..........D
3...........B..........E
Quand un joueur selectionne une nouvelle compétence, tu dois :
- chercher toutes les transitions vers cette nouvelle compétence ( toutes celles dont transition.Fin = X)
- pour toutes ces transitions, que le joueur possède déjà transition.début.
C'est probalement la solution la plus lourde parmi celles évoquées, mais c'est ce qui permet de faire le plus de chose en terme de pré requis.
Le plus flexible c'est de faire deux tables :
- 1 table qui représente les noeuds c'est à dire les compétence dans ce cas.( les lettres dans le schema )
- 1 table qui représent les transition autorisées.( les chiffres dans le schema)
...........A..................B......
........1/...\2...........3/...\4..
........C.....D...........E......F..
......5/........\6......../7.........
....../..........G......H............
.....J...........8\...../9...........
......................I................
Table competence/noeud
Id................Description
A.................Eclair de feu
B.................Soin
C.................Boule de feu
etc
Transition :
Id..........Debut....Fin
1...........A..........C
2...........A..........D
3...........B..........E
Quand un joueur selectionne une nouvelle compétence, tu dois :
- chercher toutes les transitions vers cette nouvelle compétence ( toutes celles dont transition.Fin = X)
- pour toutes ces transitions, que le joueur possède déjà transition.début.
C'est probalement la solution la plus lourde parmi celles évoquées, mais c'est ce qui permet de faire le plus de chose en terme de pré requis.