diff --git a/docs/uml.plantuml b/docs/uml.plantuml index cffefad..7096195 100644 --- a/docs/uml.plantuml +++ b/docs/uml.plantuml @@ -1,125 +1,131 @@ @startuml jeu +abstract class Objet +{ + - taille : int + - consomable : Condition + - transmissible : Condition +} + +class Connaissance +{ + - transmissible : Condition +} + +class Lieu +{ + - exploré : bool + - déposable : Condition +} + +class Jeu{} + +class Territoire{} + +class Chemin +{ + - ouvert : Condition + - visible : Condition + - obligatoire : Condition +} + +class Explorateur{} + +class Personne +{ + - obligatoire : Condition +} + +class Depart{} + +class Fin{} + +interface Cachable +{ + - caché : Condition +} + +class Interraction +{ + - disponible : Condition +} + +class Choix{} + +class Action +{ + - proposable : Condition + - finInterraction : Condition +} + +class Condition{} + +class ConditionOU{} + +class ConditionET{} + +class Test{} + +class TestObjet +{ + - nombre : int + - supérieurEgale : bool +} + +class TestConnaissance{} + + +' Links +Condition "1" -down- "0..*" ConditionOU +ConditionOU "1" -down- "1..*" ConditionET +ConditionET "1" -down- "1..*" Test + +Test <|-down- TestConnaissance +Test <|-down- TestObjet + +TestConnaissance "0..1" -up- "1" Connaissance +TestObjet "0..1" -up- "1" Objet + +Cachable <|-down- Connaissance +Cachable <|-down- Objet +Cachable <|-down- Personne + +Depart -up-|> Lieu +Fin -up-|> Lieu + + Jeu "1" -- "1" Explorateur Jeu "1" -- "1" Territoire -class Jeu -{ - -} Territoire "1" -- "1..*" Lieu Territoire "1" -- "0..*" Chemin Territoire "1" -- "1" Depart Territoire "1" -- "1" Fin -class Territoire -{ - -} Lieu "1" -- "0..*" Chemin Lieu "1" -- "0..*" Chemin Lieu "1" -- "0..*" Connaissance Lieu "0..1" -- "0..*" Objet Lieu "1" -- "0..*" Personne -Lieu <|-- Depart -Lieu <|-- Fin -class Lieu -{ - - exploré : bool - - déposable : Condition -} -Chemin "0..1" -- "0..*" Connaissance : transmettre + +Chemin "0..1" -left- "0..*" Connaissance : transmettre + Chemin "0..1" -- "0..*" Objet : transmettre Chemin "0..1" -- "0..*" Objet : consommer -class Chemin -{ - - ouvert : Condition - - visible : Condition - - obligatoire : Condition -} Explorateur "0..1" -- "0..*" Connaissance Explorateur "0..1" -- "0..*" Objet Explorateur "0..1" -- "1" Lieu -class Explorateur -{ -} -Cachable <|-- Connaissance -Cachable <|-- Objet -Cachable <|-- Personne -class Cachable -{ - - caché : Condition -} -class Connaissance -{ - - transmissible : Condition -} - -abstract class Objet -{ - - taille : int - - consomable : Condition - - transmissible : Condition -} Personne "1" -- "1.." Interraction -class Personne -{ - - obligatoire : Condition -} - -class Depart -{ - -} - -class Fin -{ - -} - -Condition "1" -- "0..*" ConditionOU -class Condition -{ - -} - -ConditionOU "1" -- "1..*" ConditionET -ConditionET "1" -- "1..*" Test -Test <|-- TestConnaissance -Test <|-- TestObjet -TestConnaissance "0..1" -- "1" Connaissance -TestObjet "0..1" -- "1" Objet -class TestObjet -{ - - nombre : int - - supérieurEgale : bool -} Interraction "0..1" -- "0..*" Objet Interraction "0..1" -- "0..*" Connaissance Interraction "1" -- "1" Choix -class Interraction -{ - - disponible : Condition -} Choix "1" -- "1..*" Action -class Choix -{ - -} - -class Action -{ - - proposable : Condition - - finInterraction : Condition -} - - @enduml \ No newline at end of file