Пример #1
0
void Game::initData()
{
	prePoint = CCPointMake(-1, -1);
	countCleared = 0;
	counter = 0;
	//cocos2d::CCArray *array = cocos2d::CCArray::create();
	Vector<MapNode*>array;
	srand((unsigned int)time(NULL));
	for (int i = 0; i < (TOTAL_X - 2) * (TOTAL_Y - 2); ++i) {
		MapNode *mapnode = new MapNode();
        mapnode->autorelease();
		mapnode->order = (int)(CCRANDOM_0_1() * INT_MAX) % (int)(CCRANDOM_0_1() * INT_MAX);
		mapnode->imgid = imgMap[i];
        array.pushBack(mapnode);
	}
    
//	qsort(array.at(0), array.size(), sizeof(long), compare);
	
	for (int x = 0; x < TOTAL_X; ++x) {
		for (int y = 0; y < TOTAL_Y; ++y) {
			if (x == 0 || x == (TOTAL_X - 1) || y == 0 || (y == TOTAL_Y - 1)) {
				MapNode *mapnode = new MapNode();
                mapnode->autorelease();
				mapnode->order = 0;
				mapnode->imgid = 0;
                this->arrayMap.pushBack(mapnode);
			} else {
				int i = (y - 1) * (TOTAL_Y - 2) + x - 1;
				this->arrayMap.pushBack(array.at(i));
			}
		}
	}
}
Пример #2
0
void Game::initData()
{
	prePoint = CCPointMake(-1, -1);
	countCleared = 0;
	counter = 0;
	cocos2d::CCArray *array = cocos2d::CCArray::create();
	srandom((unsigned int)time(NULL));
	for (int i = 0; i < (TOTAL_X - 2) * (TOTAL_Y - 2); ++i) {
		MapNode *mapnode = new MapNode();
        mapnode->autorelease();
		mapnode->order = (int)(CCRANDOM_0_1() * INT_MAX) % (int)(CCRANDOM_0_1() * INT_MAX);
		mapnode->imgid = imgMap[i];
        array->addObject(mapnode);
	}
    
    qsort(array->data->arr, array->data->num, sizeof(long), compare);
    
	this->arrayMap = new cocos2d::CCArray;
	
	for (int x = 0; x < TOTAL_X; ++x) {
		for (int y = 0; y < TOTAL_Y; ++y) {
			if (x == 0 || x == (TOTAL_X - 1) || y == 0 || (y == TOTAL_Y - 1)) {
				MapNode *mapnode = new MapNode();
                mapnode->autorelease();
				mapnode->order = 0;
				mapnode->imgid = 0;
                this->arrayMap->addObject(mapnode);
			} else {
				int i = (y - 1) * (TOTAL_Y - 2) + x - 1;
                this->arrayMap->addObject(array->objectAtIndex(i));
			}
		}
	}
}