Skip to content
Snippets Groups Projects
Commit f2037811 authored by VIGNERON Steven's avatar VIGNERON Steven
Browse files

add V2 diagrams

parent de506b58
Branches
No related tags found
No related merge requests found
doc/Q4_DiagSequence.png

41.5 KiB

doc/V2.png

112 KiB

@startuml
participant "NiveauVisiteur(nv)" as nv
participant "Equipe (bataillon)" as bataillon
participant "Roi (roi)" as roi
participant "Guerisseur (guerisseur)" as guerisseur
participant "Equipe (soldats)" as soldats
participant "Guerrier (guerrier1)" as guerrier1
participant "Guerrier (guerrier2)" as guerrier2
nv -> bataillon : accept(nv)
bataillon -> roi : accept(nv)
roi -> nv : visitRoi(roi)
nv -> roi : "augmentation de niveau"
bataillon -> guerisseur : accept(nv)
guerisseur -> nv : visitGuerisseur(guerisseur)
nv -> guerisseur : "augmentation de niveau"
bataillon -> soldats : accept(nv)
soldats -> guerrier1 : accept(nv)
guerrier1 -> nv : visitGuerrier(guerrier1)
nv -> guerrier1 : "augmentation de niveau"
soldats -> guerrier2 : accept(nv)
guerrier2 -> nv : visitGuerrier(guerrier2)
nv -> guerrier2 : "augmentation de niveau"
@enduml
@startuml
package DP{
skin rose
abstract class Arme {
#int degat
#String nom
#double poids
+ Arme(int degat, String nom, double poids)
}
class Epee extends Arme {
- int longueur
+ Epee()
}
class BatonDeSorcier extends Arme {
-String pouvoir
+ BatonDeSorcier()
}
class BaguetteMagique extends Arme {
-int soin
+ BaguetteMagique()
}
abstract class Personnage implements ComposantEquipe{
#int pointsDeVie
#int niveau
#String nom
+ Personnage(int pointsDeVie, String nom, Arme arme)
}
Personnage -left- "1" Arme
class Guerrier extends Personnage {
- int force
+ Guerrier()
+ void accept(VisiteurPersonnage visiteur)
}
class Roi extends Personnage {
- int force
- String royaume
+ Roi()
+ void accept(VisiteurPersonnage visiteur)
}
class Sorcier extends Personnage {
- int intelligence
+ Sorcier()
+ void accept(VisiteurPersonnage visiteur)
}
class Guerisseur extends Personnage {
- int sagesse
+ Guerisseur()
+ void accept(VisiteurPersonnage visiteur)
}
interface VisiteurPersonnage {
+ void visitGuerrier(Guerrier guerrier)
+ void visitRoi(Roi roi)
+ void visitSorcier(Sorcier sorcier)
+ void visitGuerisseur(Guerisseur guerisseur)
+ void visitEquipe(Equipe equipe)
}
class DegatVisiteur implements VisiteurPersonnage {
+ void visitGuerrier(Guerrier guerrier)
+ void visitRoi(Roi roi)
+ void visitSorcier(Sorcier sorcier)
+ void visitGuerisseur(Guerisseur guerisseur)
+ void visitEquipe(Equipe equipe)
}
class NiveauVisiteur implements VisiteurPersonnage {
+ void visitGuerrier(Guerrier guerrier)
+ void visitRoi(Roi roi)
+ void visitSorcier(Sorcier sorcier)
+ void visitGuerisseur(Guerisseur guerisseur)
+ void visitEquipe(Equipe equipe)
}
interface ComposantEquipe {
+ void accept(VisiteurPersonnage visiteur)
}
class Equipe implements ComposantEquipe {
+ Equipe()
+ void addComposant(ComposantEquipe ... ces)
+ void rmComposant(ComposantEquipe ce)
+ void accept(VisiteurPersonnage visiteur)
}
Equipe --"0..*" ComposantEquipe : composants
}
@enduml
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment