aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdam NAILI2018-02-01 20:58:24 +0100
committerAdam NAILI2018-02-01 20:58:24 +0100
commita07c49065165b2f896684a57d647f2b1a13b68ca (patch)
treedc825b31d14503208e8250a001b5ec128afb81c1
parent5bff076cc86aa7c09baea850c3617ee2c1253594 (diff)
parent735be27e8802740cf0986bb6d14e720234889aae (diff)
downloadwallj-a07c49065165b2f896684a57d647f2b1a13b68ca.tar.gz
Merge branch 'master' of https://github.com/pacien/upem-java-wallj
-rw-r--r--src/docs/class.puml153
-rw-r--r--src/main/java/fr/umlv/java/wallj/block/Block.java49
-rw-r--r--src/main/java/fr/umlv/java/wallj/block/BlockFactory.java5
-rw-r--r--src/main/java/fr/umlv/java/wallj/block/BombBlock.java59
-rw-r--r--src/main/java/fr/umlv/java/wallj/block/GarbageBlock.java23
-rw-r--r--src/main/java/fr/umlv/java/wallj/block/JBoxBlock.java36
-rw-r--r--src/main/java/fr/umlv/java/wallj/block/RobotBlock.java62
-rw-r--r--src/main/java/fr/umlv/java/wallj/block/SolidDef.java45
-rw-r--r--src/main/java/fr/umlv/java/wallj/block/TrashBlock.java23
-rw-r--r--src/main/java/fr/umlv/java/wallj/block/WallBlock.java23
-rw-r--r--src/main/java/fr/umlv/java/wallj/context/Context.java15
-rw-r--r--src/main/java/fr/umlv/java/wallj/context/Game.java10
-rw-r--r--src/main/java/fr/umlv/java/wallj/context/InputHandler.java12
-rw-r--r--src/main/java/fr/umlv/java/wallj/context/Stage.java56
-rw-r--r--src/main/java/fr/umlv/java/wallj/context/Updateable.java28
-rw-r--r--src/main/java/fr/umlv/java/wallj/controller/BlockController.java21
-rw-r--r--src/main/java/fr/umlv/java/wallj/controller/BlockControllerFactory.java49
-rw-r--r--src/main/java/fr/umlv/java/wallj/controller/BombDisplayController.java35
-rw-r--r--src/main/java/fr/umlv/java/wallj/controller/BombPhysicsController.java26
-rw-r--r--src/main/java/fr/umlv/java/wallj/controller/Controller.java12
-rw-r--r--src/main/java/fr/umlv/java/wallj/controller/GameStateController.java (renamed from src/main/java/fr/umlv/java/wallj/controller/GameController.java)7
-rw-r--r--src/main/java/fr/umlv/java/wallj/controller/GarbageDisplayController.java30
-rw-r--r--src/main/java/fr/umlv/java/wallj/controller/GarbagePhysicsController.java26
-rw-r--r--src/main/java/fr/umlv/java/wallj/controller/PhysicsController.java12
-rw-r--r--src/main/java/fr/umlv/java/wallj/controller/RobotDisplayController.java30
-rw-r--r--src/main/java/fr/umlv/java/wallj/controller/RobotPhysicsController.java26
-rw-r--r--src/main/java/fr/umlv/java/wallj/controller/StagePhysicsController.java30
-rw-r--r--src/main/java/fr/umlv/java/wallj/controller/TrashDisplayController.java30
-rw-r--r--src/main/java/fr/umlv/java/wallj/controller/TrashPhysicsController.java26
-rw-r--r--src/main/java/fr/umlv/java/wallj/controller/WallDisplayController.java30
-rw-r--r--src/main/java/fr/umlv/java/wallj/controller/WallPhysicsController.java26
-rw-r--r--src/main/java/fr/umlv/java/wallj/event/AddBombEvent.java21
-rw-r--r--src/main/java/fr/umlv/java/wallj/event/BombSetupEvent.java28
-rw-r--r--src/main/java/fr/umlv/java/wallj/event/BombSetupOrder.java (renamed from src/main/java/fr/umlv/java/wallj/event/DropBombEvent.java)4
-rw-r--r--src/main/java/fr/umlv/java/wallj/event/ConfirmOrder.java (renamed from src/main/java/fr/umlv/java/wallj/event/ConfirmEvent.java)4
-rw-r--r--src/main/java/fr/umlv/java/wallj/event/Event.java11
-rw-r--r--src/main/java/fr/umlv/java/wallj/event/GameOverEvent.java2
-rw-r--r--src/main/java/fr/umlv/java/wallj/event/InputEvent.java2
-rw-r--r--src/main/java/fr/umlv/java/wallj/event/MoveRobotEvent.java22
-rw-r--r--src/main/java/fr/umlv/java/wallj/event/MoveRobotOrder.java28
-rw-r--r--src/main/java/fr/umlv/java/wallj/viewer/Viewer.java5
-rw-r--r--src/main/resources/.gitkeep0
-rw-r--r--src/test/java/fr/umlv/java/wallj/.gitkeep0
-rw-r--r--src/test/resources/.gitkeep0
44 files changed, 551 insertions, 591 deletions
diff --git a/src/docs/class.puml b/src/docs/class.puml
index dbfb731..151e334 100644
--- a/src/docs/class.puml
+++ b/src/docs/class.puml
@@ -1,6 +1,8 @@
1@startuml 1@startuml
2 2
3skinparam linetype ortho 3skinparam linetype ortho
4skinparam monochrome reverse
5skinparam backgroundColor #FFFFFF
4 6
5class Main{ 7class Main{
6 static void main(String[]) 8 static void main(String[])
@@ -23,43 +25,48 @@ package viewer {
23} 25}
24 26
25package context { 27package context {
28 interface Updateable {
29 List<Event> update(Context)
30 static List<Event> updateAll(List<Updateable>, Context)
31 }
32
26 class Context { 33 class Context {
27 Context(Game,List<Event>,GraphicsContext) 34 Context(Game, List<Event>, GraphicsContext)
28 final Game
29 final List<Event>
30 final GraphicsContext
31 Game getGame() 35 Game getGame()
32 List<Event> getEvents() 36 List<Event> getEvents()
33 GraphicsContext getGraphicsContext() 37 GraphicsContext getGraphicsContext()
38 Duration getTimeDelta()
34 } 39 }
35 40
36 class GraphicsContext { 41 class GraphicsContext {
37 final Graphics2D 42 Graphics2D, ScreenInfo
38 final ScreenInfo 43
39 paintCircle(Color, Vec2, float) 44 paintCircle(Color, Vec2, float)
40 paintSquare(Color, Vec2, float, float) 45 paintSquare(Color, Vec2, float, float)
41 paintString(Color, Vec2,String) 46 paintString(Color, Vec2,String)
42 } 47 }
43 48
44 class InputHandler { 49 class InputHandler {
45 private final ApplicationContext 50 ApplicationContext
51
46 InputHandler(ApplicationContext) 52 InputHandler(ApplicationContext)
47 List<Event> getEvents() 53 List<Event> getEvents()
48 } 54 }
49 55
50 class ScreenManager { 56 class ScreenManager {
51 private final ApplicationContext 57 ApplicationContext, Graphics2D
52 private final Graphics2D 58
53 ScreenManager(ApplicationContext,Graphics2D) 59 ScreenManager(ApplicationContext,Graphics2D)
54 GraphicsContext clearScreen() 60 GraphicsContext clearScreen()
55 } 61 }
56 62
57 class Game { 63 class Game implements Updateable {
58 Stage 64 Stage
59 final List<Controller> 65 final List<Controller>
60 int indexBoard 66 int indexBoard
61 final List<Board> 67 final List<Board>
62 bool over 68 bool over
69
63 Game(List<Board>) 70 Game(List<Board>)
64 Stage getStage() 71 Stage getStage()
65 bool isOver() 72 bool isOver()
@@ -68,31 +75,36 @@ package context {
68 void retryStage() 75 void retryStage()
69 List<Event> update(Context context) 76 List<Event> update(Context context)
70 } 77 }
78
79 class Stage implements Updateable {
80 Stage(Board)
81 Board getBoard()
82 List<Block> getBlocks()
83 List<Event> update(Context)
84 bool isCleared()
85 }
71} 86}
72 87
73package event { 88package event {
74 interface Event 89 interface Event
75
76 interface InputEvent implements Event
77 interface GameEvent implements Event 90 interface GameEvent implements Event
91 interface InputEvent implements Event
78 92
79 class DropBombEvent implements InputEvent 93 class ConfirmOrder implements InputEvent
94 class BombSetupOrder implements InputEvent
80 95
81 class AddBombEvent implements InputEvent { 96 class MoveRobotOrder implements InputEvent {
82 final TileVec2 97 MoveRobotEvent(TileVec2)
83 AddBombEvent(TileVec2) 98 TileVec2 getTarget()
84 TileVec2 getTile()
85 } 99 }
86 100
87 class MoveRobotEvent implements InputEvent { 101 class BombSetupEvent implements GameEvent {
88 final TileVec2 102 final TileVec2
89 MoveRobotEvent(TileVec2) 103 AddBombEvent(TileVec2)
90 TileVec2 getTile() 104 TileVec2 getTile()
91 } 105 }
92 106
93 class ConfirmEvent implements InputEvent 107 class GameOverEvent implements GameEvent
94 class GameOverEvent implements Event
95
96 108
97 class ExplosionEvent implements GameEvent { 109 class ExplosionEvent implements GameEvent {
98 Block source 110 Block source
@@ -114,7 +126,6 @@ package board {
114 126
115 class BoardValidator { 127 class BoardValidator {
116 static class Constraint 128 static class Constraint
117 Board
118 129
119 BoardValidator(Board) 130 BoardValidator(Board)
120 BoardValidator validate(Predicate<Board>, String error) 131 BoardValidator validate(Predicate<Board>, String error)
@@ -130,15 +141,12 @@ package board {
130 static final int TILE_DIM 141 static final int TILE_DIM
131 static TileVec2 fromVec2(Vec2) 142 static TileVec2 fromVec2(Vec2)
132 143
133 Vec2
134 TileVec2(col, row) 144 TileVec2(col, row)
135 Vec2 toPixelPos() 145 Vec2 toPixelPos()
136 List<TileVec2> neighbors() 146 List<TileVec2> neighbors()
137 } 147 }
138 148
139 class PathFinder { 149 class PathFinder {
140 Graph
141
142 PathFinder(Board) 150 PathFinder(Board)
143 List<TileVec2> findPath(TileVec2 origin, TileVec2 target) 151 List<TileVec2> findPath(TileVec2 origin, TileVec2 target)
144 } 152 }
@@ -146,12 +154,8 @@ package board {
146