blender3d.cz http://forum.blender3d.cz/ |
|
pohyb http://forum.blender3d.cz/viewtopic.php?f=11&t=2099 |
Stránka 1 z 1 |
Autor: | kracho [ ned pro 18, 2005 1:52 am ] |
Předmět příspěvku: | pohyb |
Neviete ci sa da nejak jednoducho zistit, ci sa objekt prestal pohybovat? dik |
Autor: | zgerbiak [ ned pro 18, 2005 2:36 pm ] |
Předmět příspěvku: | |
No. Ak ma zapnutu dynemiku tak myslim ze sa neprestane pohybovat ![]() Ja som to robil cez porovnavanie pozicie zapisanej pred tym a teraz... samozrejme to bolo v tolerancii. Toto som robil pre biliard hru, este neni hotova ![]() Kód: cont = GameLogic.getCurrentController()
own = cont.getOwner() #pocitanie tolerancie pre os x z predchodzej pozicie x0 = own.pozx - 0.003 x1 = own.pozx + 0.003 pocitanie tolerancie pre os y z predchodzej pozicie y0 = own.pozy - 0.003 y1 = own.pozy + 0.003 x = 0 y = 0 #zistenie ci ej terajsia pozicia v tolerancii if GameLogic.go == 1: if own.getPosition()[0] >= x0: if own.getPosition()[0] <= x1: x = 1 if own.getPosition()[1] >= y0: if own.getPosition()[1] <= y1: y = 1 #ak je os x, y v tolerancii objekt zo zoznamu sa rovna nule, cize stoji if x == 1, y == 1: GameLogic.zoznam[own.farba] = 0 #zapisanie terajsej pozicie pre dalsi vypocet, kde sa pouzije ako predchodza pozicia. own.pozx = own.getPosition()[0] own.pozy = own.getPosition()[1] objektu treba pridat premenne typu float "pozx" a "pozy" Ak to chces aj v tretej osi tak dufam ze ju budes vediet dosadit aj sam. Ak niekto vie o lepsom spôsobe nech napise. Budem rad. ![]() |
Autor: | kracho [ pon pro 19, 2005 12:23 am ] |
Předmět příspěvku: | |
skor ma zaujimalo ci neexistuje jednoduchsi sposob. Skript samozrejme nie je problem napisat, ale diky aj za to. |
Stránka 1 z 1 | Všechny časy jsou v UTC + 1 hodina [ Letní čas ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |