Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "Menu.h"
- #include "cocos2d.h"
- #include <time.h>
- #include <math.h>
- #define COCOS2D_DEBUG 1
- USING_NS_CC;
- ScenaMenu *ScenaMenu::createWithPhysics() {
- ScenaMenu *ret = new ScenaMenu();
- if (ret && ret->initWithPhysics()) {
- ret->autorelease();
- return ret;
- }
- else {
- CC_SAFE_DELETE(ret);
- return nullptr;
- }
- }
- ScenaMenu::ScenaMenu() {
- frameSize = Director::getInstance()->getOpenGLView()->getFrameSize();
- }
- ScenaMenu::~ScenaMenu() {}
- void ScenaMenu::onEnter() {
- Scene::onEnter();
- fisica = this->getPhysicsWorld();
- fisica->setDebugDrawMask(PhysicsWorld::DEBUGDRAW_ALL);
- fisica->setGravity(Vec2(0, -10.0f));
- Texture2D::TexParams texParams = { GL_LINEAR_MIPMAP_LINEAR, GL_LINEAR, GL_CLAMP_TO_EDGE, GL_CLAMP_TO_EDGE };
- LayerColor *layerMenu = LayerColor::create(Color4B(255, 255, 255, 255));
- layerMenu->setContentSize(frameSize);
- textureSfera = Director::getInstance()->getTextureCache()->addImage("sfera2.png");
- textureSfera->setTexParameters(&texParams);
- textureSfera->generateMipmap();
- float angolo;
- srand(time(NULL));
- PhysicsMaterial mat = PhysicsMaterial(1, 1, 0);
- PhysicsBody *bodyFisica;
- bodyFisica = PhysicsBody::createCircle(layerMenu->getContentSize().width * 0.1, mat, Vec2::ZERO);
- angolo = (rand() % 628) / 100.0f;
- bodyFisica->setVelocity(Vec2(10 * cos(angolo), 10 * sin(angolo)));
- spriteSfera = Sprite::createWithTexture(textureSfera);
- spriteSfera->setScale((layerMenu->getContentSize().width * 0.33) / spriteSfera->getContentSize().width);
- spriteSfera->setPosition(layerMenu->getContentSize().width * 0.5, layerMenu->getContentSize().height * 0.5);
- spriteSfera->setPhysicsBody(bodyFisica);
- this->addChild(layerMenu);
- layerMenu->addChild(spriteSfera);
- }
- void ScenaMenu::update(float dt) {
- log("POS %f", spriteSfera->getPhysicsBody()->getPosition().y);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement