Advertisement
Guest User

Fonction recursive

a guest
Jan 25th, 2019
140
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 1.60 KB | None | 0 0
  1. function monster.Search(pLigne, pColonne, pDeep)
  2.    
  3.     if pDeep == 1 then
  4.       monster.bestLigne = pLigne
  5.       monster.bestColonne = pColonne
  6.     end
  7.    
  8.     if pDeep == 5 then
  9.      
  10.       -- on vérifie si la dernière case de recherche contient le héro
  11.       if pLigne == monster.heroLigne and pColonne == monster.heroColonne then
  12.        
  13.         monster.smellHero = true
  14.        
  15.         if pDeep < monster.nbTuile then
  16.           monster.nbTuile = pDeep
  17.           monster.ligne = monster.bestLigne
  18.           monster.colonne = monster.bestColonne
  19.         end
  20.       end
  21.      
  22.     -- on vérifie si la case contient le héro
  23.     elseif pLigne == monster.heroLigne and pColonne == monster.heroColonne then
  24.  
  25.       monster.smellHero = true
  26.      
  27.       if pDeep < monster.nbTuile then
  28.         monster.nbTuile = pDeep
  29.         monster.ligne = monster.bestLigne
  30.         monster.colonne = monster.bestColonne
  31.       end
  32.    
  33.     else
  34.    
  35.       -- On cherche vers le haut
  36.       if monster.TileOk(pLigne - 1, pColonne) then
  37.         monster.Search(pLigne - 1, pColonne, pDeep + 1)
  38.       end
  39.      
  40.       -- On cherche vers la droite
  41.       if monster.TileOk(pLigne, pColonne + 1) then
  42.         monster.Search(pLigne, pColonne + 1, pDeep + 1)
  43.       end
  44.      
  45.       -- On cherche vers le ba+
  46.       if monster.TileOk(pLigne + 1, pColonne) then
  47.         monster.Search(pLigne + 1, pColonne, pDeep + 1)
  48.       end
  49.      
  50.       -- On cherche vers la gauche
  51.       if monster.TileOk(pLigne, pColonne - 1) then
  52.         monster.Search(pLigne, pColonne - 1, pDeep + 1)
  53.       end
  54.     end
  55.   end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement