PDA

Volledige versie bekijken : hoe moet ik hier aan beginnen?


ivow
%Europe/Berlin %360 %2005, 09:38
Hoi,

ik heb een opdracht gekregen om hetvolgende te maken:

http://users.pandora.be/ivow/rack.jpg

je ziet de rack met zwarte lijnen, deze is 21 of 42
units hoog (haal je uit een db).
de groene vlakken zijn de vrije posities in het rack
(ook op te halen uit een db) de rode zijn toestellen,
deze toestellen kunnen meerdere units hoog zijn (ook
weer gegevens uit een db).
je moet dan een toestel kunnen aanklikken en via de
pijltjestoetsen aan de zijkant deze toestellen naar de
volgende of vorige vrije plaats kunnen verschuiven.
dus als je een toestel van 2 units hoog aanklikt moet
die ook in een plaats komen met 2 vrije units...

Hoe moet ik hier in godsnaam aan beginnen?

Ik heb een goede basiskennis van Actionscript..

Dauntless
%Europe/Berlin %488 %2005, 12:43
Mogen units van 2 alleen switchen met units van 2? Of mogen ze ook met units van 1 wisselen?

ivow
%Europe/Berlin %375 %2005, 10:00
De units bestaande uit 2 delen mogen ook gewoon geswitched worden met units bestaande uit 1 deel. Dus eentje van 2 delen schuift bijv gewoon eentje naar beneden, controleert of deze plaats vrij is, zoja, verschuift hij, zonee gaat hij naar de eerst volgende vrije plaats volgende van zijn positie

Dauntless
%Europe/Berlin %461 %2005, 12:05
zonee gaat hij naar de eerst volgende vrije plaats volgende van zijn positie
Wat is een vrije plaats? :I Want nu staat hij toch helemaal 'vol' met units (van 2 en 1) ?

ivow
%Europe/Berlin %483 %2005, 12:35
de groene zijn de vrije posities, dus daar kan je naar verschuiven, dus je hebt in de voorbeeld afbeelding een unit van 1hoog en een unit van 2 hoog

Dauntless
%Europe/Berlin %490 %2005, 12:45
Hoe je dat kan doen... Houd een array bij van alle posities, dus een array van 8 elementen die allemaal 1 of 0 zijn naargelang er iets in staat of niet. In elke mc sla je z'n positie inde array op . Als je dan naar beneden of naar boven klikt vraag je de huidige positie van het object op. Je kijkt of die positie +1 (of -1) vrij is in de array. Als die vrij is doe je

array[huidigepositie] = 0;
huidigepositie ++;
array[huidigepositie] = 1;

En daarna kan je de y van de movieclip aanpassen dmv _y = huidigepositie * mcHoogte ;

ivow
%Europe/Berlin %513 %2005, 13:19
super!

ga het eens proberen!

Bedankt!

Y.

Dauntless
%Europe/Berlin %524 %2005, 13:34
Graag gedaan :) Als er nog specifiekere problemen zijn open je maar een nieuw topic :)

gbolssens
%Europe/Berlin %572 %2005, 14:44
Hey Ivow,

Lijkt een beetje op Reason (als dat je iets zegt; dat is een softwaresynthesiser prog. met virtueel 19" rack). Alleen is het daar Drag en drop , wat ik ook eigenlijk wel handiger vind i.p.v. met pijltjesbuttons.

Lijkt me niet zo'n moeilijke opgave, toch? Je moet gewoon goed weten wat je wilt dat het programma doet, maar da's meestal gemakkelijker gezegd dan gedaan.

greetz,
GB