Спрайт-кит ios game slingshot machanism похож на игру Angry Bird

Я новичок в IOS Gaming, и мне нужно создать игру с использованием фреймворка Sprite Kit для функциональности, аналогичной системе шкивов разъяренной птицы, и я также хочу найти расстояние, на которое объект проходит от шкива до его посадки.

Может ли кто-нибудь помочь мне с этим, я был бы благодарен за это. Заранее спасибо.

1 ответ

Одним из способов кодирования эффекта рогатки было бы использование начальной точки на экране, скажем, (x=100,y=100). Вы бы отобразили SpriteNode из рогатки с Y в центре (100,100).

Следующим шагом будет использование touchesBegan:withEvent: в области рогатки, чтобы ваш код знал, что игрок хочет выстрелить из рогатки.

Вы бы использовали touchesMoved:withEvent: чтобы отследить, насколько далеко назад (насколько сильно натянуто) игрок отступает от рогатки.

Релиз будет триггером touchesEnded:withEvent, На основании того, как далеко началось касание (х = 100) и как далеко назад отпущено (например, х =30), вы можете применить силу следующим образом:

float forceUsed = startTouchX - endTouchX;
[_projectile.physicsBody applyForce:CGVectorMake(forceUsed, 0)];

Если вы смотрите на угол выстрела, вам также придется отслеживать Y и использовать эту переменную вместо 0 выше.

Что касается расчета расстояния между двумя точками на экране, оно сводится к координатам x и y. Вычтите objectA.position.x из objectB.position.x

Конечно, все может быть намного сложнее, но все зависит от того, что вы хотите сделать в своем коде. Надеюсь это поможет.

PS Приведенные выше штрихи являются частью UIResponder Class,

Другие вопросы по тегам