hjælp til mapping
Jeg har nogle problemer med at få min menu til at reagere helt korrekt. Jeg laver 12 kasser i et 3*4 grid. Det skal så fungere således at i de tilfælde at visse punkter ikke er aktive skal den gå videre og finde næste aktive, men IKKE bryde/ gå ud over kanterne på mappet. Altså i nedenstående skal man kunne gå fra 1 til 11 hvis man trykker pil ned og pil højre går til 4 og 8 og så ikke videre.menuMap = [
[0,4,8],
[1,5,9],
[2,6,10],
[3,7,11]
];
menu[0] = new menuElement(menu.length, "1", false);
menu[4] = new menuElement(menu.length, "2", false);
menu[8] = new menuElement(menu.length, "3", false);
menu[11] = new menuElement(menu.length, "4", false);
function menuMove(direction){
var boxX = boxMapX;
var boxY = boxMapY;
var changed = false;
if(direction == 0 && menuParent > 0){
for(i = boxMapY; i >= 0; i--){
var b = box[boxMap[i][boxX]];
if(!b.boxDisabled && b.boxId != boxMap[boxMapY][boxMapX]){
boxMapY = i;
menuSetActive(b.boxId);
changed = true;
break;
}
}
}
// og her kommer så lignende funktioner til de andre veje.
}
mit problem er tilføjer jeg flere menuelementer (f.eks nr 7) så virker min funktion ikke efter hensigten. Hvad gør jeg galt og hvordan kan jeg evt optimere mit script?
