Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Au chargement du fichier 0m :
- -> Tri de la liste des entités :
- - Par numéro de map croissant
- - Si deux numéros de map sont identiques, tri par position x
- - Si deux positions x sont identiques, tri par position y
- Au clic sur un mob sur la map :
- - mob.map, mob.x, mob.y représentent les infos du mob sélectionné
- - imin = 0, imax = liste.length
- // Boucle 1 :
- - m = (int) (imin + imax)/2
- - While liste[m].map != mob.map:
- • If liste[m].map > mob.map:
- imax = m
- • Else:
- imin = m
- • m = (int) (imin + imax)/2
- // Boucle 2 :
- -> While liste[m].x != mob.x:
- • If liste[m].x > mob.x:
- imax = m
- • Else:
- imin = m
- • m = (int) (imin + imax)/2
- // Boucle 3 :
- -> While liste[m].y != mob.y:
- • If liste[m].y > mob.y:
- imax = m
- • Else:
- imin = m
- • m = (int) (imin + imax)/2
- // Voilà ! m est l'index du mob recherché
- Ça peut paraître super long mais chaque boucle n'itère que peut de fois
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement