µLua DS - Forum officiel | Official forum Index du Forum

µLua DS - Forum officiel | Official forum
Le bon endroit pour en savoir plus sur MicroLua et pour parler de vos projets ! | The right place to learn more about MicroLua and talk about your projects !

 FAQFAQ   RechercherRechercher   MembresMembres   GroupesGroupes   S’enregistrerS’enregistrer   ProfilProfil   Se connecter pour vérifier ses messages privésSe connecter pour vérifier ses messages privés   ConnexionConnexion 

Quel est le problème avec ce code ?

 
Poster un nouveau sujet   Répondre au sujet    µLua DS - Forum officiel | Official forum Index du Forum -> Section française -> Demande d'aide
Sujet précédent :: Sujet suivant  
Auteur Message
Sharkou


Hors ligne

Inscrit le: 22 Fév 2012
Messages: 84
Localisation: Bretagne

MessagePosté le: Jeu 23 Fév 2012 - 16:49    Sujet du message: Quel est le problème avec ce code ? Répondre en citant

Voici le code (il ne fonctionne pas) :
Code:


 while not Keys.newPress.Start do
    Controls.read()
    
    tiles = Image.load("images/tiles.png", VRAM)    
    map ScrollMap.new(tiles, "maps/map.map", 4, 3, 32, 32)
    ScrollMap.draw(SCREEN_DOWN, map)
    
    if Keys.held.Up then
        ScrollMap.scroll(map, 0, -1)
    elseif Keys.held.Down then
        ScrollMap.scroll(map, 0, 1)
    elseif Keys.held.Right then
        ScrollMap.scroll(map, 1, 0)
    elseif Keys.held.Left then
        ScrollMap.scroll(map, -1, 0)
    end

    render()
end

ScrollMap.destroy(map)
map = nil
Image.destroy(tiles)
tiles = nil


Et le fichier map.map :
Code:

2|4|1|2
3|4|4|1
1|3|3|1


Le tiles.png est une image 64x64 donc 4 tiles.

Voilà j'espère que vous pourrez m'aider ^^
C'est surement tout con mais je vois pas Confused

Merci d'avance.


Revenir en haut
Publicité






MessagePosté le: Jeu 23 Fév 2012 - 16:49    Sujet du message: Publicité

PublicitéSupprimer les publicités ?
Revenir en haut
spectrenoir06


Hors ligne

Inscrit le: 13 Jan 2012
Messages: 184
Localisation: Paris

MessagePosté le: Jeu 23 Fév 2012 - 17:11    Sujet du message: Quel est le problème avec ce code ? Répondre en citant

met le tiles = Image.load("images/tiles.png", VRAM) 

et map = ScrollMap.new(tiles, "maps/map.map", 4, 3, 32, 32)  avant la boucle while




pense au egale avant le ScrollMap.new


Revenir en haut
Visiter le site web du posteur
Reylak
Administrateur

Hors ligne

Inscrit le: 24 Nov 2008
Messages: 2 838
Localisation: Toulouse

MessagePosté le: Jeu 23 Fév 2012 - 17:15    Sujet du message: Quel est le problème avec ce code ? Répondre en citant

Le mieux est quand même de nous donner le message d'erreur Smile

Si tu as copié-collé directement, il manque un "=" quand tu charges ta map. D'ailleurs, les chargements de la map et de son image ne doivent pas se faire à chaque tour de boucle.

EDIT : grillé sur le fil :p
_________________


Plein d'infos sur le SourceForge !


Revenir en haut
Visiter le site web du posteur MSN Skype
Sharkou


Hors ligne

Inscrit le: 22 Fév 2012
Messages: 84
Localisation: Bretagne

MessagePosté le: Jeu 23 Fév 2012 - 17:35    Sujet du message: Quel est le problème avec ce code ? Répondre en citant

Merci j'ai rajouter le "=" et j'ai mis les chargements avant la boucle.
Ça marche bien maintenant Smile

Par contre quand j'appuie une fois sur la touche "Haut" par exemple, la map monte bien de 1 pixel mais quand j'appuie plusieurs fois elle ne monte pas plus haut ? Comment faire ?


Revenir en haut
Reylak
Administrateur

Hors ligne

Inscrit le: 24 Nov 2008
Messages: 2 838
Localisation: Toulouse

MessagePosté le: Jeu 23 Fév 2012 - 17:47    Sujet du message: Quel est le problème avec ce code ? Répondre en citant

Là ça devrait déjà le faire ; d'ailleurs, comme tu as utilisé "held", ça devrait défiler tant que tu gardes la touche appuyée. Ça fait ça dans toutes les directions ?
_________________


Plein d'infos sur le SourceForge !


Revenir en haut
Visiter le site web du posteur MSN Skype
Sharkou


Hors ligne

Inscrit le: 22 Fév 2012
Messages: 84
Localisation: Bretagne

MessagePosté le: Jeu 23 Fév 2012 - 17:52    Sujet du message: Quel est le problème avec ce code ? Répondre en citant

Oui même quand je change le nombre de pixels^^

Revenir en haut
thermo_nono
Modérateur

Hors ligne

Inscrit le: 31 Déc 2008
Messages: 2 415
Localisation: La Géhenne

MessagePosté le: Jeu 23 Fév 2012 - 18:05    Sujet du message: Quel est le problème avec ce code ? Répondre en citant

c'est peut être dû à la taille de la map, tu devrais essayer avec  une map plus grande que l'écran (quitte à mettre des tuiles transparentes tout autour). 
_________________
“Qui reçoit une idée de moi reçoit de la connaissance sans diminuer la mienne, comme celui qui allume sa chandelle à la mienne reçoit la lumière sans me plonger dans l’obscurité.” - Thomas Jefferson


Revenir en haut
Visiter le site web du posteur MSN
Sharkou


Hors ligne

Inscrit le: 22 Fév 2012
Messages: 84
Localisation: Bretagne

MessagePosté le: Jeu 23 Fév 2012 - 18:10    Sujet du message: Quel est le problème avec ce code ? Répondre en citant

J'ai changé la map comme ça : 
Code:
 map = ScrollMap.new(tiles, "maps/map.map", 10, 8, 32, 32)


 

Code:
3|0|0|1|2|0|1|2|1|2
2|0|1|2|2|0|1|2|1|2
1|3|3|1|2|0|1|2|1|2
2|0|1|2|2|0|1|2|1|2
3|0|0|1|2|0|1|2|1|2
1|3|3|1|2|0|1|2|1|2
3|0|0|1|2|0|1|2|1|2
1|3|3|1|2|0|1|2|1|2
 

Mais toujours le même problème :/


Revenir en haut
thermo_nono
Modérateur

Hors ligne

Inscrit le: 31 Déc 2008
Messages: 2 415
Localisation: La Géhenne

MessagePosté le: Jeu 23 Fév 2012 - 19:37    Sujet du message: Quel est le problème avec ce code ? Répondre en citant

il est possible que le wiki nécessite une petite correction vis à vis du ScrollMap... ainsi : 


 
Code:
 tiles = Image.load("images/tiles.png", VRAM)    
 map = ScrollMap.new(tiles, "maps/map.map", 10, 8, 32, 32)
 x,y = 0,0
 while not Keys.newPress.Start do
    Controls.read()
    ScrollMap.draw(SCREEN_DOWN, map)
    if Keys.held.Up then
  y = y-1
        --ScrollMap.scroll(map, 0, -1)
    elseif Keys.held.Down then
  y=y+1
        --ScrollMap.scroll(map, 0, 1)
    elseif Keys.held.Right then
  x=x+1
        --ScrollMap.scroll(map, 1, 0)
    elseif Keys.held.Left then
  x=x-1
        --ScrollMap.scroll(map, -1, 0)
    end
 ScrollMap.scroll(map, x, y)
    render()
end
ScrollMap.destroy(map)
mamap = nil
Image.destroy(tiles)
tiles = nil
 






fonctionne à merveille. ^^




et pour le wiki je préconise : 


Void ScrollMap.scroll(carteDefilante, x, y) (nds)
Fait défiler une carte défilante.
  • carteDefilante (ScrollMap): carte défilante à faire défiler
  • x (Number): position horizontale de la carte en pixel (par rapport au coin supérieur gauche de l'écran)
  • y (Number): position verticale de la carte en pixel

_________________
“Qui reçoit une idée de moi reçoit de la connaissance sans diminuer la mienne, comme celui qui allume sa chandelle à la mienne reçoit la lumière sans me plonger dans l’obscurité.” - Thomas Jefferson


Revenir en haut
Visiter le site web du posteur MSN
Sharkou


Hors ligne

Inscrit le: 22 Fév 2012
Messages: 84
Localisation: Bretagne

MessagePosté le: Jeu 23 Fév 2012 - 20:11    Sujet du message: Quel est le problème avec ce code ? Répondre en citant

Merci oui ça marche Smile

Revenir en haut
Reylak
Administrateur

Hors ligne

Inscrit le: 24 Nov 2008
Messages: 2 838
Localisation: Toulouse

MessagePosté le: Jeu 23 Fév 2012 - 20:32    Sujet du message: Quel est le problème avec ce code ? Répondre en citant

Ahwww ah ben oui c'est pas du tout pareil ^^
Je vais corriger ça
_________________


Plein d'infos sur le SourceForge !


Revenir en haut
Visiter le site web du posteur MSN Skype
Fantasix
Modérateur

Hors ligne

Inscrit le: 26 Avr 2010
Messages: 1 317
Localisation: SCREEN_UP, en -1, -1

MessagePosté le: Jeu 23 Fév 2012 - 21:45    Sujet du message: Quel est le problème avec ce code ? Répondre en citant

C'était pas expliqué dans l'exemple sur les maps ça ?

J'suis étonné qu'avec tout les jeux utilisant les ScrollMaps sur le forum, tu n'ai pas trouvé l'erreur avant :p

Fanta'
_________________


BMA News :

Création du Homebrew Storage en cours ...


Revenir en haut
Visiter le site web du posteur
Sharkou


Hors ligne

Inscrit le: 22 Fév 2012
Messages: 84
Localisation: Bretagne

MessagePosté le: Sam 25 Fév 2012 - 16:06    Sujet du message: Quel est le problème avec ce code ? Répondre en citant

J'ai encore un petit problème avec les maps, regardez :

index.lua
Code:


tile2 = Image.load("images/tiles2.png", VRAM)
map = ScrollMap.new(tile2,"maps/map1.map",16,12,32,32)
x, y = 0, 0

while true do
    Controls.read()
    
    dofile("fichiers/fonctions.lua")
    dofile("fichiers/main.lua")    

render()
end

ScrollMap.destroy(map)
map = nil
Image.destroy(tiles)
tiles = nil
x, y = nil, nil

main.lua
Code:


 ScrollMap.draw(SCREEN_DOWN, map)
    
    if Keys.held.Up then
        y = y - 1
    elseif Keys.held.Down then
        y = y + 1
    elseif Keys.held.Right then
        x = x + 1
    elseif Keys.held.Left then
        x = x - 1
    end
    
 ScrollMap.scroll(map, x, y)

map1.map
Code:


15| 15| 15| 15| 15| 15| 471| 15| 15| 15| 15| 15| 473| 15| 15| 15|
15| 15| 15| 15| 15| 15| 471| 15| 15| 15| 15| 450| 487| 15| 15| 15|
15| 15| 15| 15| 15| 15| 471| 15| 15| 15| 15| 473| 501| 15| 15| 15|
15| 15| 15| 15| 15| 15| 485| 486| 486| 486| 486| 487| 515| 15| 15| 15|
15| 15| 15| 15| 15| 15| 499| 500| 500| 500| 500| 501| 15| 15| 15| 15|
15| 15| 15| 15| 15| 15| 513| 514| 514| 514| 514| 515| 15| 15| 15| 15|
15| 15| 15| 15| 15| 15| 15| 15| 15| 15| 15| 15| 15| 15| 15| 15|
15| 15| 15| 15| 15| 15| 15| 15| 15| 15| 15| 15| 15| 15| 15| 15|
15| 15| 15| 15| 15| 15| 15| 15| 15| 15| 15| 15| 15| 15| 15| 15|
15| 15| 15| 15| 15| 15| 15| 15| 15| 15| 15| 15| 15| 15| 15| 15|
15| 15| 15| 15| 15| 15| 15| 15| 15| 15| 15| 15| 15| 15| 15| 15|
15| 15| 15| 15| 15| 15| 15| 15| 15| 15| 15| 15| 15| 15| 15| 15|

Voilà ^^
Je sais pas si ça vient du tiles2.png (il fait 2,89 Mo), j'ai essayé de le mettre dans la RAM mais sans résultat. :/


Revenir en haut
Fantasix
Modérateur

Hors ligne

Inscrit le: 26 Avr 2010
Messages: 1 317
Localisation: SCREEN_UP, en -1, -1

MessagePosté le: Sam 25 Fév 2012 - 17:04    Sujet du message: Quel est le problème avec ce code ? Répondre en citant

2.89 Mo ... Lulz

Non en effet ca ne tient LARGEMENT pas.

Réduit beaucoup, très beaucoup. C'est juste énormément de trop pour la DS.

Fanta'
_________________


BMA News :

Création du Homebrew Storage en cours ...


Revenir en haut
Visiter le site web du posteur
Sharkou


Hors ligne

Inscrit le: 22 Fév 2012
Messages: 84
Localisation: Bretagne

MessagePosté le: Sam 25 Fév 2012 - 17:54    Sujet du message: Quel est le problème avec ce code ? Répondre en citant

Ok je vais changer ça alors merci Smile

Revenir en haut
Contenu Sponsorisé






MessagePosté le: Aujourd’hui à 02:11    Sujet du message: Quel est le problème avec ce code ?

Revenir en haut
Montrer les messages depuis:   
Poster un nouveau sujet   Répondre au sujet    µLua DS - Forum officiel | Official forum Index du Forum -> Section française -> Demande d'aide Toutes les heures sont au format GMT + 1 Heure
Page 1 sur 1

 
Sauter vers:  

Index | Creer un forum | Forum gratuit d’entraide | Annuaire des forums gratuits | Signaler une violation | Conditions générales d'utilisation
Powered by phpBB © 2001, 2005 phpBB Group
Traduction par : phpBB-fr.com