51 lines
1.1 KiB
Plaintext
51 lines
1.1 KiB
Plaintext
@startuml
|
|
package com.iluwatar.updatemethod {
|
|
class App {
|
|
- GAME_RUNNING_TIME : int {static}
|
|
- LOGGER : Logger {static}
|
|
+ App()
|
|
+ main(args : String[]) {static}
|
|
}
|
|
abstract class Entity {
|
|
# id : int
|
|
# logger : Logger
|
|
# position : int
|
|
+ Entity(id : int)
|
|
+ getPosition() : int
|
|
+ setPosition(position : int)
|
|
+ update() {abstract}
|
|
}
|
|
class Skeleton {
|
|
- PATROLLING_LEFT_BOUNDING : int {static}
|
|
- PATROLLING_RIGHT_BOUNDING : int {static}
|
|
# patrollingLeft : boolean
|
|
+ Skeleton(id : int)
|
|
+ Skeleton(id : int, postition : int)
|
|
+ update()
|
|
}
|
|
class Statue {
|
|
# delay : int
|
|
# frames : int
|
|
+ Statue(id : int)
|
|
+ Statue(id : int, delay : int)
|
|
- shootLightning()
|
|
+ update()
|
|
}
|
|
class World {
|
|
- LOGGER : Logger {static}
|
|
# entities : List<Entity>
|
|
# isRunning : boolean
|
|
+ World()
|
|
+ addEntity(entity : Entity)
|
|
- gameLoop()
|
|
- processInput()
|
|
- render()
|
|
+ run()
|
|
+ stop()
|
|
- update()
|
|
}
|
|
}
|
|
World --> "-entities" Entity
|
|
Skeleton --|> Entity
|
|
Statue --|> Entity
|
|
@enduml |