TiledLevelManager
Cette librairie est mise à disposition selon les termes de la Licence Creative Commons Attribution 4.0 International.
Merci de simplement ajouter dans vos crédits :
- mon nom : LACOMBE "Asthegor" Dominique
- un lien vers mon site : http://larry-games.e-monsite.com/
Sommaire
- Description
- Téléchargement
- Liste des fonctions
- Exemples d'utilisation
- Limitations
- Fonctionnalités prises en charge
Description
Cette librairie a pour objectif de simplifier le chargement, la modification et l'affichage dans Löve2D des cartes réalisées sous Tiled puis exportées au format Lua.
On peut l'utiliser pour charger une ou plusieurs cartes si nécessaires toujours aussi simplement.
Téléchargement
Lien vers la dernière version
Liste des fonctions
Retrouvez la liste détaillée des fonctions principales ici : Fonctions du TiledLevelManager
Exemples d'utilisation
Téléchargez tous les exemples ci-dessous : Exemples TiledLevelManager
Exemple d'un fondu au blanc(fade-in) / fondu au noir (fade-out)
Affichage d'une carte avec un seul calque de tiles
local tlm = require("TiledLevelManager") local myMap = {} function love.load() myMap = tlm:new("mymap") end function love.draw() myMap:draw() end
Affichage de plusieurs cartes
local tlm = require("TiledLevelManager") local maps = {} local numMap = 1 function love.load() maps[1] = tlm:new("map01") maps[2] = tlm:new("map02") end function love.keypressed(key, scancode, isrepeat) if key == "space" then numMap = numMap + 1 if numMap > #maps then numMap = 1 end end end function love.draw() maps[numMap]:draw() love.graphics.printf("Press 'Space' to change the map", 0, love.graphics.getHeight() - 80, love.graphics.getWidth(), "center") end
Déplacement dans une carte avec un seul calque de tiles
local tlm = require("TiledLevelManager") local myMap = {} local numRow = 0 local numCol = 0 function love.load() myMap = tlm:new("mymap") end function love.update(dt) local w, h = myMap:getDimensions() if love.keyboard.isDown("up") then numRow = numRow - 1 if numRow < 1 then numRow = 1 end elseif love.keyboard.isDown("down") then numRow = numRow + 1 if numRow > w then numRow = w end end if love.keyboard.isDown("right") then numCol = numCol - 1 if numCol < 1 then numCol = 1 end elseif love.keyboard.isDown("left") then numCol = numCol + 1 if numCol > h then numCol = h end end end function love.draw() myMap:draw(numRow, numCol) end
Limitations
Cette librairie ne gère que les cartes orthogonales.
De plus, le chemin de la carte, rentré en paramètre de la fonction new, ne doit comporter que des / pour séparer les répertoires.
Exemple : tlm:new("levels/map01")
Fonctionnalités de Tiled prises en charge
Vous pouvez suivre les évolutions de cette librairie sur Trello : Trello de TiledLevelManager
Version 0.7
Toutes les fonctionnalités de la version précédente ainsi que :
- Groupes
- Récupération des calques de tuiles et d'images d'un groupe donné et de ses sous-groupes
- Récupération des objets d'un groupe donné et de ses sous-groupes
- Tuiles
- Modifier l'image d'une tuile donnée
- Restqurer l'image d'origine d'une tuile donnée
- Restaurer toutes les images d'origine d'un calque de tuiles
- Stockage du chemin interne (groupes)
- Images
- Stockage du chemin interne (groupes)
- Objets
- Stockage du chemin interne (groupes)
Version 0.6
Toutes les fonctionnalités de la version précédente ainsi que :
- Objets
- Récupération d'un objet à une ligne/colonne donnée
- Changer l'image d'un objet
- Restaurer l'image d'origine d'un objet
- Repositionner les objets à leur position d'origine
- Tuiles
- Récupération de l'Id d'une tuile d'un layer donnée à une ligne/colonne donnée
- Map complète
- Recharger une map
- Modifier l'opacité de tous les calques et objets
- Restaurer l'opacité de tous les calques et objets
Version 0.5
Toutes les fonctionnalités de la version précédente ainsi que :
- Tilesets
- Correction d'un bug dans le chemin des images
- Correction d'un bug dans le calcul du nombre de lignes et colonnes
Version 0.4
Toutes les fonctionnalités de la version précédente ainsi que :
- Calque de tuile
- Récupération d'un calque à partir de son nom
- Récupération, modification et ajustement de l'opacité d'un calque donné
- Calque d'images
- Récupération d'un calque à partir de son nom
- Récupération, modification et ajustement de l'opacité d'un calque donné
- Calque d'objets
- Récupération d'un objet à partir de son nom
- Récupération d'un objet à partir de son type
- Récupération, modification et ajustement de l'opacité d'un objet donné
Version 0.3
Toutes les fonctionnalités de la version précédente ainsi que :
- Calques d'objets
- Opacité
- Décalage horizontal et vertical
- Rotations à angle droit (multiple de 90° )
- Tilesets
- Rotations à angle droit (multiple de 90° )
Version 0.2
Toutes les fonctionnalités de la version précédente ainsi que :
- Tilesets
- Marge
- Espacement
- Calques d'images
- Opacité
- Décalage horizontal et vertical
Version 0.1
- Type de carte :
- Orthogonale
- Tilesets
- Multiples tilesets
- Groupes de calques
- Décalage horizontal et vertical
- Opacité
- Calques de tuiles
- Décalage horizontal et vertical
- Opacité
Ajouter un commentaire
Date de dernière mise à jour : 16/01/2018
Derniers commentaires
Amazing
Excellent ! J'aime beaucoup cela me fait penser au premiers gta sur ps1 :)
J'aime pas le cloud :D
Dès que je lis ca, je te pose plein de question :D