Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- tables
- local raquette = {}
- raquette.positionpointx = 0
- raquette.positionpointy = 0
- raquette.largeur = 80
- raquette.hauteur = 33.3
- local balle = {}
- balle.positionpointx = 0
- balle.positionpointy = 0
- balle.velocitex = 0
- balle.velocitey = 0
- balle.rayon = 10
- balle.colle = false
- balle.tombe = false
- local brique = {}
- -- fonction quand le jeu débute
- function DemarreJeu()
- balle.colle = true
- balle.tombe = false
- end
- -- collision de la balle quand sa position moins son rayon dépasse certaines coordonnées
- function CollisionBalle()
- if balle.positionpointx + balle.rayon > screen_width then
- balle.positionpointx = screen_width - balle.rayon -- quand la balle dépasse la limite de la fenetre
- balle.velocitex = 0 - balle.velocitex
- elseif balle.positionpointx - balle.rayon < 0 then
- balle.positionpointx = 0 + balle.rayon
- balle.velocitex = 0 - balle.velocitex
- elseif balle.positionpointy - balle.rayon < 0 then
- balle.positionpointy = 0 + balle.rayon
- balle.velocitey = 0 - balle.velocitey
- elseif balle.positionpointy - balle.rayon > screen_height then -- quand la balle tombe
- balle.colle = true
- balle.tombe = true
- end
- local balleCollisionRaquettey = raquette.positionpointy - balle.rayon
- local raquette_limit = math.abs(raquette.positionpointx - balle.positionpointx)
- if balle.positionpointy > balleCollisionRaquettey and raquette_limit < raquette.largeur / 2 then -- collision de la balle avec la raquette
- balle.velocitey = 0 - balle.velocitey
- end
- end
- -- quand un bouton de la souris est appuyé
- function love.mousepressed(x, y, b)
- if balle.colle == true then
- balle.colle = false
- balle.velocitex = 200
- balle.velocitey = -200
- end
- end
- -- comportement de la balle quand elle est collé a la raquette et quand elle ne l'est pas
- function Ballecolle(dt)
- if balle.colle == true then
- balle.positionpointx = raquette.positionpointx -- position x et y de la balle quand la balle est collé a la raquette
- balle.positionpointy = raquette.positionpointy - balle.rayon
- else
- balle.positionpointx = balle.positionpointx + balle.velocitex * dt -- velocité x et y de de balle
- balle.positionpointy = balle.positionpointy + balle.velocitey * dt
- end
- end
- -- position y de la raquette quand le jeu est chargé
- function PositionRaquettey()
- raquette.positionpointy = screen_height - raquette.hauteur / 2
- end
- -- skelette d'un jeu love2d
- function love.load()
- screen_width = love.graphics.getWidth() -- largeur de la fenetre quand le jeu est chargé
- screen_height = love.graphics.getHeight() -- hauteur de la fenetre quand le jeu est chargé
- PositionRaquettey()
- DemarreJeu()
- end
- function love.update(dt)
- raquette.positionpointx = love.mouse.getX() -- position x de la raquette controlée par le curseur de la souris
- Ballecolle(dt)
- CollisionBalle()
- end
- function love.draw()
- love.graphics.rectangle("fill", raquette.positionpointx - raquette.largeur / 2, raquette.positionpointy, raquette.largeur, raquette.hauteur)
- love.graphics.circle("fill", balle.positionpointx, balle.positionpointy, balle.rayon)
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement