#include "HelloWorldScene.h"USING_NS_CC;
CCScene* HelloWorld::scene()
{
CCScene *scene = CCScene::create();
HelloWorld *layer = HelloWorld::create();
scene->addChild(layer);
return scene;
}bool HelloWorld::init()
{
if ( !CCLayer::init() )
{
return false;
}CCSize visibleSize = CCDirector::sharedDirector()->getVisibleSize();
CCPoint origin = CCDirector::sharedDirector()->getVisibleOrigin();//添加地图
map=CCTMXTiledMap::create("map.tmx");
addChild(map);//获取英雄的对象层
CCTMXObjectGroup *objGroup=map->objectGroupNamed("objHero");
CCDictionary *hero=objGroup->objectNamed("hero");
float x=hero->valueForKey("x")->floatValue();
float y=hero->valueForKey("y")->floatValue();sp=CCSprite::create("1.png");
sp->setAnchorPoint(CCPointZero);//瓦片地图默认放在左下角。所以需要设置一下。
sp->setPosition(ccp(x,y));
addChild(sp);//打开触屏开关
this->setTouchEnabled(true);return true;
}CCPoint HelloWorld::tileCoordForPosition(CCPoint position)
{
int x = position.x /map->getTileSize().width;
int y = ((map->getMapSize().height * map->getTileSize().height) - position.y) / map->getTileSize().height;
return ccp(x, y);
}void HelloWorld::ccTouchesBegan(CCSet *pTouches,CCEvent *pEvent)
{
CCTouch* touch=(CCTouch*)(pTouches->anyObject());
CCPoint pos=touch->getLocation();
CCActionInstant *func=CCCallFunc::create(this,callfunc_selector(HelloWorld::judgeCollide));
sp->runAction(CCSequence::create(CCMoveTo::create(1,pos),func,NULL));
}void HelloWorld::judgeCollide()
{
CCTMXLayer *collisionLayer=map->layerNamed("collisionLayer");
CCPoint tiledPos=tileCoordForPosition(sp->getPosition());
if(collisionLayer->tileGIDAt(tiledPos))
{
CCLOG("%d",collisionLayer->tileGIDAt(tiledPos));
collisionLayer->removeTileAt(tiledPos);
}
}void HelloWorld::menuCloseCallback(CCObject* pSender)
{
#if (CC_TARGET_PLATFORM == CC_PLATFORM_WINRT) || (CC_TARGET_PLATFORM == CC_PLATFORM_WP8)
CCMessageBox("You pressed the close button. Windows Store Apps do not implement a close button.","Alert");
#else
CCDirector::sharedDirector()->end();
#if (CC_TARGET_PLATFORM == CC_PLATFORM_IOS)
exit(0);
#endif
#endif
}
cocos2d tiledmap,布布扣,bubuko.com