artG Ierakstīts Janvāris 18, 2016 Share Ierakstīts Janvāris 18, 2016 Es veidoju savu pirmo lietotni, kurā bumbiņa krīt un atsitoties pret zemi, tā nedaudz maina kustību pa labi vai kreisi. Tā tad te ir koda daļa kas man ir: ball.physicsBody.velocity = CGVectorMake(0, -20); if(ball.physicsBody.velocity.dy < -20) ball.physicsBody.velocity = CGVectorMake(arc4random_uniform(50) -10, - ball.physicsBody.velocity.dy); kods ir pavisam vienkāršs, bet dažreiz bumbiņai parādoties, tā sitās pa labās un kreisās sienām mežonīgā ātrumā, bet tas notiek tikai tad,kad arc4random_uniform(50) -10 ir negatīvs skaitlis, kamēr rezultats ir pozitīvs viss strādā kā vajag, tā pat ja ball.physicsBody.velocity = CGVectorMake(0, -20); if(ball.physicsBody.velocity.dy < -20) ball.physicsBody.velocity = CGVectorMake(-10, - ball.physicsBody.velocity.dy); viss strādā, bet vēlos uztaisīt lai, tas strādātu jauktā secībā ar dažādiem ātrumiem. Ko es daru nepareizi? Link to comment Share on other sites More sharing options...
usver Janvāris 19, 2016 Share Janvāris 19, 2016 (labots) Minējums, neredzot kopējo ainu un nezinot konkrēto freimvorku - normalizē to mainīgo. Ieliec rindiņu pirms tam, newXvelocity = arc4random_uniform(50) - 10; If < 0 newXvelocity = 0; // beidzās atsitieni, bumba nomierinājās. Vai modulis no tās vērtības, izvairoties no negatīvām. Labots Janvāris 19, 2016 - usver Link to comment Share on other sites More sharing options...
Recommended Posts
Izveido kontu, vai pieraksties esošajā, lai komentētu
Jums ir jābūt šī foruma biedram, lai varētu komentēt tēmas
Izveidot jaunu kontu
Piereģistrējies un izveido jaunu kontu, tas būs viegli!
Reģistrēt jaunu kontuPierakstīties
Jums jau ir konts? Pierakstieties tajā šeit!
Pierakstīties tagad!