Skip to content

Hug0lvt/LeapHit-Client

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

206 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LeapHit


classDiagram
    

    class UserPlayer
    UserPlayer ..> User
    UserPlayer --|> Player
    

    class GameEntity{
        -/x : double
        -/y : double
        
        +/ChangeSize()
        +/ChangeVelocity()
        +/ChangeSkin()
    }
    <<abstract>> GameEntity
    GameEntity --> "1" Skin : skin

    class Paddle{
        +/Move()
    }
    GameEntity <|-- Paddle

    class Ball{
        -/velocity : Vector2
        +/Move()
    }
    GameEntity <|-- Ball

    class Player{
    }
    <<abstract>> Player
    Player --> "1" GameEntity : paddle
    Player --> "1" GameEntity : ball
    Player --> "1" IMovement : movementStrategy

    class UserStat{
        -/touchBallCount : int
        -/timePlayed : int
    }
    

    class Skin{
        -/asset : string
        -/name : string
    }
    <<abstract>> Skin

    class PaddleSkin{
    }
    Skin <|-- PaddleSkin
    
    class BallSkin{
    }
    Skin <|-- BallSkin

    class User{
        -/pseudo : string
    }
    User --> "1" UserStat : globalStat
    User --> "*" Skin : skins
    User --> "1" Skin : selectedPaddle
    

    class Bot{
    }
    Bot --|> Player

    class Score{
        -/winner : Pair
        -/loser : Pair
    }

    class GameStat{
        -/time : int
    }    
    GameStat "1" <-- Game : gameStat
    GameStat --> "1" Score : score

    class WebSocket{
    }
    WebSocket <.. Game


    class Game{
        -/pause : bool
    }
    Game --> "2" Player : players
    
    class IMovement{
        +getMovement()
    }
    <<interface>> IMovement
    
    IMovement <|-- LeapMotion
    IMovement <|-- Camera
    IMovement <|-- Mouse
    IMovement <|-- Aleatoire


    class LeapMotion{
        +getMovement()
    }

    class Camera{
        -/fileNamePath : string
        -/python : string
        -/process : Procss
        -/coordonate : float
        +start()
        +close()
        +update()
        +getMovement()
    }

    class Mouse{
        +getMovement()
    }

    class Aleatoire{
        +getMovement()
    }
    <<abstract>> Aleatoire
    Aleatoire --> "1" GameEntity : paddle
    Aleatoire --> "1" GameEntity : ball
    

    
    class Facile{
        +getMovement()
    }
    Aleatoire <|-- Facile
Loading

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages