2014-01-14 5 views
0

Можно ли обнаружить столкновения с определенными частями ограничительной рамки спрайта? Например, если спрайт прыгнет и приземлится на платформу, будет обнаружена нижняя часть ограничительной рамки спрайта и верхняя часть столкновения ограничительной рамки платформы.Cocos2d-android обнаружение ограничивающей рамки спрайта

ответ

0

В моих проектах у меня есть помощник библиотеки, которая имеет множество маленьких функций, в том числе что-то вроде:

CCRect CHelperMethods::InsetRect(const CCRect rectToInset, const float insetValueX, const float insetValueY) { 
return CCRectMake(rectToInset.origin.x + insetValueY, rectToInset.origin.y + insetValueY, rectToInset.size.width - insetValueX * 2, rectToInset.size.height - insetValueY * 2); 
} 

Тогда, например, с помощью спрайта, который приземлился, он будет иметь переменное состояние, и я бы говорить (псевдо-код)

if(sprite.getState() == constStateLanded) { 
    CheckCollisionForBox(CHelperMethods::InsetRect(sprite->boundingBox(), yourXOffset, yourYOffset)); 
} 

НТН, как вы помечены Android и iPhone, я не знаю, хотел ли Obj-C или C++ :)

+0

Я потащился Android только и Java для языка, но Спасибо за вашу помощь! Я попытаюсь использовать ваше предложение. :) – user3194348

+0

А, я думаю, что другое редактирование добавило теги :). Дело SAme применяется на Java, хотя – user1474142

Смежные вопросы