des is scho geil (JetBrains UML JavaScript and Typescript Plugin)

This commit is contained in:
David Hain 2023-01-10 11:20:51 +01:00 committed by GitHub
parent 5f517c1a47
commit b963623c58
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -1,48 +1,80 @@
```mermaid ```mermaid
classDiagram classDiagram
Entity <|-- Raspberry direction BT
Entity <|-- Obstacle class Collidable {
Entity <|-- Pipe collides(o: Entity) boolean
Entity: -number fill }
Entity: +Position position class Entity {
Entity: +number width constructor(position: Position, width: number, height: number, fill: number)
Entity: +number height Position _position
Entity: +abstract update() number _width
Entity: +draw() number _height
Entity: -detectCollision(Entity other) number fill
boolean _showHitbox
class Raspberry{ update() void
-number lift draw() void
-number gravity Position position
-static number maxVelocity number width
+number velocity number height
boolean showHitbox
-applyGravity()
-forceBoundaries()
-boost()
+update()
} }
class Obstacle { class Obstacle {
-Entity pipeTop constructor(position: Position, obstacleWidth: number, obstacleHeight: number, pipeImagePath: string)
-Entity pipeBottom Pipe pipeTop
-number distanceBetweenPipes Pipe pipeBottom
-number padding number padding
-number speed number speed
-static number startX number _distanceBetweenPipes
number _startX
-randomRange() resetPosition() void
+resetPosition() randomizeHeight() void
+update() randomRange(min: number, max: number) number
+draw() update() void
draw() void
collides(o: Entity) boolean
any startX
any distanceBetweenPipes
} }
class Pipe { class Pipe {
+update() constructor(positionX: number, width: number, height: number)
any _image
update() void
draw() void
move(speed: number) void
collides(o: Entity) boolean
any image
}
class Position {
constructor(x: number, y: number)
number _x
number _y
number x
number y
}
class Raspberry {
constructor(image: string)
number lift
number gravity
number _velocity
any _image
Position position
number maxVelocity
number WIDTH
number HEIGHT
number FILL
update() void
applyGravity() void
forceBoundaries() void
boost() void
draw() void
number velocity
any image
} }
class Position{ Obstacle ..> Collidable
+int x Obstacle --> Entity
+int y Pipe ..> Collidable
} Pipe --> Entity
Raspberry --> Entity
``` ```