Compare commits
1 Commits
master
...
faf7fa388a
| Author | SHA1 | Date | |
|---|---|---|---|
| faf7fa388a |
103
README.md
103
README.md
@@ -16,15 +16,56 @@ WaitingForPlayers --> StartGame: Start && ready
|
|||||||
StartGame : Assign Player Roles
|
StartGame : Assign Player Roles
|
||||||
StartGame : Show Introduction
|
StartGame : Show Introduction
|
||||||
|
|
||||||
StartGame --> Night : All players ready
|
StartGame --> MainPhaseNight : No Cupin
|
||||||
|
StartGame --> NightPhaseCupin: Cupin
|
||||||
|
|
||||||
|
NightPhaseCupin --> InformLovedOnes: Cupin selected
|
||||||
|
InformLovedOnes --> MainPhaseNight: ack
|
||||||
|
state MainPhaseNight {
|
||||||
|
!include https://gitea.d1v3.de/matthias/pywerewolf/raw/branch/master/README.md!TheNight
|
||||||
|
}
|
||||||
|
MainPhaseNight --> Award: No Villagers left
|
||||||
|
MainPhaseNight --> MainPhaseDay: Some Villagers left
|
||||||
|
state MainPhaseDay {
|
||||||
|
!include https://gitea.d1v3.de/matthias/pywerewolf/raw/branch/master/README.md!TheDay
|
||||||
|
}
|
||||||
|
MainPhaseDay --> Award: No Werewolfes left
|
||||||
|
MainPhaseDay --> MainPhaseNight: Some Werewolfes left
|
||||||
|
@enduml
|
||||||
|
```
|
||||||
|
|
||||||
Night --> SelectVictim
|
```plantuml
|
||||||
|
@startuml(id=TheNight)
|
||||||
|
hide empty description
|
||||||
|
[*] --> NightPhaseMain
|
||||||
|
' state NightPhaseCupinEnd <<join>>
|
||||||
|
' NightPhaseCupin --> WaitToContinueCupin: !Cupin
|
||||||
|
' NightPhaseCupin --> SelectLovedOnes: Cupin
|
||||||
|
' WaitToContinueCupin --> NightPhaseCupinEnd
|
||||||
|
' SelectLovedOnes --> NightPhaseCupinEnd: selected and confirmed loved ones
|
||||||
|
|
||||||
SelectVictim --> KillVictim
|
' state NightPhaseLovedOnes <<fork>>
|
||||||
KillVictim --> ShowDead: Some Villagers left
|
' state NightPhaseLovedOnesEnd <<fork>>
|
||||||
KillVictim --> Award: No Villagers left
|
' NightPhaseCupinEnd --> NightPhaseLovedOnes
|
||||||
|
' NightPhaseLovedOnes --> LovedOnesAwake: Selected Loved Ones
|
||||||
|
' NightPhaseLovedOnes --> WaitForLovedOnes: other
|
||||||
|
' LovedOnesAwake --> NightPhaseLovedOnesEnd: ready
|
||||||
|
' WaitForLovedOnes --> NightPhaseLovedOnesEnd
|
||||||
|
'
|
||||||
|
' NightPhaseLovedOnesEnd --> NightPhaseMain : all ready
|
||||||
|
|
||||||
|
state NightPhaseMain
|
||||||
|
NightPhaseMain --> NightPhaseLate : Witch/Leaderwolf &&\nvoted &&\nactions done and all ready
|
||||||
|
state NightPhaseLate
|
||||||
|
NightPhaseMain --> [*]: no Witch/Leaderwolf &&\nvoted &&\nactions done and all ready
|
||||||
|
NightPhaseLate --> [*]: actions taken
|
||||||
|
@enduml
|
||||||
|
```
|
||||||
|
|
||||||
|
```plantuml
|
||||||
|
@startuml(id=TheDay)
|
||||||
|
hide empty description
|
||||||
|
[*] --> ShowDead: Done
|
||||||
ShowDead: Show the Dead of the night
|
ShowDead: Show the Dead of the night
|
||||||
ShowDead --> Election: No Major
|
ShowDead --> Election: No Major
|
||||||
Election --> Discussion: Major elected
|
Election --> Discussion: Major elected
|
||||||
@@ -34,8 +75,55 @@ Accuse --> Poll : Accuse ok
|
|||||||
Poll --> ShootTheConvict: Poll successfull
|
Poll --> ShootTheConvict: Poll successfull
|
||||||
Poll --> Voting: Poll unsuccessfull
|
Poll --> Voting: Poll unsuccessfull
|
||||||
Voting --> ShootTheConvict: Voting Completed
|
Voting --> ShootTheConvict: Voting Completed
|
||||||
ShootTheConvict --> Award: No Werewolfes left
|
ShootTheConvict --> [*]: Done
|
||||||
ShootTheConvict --> Night: Some Werewolfes left
|
@enduml
|
||||||
|
```
|
||||||
|
|
||||||
|
```plantuml
|
||||||
|
@startuml(id=NightPhaseMain)
|
||||||
|
hide empty description
|
||||||
|
state NightPhaseMainStart <<fork>>
|
||||||
|
[*] --> NightPhaseMainStart
|
||||||
|
NightPhaseMainStart --> SelectVictim: Werewolfes || Spy
|
||||||
|
NightPhaseMainStart --> SelectIdentity: Seer
|
||||||
|
NightPhaseMainStart --> SelectProtectee: Protector
|
||||||
|
NightPhaseMainStart --> SeeWerewolfes: ParanormalInvestigator
|
||||||
|
NightPhaseMainStart --> Sleep: Villager
|
||||||
|
|
||||||
|
|
||||||
|
state NightPhaseMainEnd <<join>>
|
||||||
|
SelectVictim --> NightPhaseMainEnd: Werewolfes || Spy
|
||||||
|
SelectIdentity --> NightPhaseMainEnd: Done
|
||||||
|
SelectProtectee --> NightPhaseMainEnd: Done
|
||||||
|
SeeWerewolfes --> NightPhaseMainEnd: Done
|
||||||
|
Sleep --> NightPhaseMainEnd: Ready
|
||||||
|
|
||||||
|
NightPhaseMainEnd --> [*]
|
||||||
|
|
||||||
|
@enduml
|
||||||
|
```
|
||||||
|
|
||||||
|
```plantuml
|
||||||
|
@startuml(id=NightPhaseLate)
|
||||||
|
hide empty description
|
||||||
|
state NightPhaseLateStart <<fork>>
|
||||||
|
[*] --> NightPhaseLateStart
|
||||||
|
state "Witch selects\nHealing or Poison" as SelectHealOrPoison
|
||||||
|
state "Leaderwolf selects victim\nfor conversion" as SelectLeaderVictim
|
||||||
|
NightPhaseLateStart --> SelectHealOrPoison: Witch
|
||||||
|
NightPhaseLateStart --> SelectLeaderVictim: Leaderwolf
|
||||||
|
NightPhaseLateStart --> SleepAgain: Villager
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
state NightPhaseLateEnd <<join>>
|
||||||
|
SelectHealOrPoison --> NightPhaseLateEnd: Selection finished
|
||||||
|
SelectHealOrPoison -left-> SelectHealOrPoison: Next selection
|
||||||
|
SelectLeaderVictim --> NightPhaseLateEnd: Done
|
||||||
|
SleepAgain --> NightPhaseLateEnd
|
||||||
|
|
||||||
|
NightPhaseLateEnd --> [*]
|
||||||
|
|
||||||
@enduml
|
@enduml
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -44,4 +132,3 @@ ShootTheConvict --> Night: Some Werewolfes left
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -153,16 +153,9 @@ class Game(object):
|
|||||||
TransitionObject(
|
TransitionObject(
|
||||||
name = "StartGame 2 MainPhaseNight",
|
name = "StartGame 2 MainPhaseNight",
|
||||||
inputType=GameMasterStartGame,
|
inputType=GameMasterStartGame,
|
||||||
condition=[self.players_ready, self.no_cupin],
|
condition=[self.players_ready],
|
||||||
transition=self.assign_roles,
|
transition=self.assign_roles,
|
||||||
next=GameState.night_phase,
|
next=GameState.start_game,
|
||||||
),
|
|
||||||
TransitionObject(
|
|
||||||
name = "StartGame 2 CupinSelect",
|
|
||||||
inputType=GameMasterStartGame,
|
|
||||||
condition=[self.has_cupin],
|
|
||||||
transition=self.assign_roles,
|
|
||||||
next=GameState.night_phase,
|
|
||||||
)
|
)
|
||||||
],
|
],
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user