Admin Admin
Mesaje : 113 Reputatie : 1 Data de inscriere : 14/07/2011 Varsta : 28 Localizare : Iasi
| Subiect: Crearea unui Triunghi Dinamic Dum Aug 07, 2011 2:12 pm | |
| Dat fiind faptul ca este un tutorial pentru avansati am sa trec peste (unele) lucruri banale. Idee este sa obtinem un triunghi asemanator cu cel de sus... Plan de bataie:1. Trebuie sa avem trei puncte care se misca iar cand ating marginea scenei se "resping". 2. Aceste puncte vor fi unite cu o drapta (construita dinamic). [ editează] Construirea si miscarea punctelor 1. Desenti un punct (nu conteza dimenisiuni sau culoare) 2. Transformati punctul in MovieClip (F8 in caz ca se uita si incapatori pe tutorial) 3. Selectati punctul si introduceti in caseta de ActionScript: Cod: | onClipEvent (load) {// scriptul ruleaza doar la intrarea in scena xvit = random(5)+2;//viteza de miscare pe axa X yvit = random(5)+2;// viteza de miscare pe axa Y, ambele viteze nu pot si mai mici de 2 } |
Cod: | onClipEvent (enterFrame) {// scriptul ruleaza atat timp cat MovieClip-ul este in scena this._x += xvit; // se modifica pozitia pe axa X a punctului if (this._x>Stage.width) {// conditia ca punctul sa ajunga la margina din dreapta a scenei this._x = Stage.width;//se pozitioneaza punctul pe margine xvit = 0-xvit;// viteza de miscare isi modifica semnul (iar punctul sensul de miscare) } if (this._x<0) {// conditia ca punctul sa ajunga la margina din stanga a scenei this._x = 0;//se pozitioneaza punctul pe margine xvit = 0-xvit;// viteza de miscare isi modifica semnul (iar punctul sensul de miscare) } this._y += yvit;// se modifica pozitia pe axa Y a punctului if (this._y>Stage.height) {// conditia ca punctul sa ajunga la margina de jos a scenei this._y = Stage.height;//se pozitioneaza punctul pe margine yvit = 0-yvit;// viteza de miscare isi modifica semnul (iar punctul sensul de miscare) } if (this._y<0) {// conditia ca punctul sa ajunga la margina de sus a scenei this._y = 0;//se pozitioneaza punctul pe margine yvit = 0-yvit;//viteza de miscare isi modifica semnul (iar punctul sensul de miscare) } } | Ca idee generala a scriptului retineti: Punctul isi modifica pozitia pe ambele axe pana cand ajunge la una din margini, in acel moment se modifica sensul de miscare pe axa corespunzatoare marginii. 4. Trageti cu mousul de punct tinand apasata tasta "Alt" si obtineti inca doua puncte. Sau Copy/Paste pentru cei mia conservatori. 5. Fiecare MovieClip va avea un nume de scena: b1, b2, b3 - nu intrebati de la ce vine b ) Construirea liniei
Vom avea trei linii construite dinamic. 1. Selectati primul frame si deschideti fereastra Action, introduceti scriptul:
Cod: | _root.onEnterFrame = function() {// scriptul are loc continuu _root.clear()// se sterg liniile create anterior (prima data nu se va sterge nimic) _root.lineStyle(1) (defineste inceputul construirii unei linii, acolo sunt mai multi parametrii cu care va puteti juca) _root.moveTo(b1._x, b1._y);//punctul de unde va incepe noua linie _root.lineTo(b2._x, b2._y);//punctul de final al liniei //inutil: _root.moveTo(b2._x, b2._y);//punctul de unde va incepe noua linie (a doua) _root.lineTo(b3._x, b3._y);//punctul de final al liniei // inutil: _root.moveTo(b3._x, b3._y);//punctul de unde va incepe noua linie (a treia) _root.lineTo(b1._x, b1._y);//punctul de final al liniei }; |
2. Acum avem trei puncte care se misca, si liinile dintre acestea care se "misca" odata cu ele. 3. Testati sa vedeti cum merge. Va recond sa incercati pe fundal negru linii si pct albe, versi saul albastre. Puteti incerca sa "intrati" in punct (MovieClip) si sa stergeti desenul. | |
|