Autor Zpráva
Vlky
Profil
Zdravím,

měl bych na vás jednu prosbu.
Začínám se (s velkou chutí) učit action script.
A to ( asi jako hodně začátečníků) formou turotiálů atd.
Ale k věci.
Pomocí scriptování chci rozpohybovat (např. čtverec) tak, aby se pohyboval z bodu A do bodu B - z bodu B do bodu C - z bodu C do bodu D a z bodu D do bodu A - a to vše znovu.
Není ani tolik problém, že bych nevěděl, jak to udělat (tutoriál), ale nechápu určitou část skriptu.
Do prvního snímku movie clipu (např. "Čtverec") jsem definoval tento kód :

c1 = 0
c2 = 1
souradniceX = [500,20,400,700]
souradniceY = [20,400,300,450]


startX = souradniceX[c1]
startY = souradniceY[c1]

endX = souradniceX[c2]
endY = souradniceY[c2]

koef = 80

speedX = (endX - startX)/koef
speedY = (endY - startY)/koef

this._x = startX
this._y = startY

c1++
if (c1 == 3) {
c2 = 0
}
if (c1 < 3) {
c2 = c1 + 1
}
if (c1 >3) {
c1 = 0
c2 = 1
}

play()


do druhého snímku :
(a tady je problém - jedná se "pouze" o to, že nechápu význam absolutní hodnoty v této souvislosti - byl bych vám velice vděčný, kdyby jste mi mohli popsat (prosím do detailů - pro naprostého začátečníka) princip této absoutní hodnoty)
if (Math.abs(endX - this._x) <= Math.abs(speedX) || Math.abs(endY - this._y) <= Math.abs(speedY)) {
this._x = endX
this._y = endY
gotoAndPlay(1)
} else {
this._x += speedX
this._y += speedY
play()
}

a do třetího snímku :

if (Math.abs(endX - this._x) <= Math.abs(speedX) || Math.abs(endY - this._y) <= Math.abs(speedY)) {
this._x = endX
this._y = endY
gotoAndPlay(1)
} else {
this._x += speedX
this._y += speedY
gotoAndPlay(2)
}


Děkuji předem za odpověď.
P.S. : Jsem velice rád, že existuje takto kvalitní fórum. Velice děkuji.
PerToon
Profil
Pořádně nevím o co se jedná, ale odčítá to od sebe dvě x-ový souřadnice. Takže můžou nastat dvě změny. endX bude víc vlevo než this.x, nebo víc vpravo. A pokud bude víc vlevo, tak by ti tenhle rozdíl vzdáleností vyšel záporný. Stejně tak absolutní hodnota speedX je dána tím, že ji počítáš jako rozdíl dvou x-ových pozic a zase by mohla vyjít záporně. A záporné vzdálenosti nebo rychlosti jsou většinou nesmysl.
Toto téma je uzamčeno. Odpověď nelze zaslat.

0