Hogyan tudnám megoldani az elliptikus mozgást?
Egy játékhoz készítek spellt ami abból áll hogy egy shurikent eldob ami egy elliptikus pályát leírva visszatér a kiindulópontra. Na most az a probléma hogy nem jól működik. A következő a helyzet: Egyetlen egy real típusú változóval akartam bekonfigurálni a teljes mozgást a következőképpen:
Set SCaster[SIndex] = (Triggering unit) [kezdő egység]
Set STargetPoint[SIndex] = (Target point of ability being cast) [célpont]
Set SCasterPoint[SIndex] = (Position of SCaster[SIndex]) [kezdőpont]
Set SDistanceMax[SIndex] = 1400.00 [a változó ami alapján a többit megadja magától]
Set SDistanceInner[SIndex] = (SDistanceMax[SIndex] / 10.00) [egy belső kör rádiuszának megadása hogy elliptikus legyen a mozgás és ne menjen a középponthoz túl közel]
Set SDistanceOuter[SIndex] = (SDistanceMax[SIndex] / 2.00) [külső kör rádiusza hogy ne menjen túl messzire]
Set SDistance[SIndex] = SDistanceOuter[SIndex] [aktuális távolság a középponttól]
Set SMove[SIndex] = ((SDistanceOuter[SIndex] - SDistanceInner[SIndex]) / 18.00) [mozgatási távolság(0.03 sec alatt 5 fokot fordul el)]
Set SBoomerangPoint[SIndex] = (SCasterPoint[SIndex] offset by (SDistanceMax[SIndex] / 2.00) towards (Angle from SCasterPoint[SIndex] to STargetPoint[SIndex]) degrees) [középpont]
Set SChange[SIndex] = False [ha elérte a belső kört átvált és a távolság értékét növelni kezdi hogy a középponthoz képest távolodjon]
Set SBack[SIndex] = False [visszatérés]
Az SIndex-ek a tömb miatt van hogy egyszerre akárhányszor lefuthasson probléma nélkül.
A probléma az hogy mikor eléri a belső kört az SChange változót át kéne váltania amitől annak kifele kéne mennie. Át is váltja de csak azután kezd el kifele haladni hogy elérte a középpontot. Hogy tudnám ezt megoldani?
Akik a teljes kódra kíváncsiak: [link] (grafikus)
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!