void MoreDiamondDialog::onPublishFeedCompleted( CCNode *sender, void *data )
{
	CCLOG("onPublishFeedCompleted");
	if (data != NULL)
	{
		CCDictionary *convertedData = (CCDictionary *)data;
		CCString* s = (CCString*)convertedData->objectForKey("isSuccess");
		if (s->boolValue())
		{
			CCLOG("CPP Publish Feed Completed: TRUE");
			
			CCMessageBox(
				CCString::createWithFormat("Bạn được nhận +%d kim cương.", CONF_INT(DIAMOND_FOR_SHARE))->getCString(),
				"Thưởng");
			DataManager::sharedDataManager()->AddDiamond(CONF_INT(DIAMOND_FOR_SHARE));
		} 
		else
		{
			CCLOG("CPP Publish Feed Completed: FALSE");
			CCMessageBox("Không thể chia sẻ", "Lỗi");
		}

		NDKHelper::RemoveSelector("MoreDiamondDialog", "onPublishFeedCompleted");
	}
}
void MoreDiamondDialog::onRateCompleted( CCNode *sender, void *data )
{
	if (data != NULL)
	{
		CCDictionary *convertedData = (CCDictionary *)data;
		CCString* s = (CCString*)convertedData->objectForKey("isSuccess");
		if (s->boolValue())
		{
			CCLOG("CPP Rate Completed: TRUE");
			CCString* s = (CCString*)convertedData->objectForKey("responseType");
			CCLOG("%s", s->getCString());
			if (s->compare("RATE") == 0)
			{
				CCMessageBox(
					CCString::createWithFormat("Bạn được nhận +%d kim cương.", CONF_INT(DIAMOND_FOR_RATE))->getCString(),
					"Thưởng");
				DataManager::sharedDataManager()->AddDiamond(CONF_INT(DIAMOND_FOR_RATE));
				DataManager::sharedDataManager()->SetIsRatedApp(true);

				m_itlbRate->setEnabled(false);
				m_itlbRate->setOpacity(100);
			}
		} 
		else
		{
			CCLOG("CPP Rate Completed: FALSE");
		}

		NDKHelper::RemoveSelector("MoreDiamondDialog", "onRateCompleted");
	}
}
void MoreDiamondDialog::onInviteAllCompleted( CCNode *sender, void *data )
{
	if (data != NULL)
	{
		CCDictionary *convertedData = (CCDictionary *)data;
		CCString* s = (CCString*)convertedData->objectForKey("isSuccess");
		if (s->boolValue())
		{
			CCLOG("CPP Invite All Completed: TRUE");
			CCString* requestId = (CCString*)convertedData->objectForKey("requestId");
			CCLOG("requestId: %s", requestId->getCString());

			CCArray *arrFriends = (CCArray *)convertedData->objectForKey("invitedFriends");

			int count = arrFriends->count();
			int total = CONF_INT(DIAMOND_FOR_INVITE) * count;

			DataManager::sharedDataManager()->AddDiamond(total);
			CCMessageBox(CCString::createWithFormat("Bạn nhận được:\n%d x %d bạn = %d kim cương", 
				CONF_INT(DIAMOND_FOR_INVITE), count, total)->getCString(),
				"Thưởng");
		}
		else
		{
			CCLOG("CPP Invite All Completed: FALSE");
			CCMessageBox("Không thể mời bạn", "Lỗi");
		}

		NDKHelper::RemoveSelector("MoreDiamondDialog", "onInviteAllCompleted");
	}
}
bool MoreDiamondDialog::init()
{
    if ( !CCLayerColor::initWithColor(DIM_COLOR) )
    {
        return false;
    }

	CCPoint pask = ccp(400, 1280 - 1000);
	
	CCScale9Sprite* dialog = CCScale9Sprite::create("dialog.png");
	dialog->setPosition(ccp(400, 1280-750));
	dialog->setContentSize(CCSizeMake(768, 640));
	this->addChild(dialog);

	CCScale9Sprite* dialogTop = CCScale9Sprite::create("dialog.png");
	dialogTop->setPosition(ccp(400, 1280-481));
	dialogTop->setContentSize(CCSizeMake(768, 100));
	this->addChild(dialogTop);

	MY_ADD_LABELTTF(labelTitle, "Thêm kim cương", CONF_STR(FONT_NORMAL), 48, ccBLACK, ccp(400, 1280 - 484));

	MY_ADD_MENU_ITEM_LABEL(itlbRate, CCString::createWithFormat("+ %d: Rate 5 sao", CONF_INT(DIAMOND_FOR_RATE))->getCString(), 
		CONF_STR(FONT_NORMAL), 48, ccBLACK, MoreDiamondDialog::rateCallback, ANCHOR_LEFT, ccp(188, 1280-628));
	MY_ADD_MENU_ITEM_LABEL(itlbInvite, CCString::createWithFormat("+ %d: Mời 1 bạn", CONF_INT(DIAMOND_FOR_INVITE))->getCString(),
		CONF_STR(FONT_NORMAL), 48, ccBLACK, MoreDiamondDialog::inviteCallback, ANCHOR_LEFT, ccp(188, 1280-738));
	MY_ADD_MENU_ITEM_LABEL(itlbShare, CCString::createWithFormat("+ %d: Chia sẻ", CONF_INT(DIAMOND_FOR_SHARE))->getCString(), 
		CONF_STR(FONT_NORMAL), 48, ccBLACK, MoreDiamondDialog::shareCallback, ANCHOR_LEFT, ccp(188, 1280-848));

	m_itlbRate = itlbRate;
	m_itlbInvite = itlbInvite;
	m_itlbShare = itlbShare;

	MY_ADD_SPRITE(sprRate, "rateIcon.png", ccp(108, 1280-628));
	MY_ADD_SPRITE(sprInvite, "inviteIcon.png", ccp(108, 1280-738));
	MY_ADD_SPRITE(sprShare, "shareIcon.png", ccp(108, 1280-848));

	//check
	if (DataManager::sharedDataManager()->GetIsRatedApp() == true)
	{
		m_itlbRate->setEnabled(false);
		m_itlbRate->setOpacity(100);
	}


	MY_ADD_MENU_ITEM(itExit, "exit_button.png", "exit_button_press.png", "exit_button_press.png", MoreDiamondDialog::exitCallback, pask);

	this->setKeypadEnabled(true);
    return true;
}
void SoloGameScene::checkBeforeNextQuestion( CCObject* pSender )
{
	//send to server
	CCArray* questResults = DataManager::sharedDataManager()->GetQuestResults();

	int isRight = (m_isRight == true) ? 1 : 0;
	int answerTime = CONF_INT(SOLO_TIME_FOR_QUESTION) - (int)(m_clockCounter);
	QuestionResult* result = new QuestionResult(m_curQuest->m_id, isRight, answerTime);
	questResults->addObject(result);
		
	if (questResults->count() >= QUEST_RESULTS_NUMBER - 1)
	{
		CCLOG("CLEAR--SEND--");
		//clear
		DataManager::sharedDataManager()->SetQuestResults(NULL);

		//send to server
		GameClientManager::sharedGameClientManager()->SendQuestResults(questResults);

	}
	else
	{
		//save again
		DataManager::sharedDataManager()->SetQuestResults(questResults);
	}

 	nextQuestion(NULL);
}
void SoloGameScene::refreshUserInfo()
{
	string photoPath = DataManager::sharedDataManager()->GetFbPhotoPath();
	if (photoPath.length() > 0)
	{
		MY_CREATE_SPRITE(fbAvatar, photoPath.c_str(), ccp(86, 1280-86));
		m_fbAvatar = fbAvatar;
		this->addChild(m_fbAvatar);
		m_fbAvatar->setScale((m_defaultAvatar->getContentSize().width - 7) / CONF_INT(AVATAR_SIZE));
	}

	string name = DataManager::sharedDataManager()->GetName();
	name = MY_LIMIT_STR(name, 22, "");
	m_lbName->setString(name.c_str());
}
void SoloGameScene::nextQuestion(CCObject* pSender)
{
	//UI
	m_sprGameResult->setVisible(false);
	m_menu->setEnabled(true);
	for (int i = 0; i < 4; ++i)
	{
		m_itAnswers[i]->setEnabled(true);
		m_itAnswers[i]->setVisible(true);
		m_itAnswers[i]->unselected();
	}
	
	m_curQuestionNumber++;
	DataManager::sharedDataManager()->SetSoloQuestionNumber(m_curQuestionNumber);
	m_lbNumber->setString(CCString::createWithFormat("%d", m_curQuestionNumber)->getCString());
	
	initRandomLevel(m_curQuestionNumber);

	m_curDisableChoose = 0;
	m_isUsedInfiniteTime = false;
	m_clockCounter = CONF_INT(SOLO_TIME_FOR_QUESTION);
	this->schedule(schedule_selector(SoloGameScene::scheduleClock), 0.5f);
}
Ejemplo n.º 8
0
	CONF_BOOL(skipIntro),
	CONF_BOOL(skipLegal),
	//CONF_BOOL(engineEnhancements),
	//CONF_BOOL(editor),
	CONF_BOOL(windowed),
	CONF_BOOL(antialiasing),
	CONF_BOOL(softShadows),
	CONF_BOOL(noSound),
	CONF_BOOL(featPrereqWarnings),
	CONF_BOOL(spellAlreadyKnownWarnings),
	CONF_BOOL(NPCsLevelLikePCs),
	//CONF_DOUBLE(randomEncounterExperienceFactor),
	CONF_BOOL(newFeatureTestMode),
	CONF_BOOL(pathfindingDebugMode),
	CONF_STRING(defaultModule),
	CONF_INT(windowWidth),
	CONF_INT(windowHeight),
	CONF_BOOL(firstRun),
	CONF_INT(renderWidth),
	CONF_INT(renderHeight),
	CONF_BOOL(debugMessageEnable),
	CONF_BOOL(lockCursor),
	CONF_BOOL(showExactHPforNPCs),
	CONF_STRING_LIST(additionalTioPaths, ';'),
	CONF_INT(pointBuyPoints),
	CONF_INT(maxPCs),
	CONF_BOOL(maxPCsFlexible),
	CONF_INT(maxLevel),
	CONF_BOOL(usingCo8),
	CONF_WSTRING(toeeDir),
	CONF_INT(sectorCacheSize),
bool SoloGameScene::init()
{
    if ( !CCLayerColor::initWithColor(ccc4(255, 255, 255, 255)) )
    {
        return false;
    }
	
	SoloGameScene::QUEST_RESULTS_NUMBER = CONF_INT(QUEST_RESULTS_NUMBER);

	m_curScore = DataManager::sharedDataManager()->GetSoloScore();
	m_curQuestionNumber = DataManager::sharedDataManager()->GetSoloQuestionNumber();
	m_curRightAnswer = -1;
	m_clockCounter = CONF_INT(SOLO_TIME_FOR_QUESTION);
	m_isRight = false;
	m_curDisableChoose = 4;
	m_isUsedInfiniteTime = false;

	MY_ADD_SPRITE(bg, "game_background.png", ccp(400, 640));
	
	MY_CREATE_SPRITE(defaultAvatar, "avatar.png", ccp(86, 1280-86));
	m_defaultAvatar = defaultAvatar;
	this->addChild(m_defaultAvatar);
	
	string photoPath = DataManager::sharedDataManager()->GetFbPhotoPath();
	if (photoPath.length() > 0)
	{
		MY_CREATE_SPRITE(fbAvatar, photoPath.c_str(), ccp(86, 1280-86));
		m_fbAvatar = fbAvatar;
		this->addChild(m_fbAvatar);
		m_fbAvatar->setScale((m_defaultAvatar->getContentSize().width - 7) / CONF_INT(AVATAR_SIZE));
	}
	
	string name = DataManager::sharedDataManager()->GetName();
	name = MY_LIMIT_STR(name, 22, "");
	MY_ADD_LABELTTF(lbName, name.c_str(), CONF_STR(FONT_NORMAL), 36, ccBLACK, ccp(12, 1280-195));
	m_lbName = lbName;
	m_lbName->setAnchorPoint(ANCHOR_LEFT);

	MY_ADD_SPRITE(score, "score.png", ccp(203, 1280-41));
	MY_ADD_LABELTTF(_lbScore, CCString::createWithFormat("%d", m_curScore)->getCString(), CONF_STR(FONT_NORMAL), 48, ccBLACK, ccp(240, 1280-46));
	_lbScore->setAnchorPoint(ANCHOR_LEFT);
	m_lbScore = _lbScore;

	MY_ADD_SPRITE(sprDiamond, "diamond.png", ccp(203, 1280-100));
	int diamond = DataManager::sharedDataManager()->GetDiamond();
	MY_ADD_LABELTTF(_lbDiamond, CCString::createWithFormat("%d", diamond)->getCString(), CONF_STR(FONT_NORMAL), 48, ccBLACK, ccp(240, 1280-100));
	_lbDiamond->setAnchorPoint(ANCHOR_LEFT);
	m_lbDiamond = _lbDiamond;
	
	MY_ADD_SPRITE(sprClock, "clock.png", ccp(400, 1280-200));

	MY_ADD_LABELTTF( _lbClock, CCString::createWithFormat("%d", (int)m_clockCounter)->getCString(), 
		CONF_STR(FONT_NORMAL), 64, ccBLACK, sprClock->getPosition());
	_lbClock->setAnchorPoint(ANCHOR_CENTER);
	m_lbClock = _lbClock;

	m_menu = CCMenu::create();
	m_menu->setPosition(CCPointZero);
	this->addChild(m_menu);

	MY_ADD_MENU_ITEM(itBack, "back.png", "backDown.png", "back.png", SoloGameScene::menuCallback, ccp(60, 60));
	m_itBack = itBack;

	//HELP

	MY_CREATE_MENU_ITEM(itHelp1, "help1.png", "help1Down.png", "help1Down.png", SoloGameScene::itHelp1Callback, ccp(740, 1280-60));
	m_menu->addChild(itHelp1);
	MY_CREATE_MENU_ITEM(itHelp2, "help2.png", "help2Down.png", "help2Down.png", SoloGameScene::itHelp2Callback, ccp(640, 1280-60));
	m_menu->addChild(itHelp2);
	MY_CREATE_MENU_ITEM(itHelp3, "help3.png", "help3Down.png", "help3Down.png", SoloGameScene::itHelp3Callback, ccp(540, 1280-60));
	m_menu->addChild(itHelp3);

	initQuestionItems();

	//RESULT //////////////////////////////////////////////////////////////////////////

	MY_ADD_SPRITE(_sprGameResult, "game_result.png", ccp(400, 640));
	m_sprGameResult = _sprGameResult;
	m_sprGameResult->setVisible(false);

	//+10 (-5)
	CCLabelTTF* changeScore = CCLabelTTF::create("", CONF_STR(FONT_NORMAL), 120);
	changeScore->setFontFillColor(ccBLACK);
	changeScore->setColor(ccBLACK);
	changeScore->setAnchorPoint(ANCHOR_RIGHT);
	changeScore->setPosition(ccp(380, 1280-880));
	changeScore->setTag(1);
	m_sprGameResult->addChild(changeScore);

	//Right, wrong
	CCLabelTTF* rightWrong = CCLabelTTF::create("", CONF_STR(FONT_NORMAL), 72);
	rightWrong->setFontFillColor(ccBLACK);
	rightWrong->setColor(ccBLACK);
	rightWrong->setAnchorPoint(ANCHOR_RIGHT);
	rightWrong->setPosition(ccp(380, 1280-722));
	rightWrong->setTag(2);
	m_sprGameResult->addChild(rightWrong);
	
	MY_CREATE_MENU_ITEM(itNext, "next.png", "nextDown.png", "nextDown.png", SoloGameScene::checkBeforeNextQuestion, ccp(400, 1280-879));
	itNext->setAnchorPoint(ANCHOR_LEFT);
	CCMenu* nextMenu = CCMenu::create(itNext, NULL);
	nextMenu->setPosition(CCPointZero);
	m_sprGameResult->addChild(nextMenu);

	nextQuestion(NULL);
	
	PLAY_BACKGROUND_MUSIC;
    return true;
}
Ejemplo n.º 10
0
				pwm_setFrequency(&cutoff_ctx[i], CONFIG_AFSK_DAC_SAMPLERATE / 8); \
			} \
		} while (0)
	#endif
#else
	#define CUTOFF_ENABLE(ch, en) do { (void)ch; (void)en; } while (0)
	#define CUTOFF_INIT() do {  } while (0)
	#define testmode() false
#endif

static void cutoff_reload(void);

static int pwm_duty[N_CUTOFF];

DECLARE_CONF(cutoff, cutoff_reload,
	CONF_INT(mission_timeout, 10, 86400, 8400), //seconds
	CONF_INT(delta_altitude, 10, 5000, 500), //meters
	CONF_INT(altitude_timeout, 0, 300, 30), //seconds
	CONF_FLOAT(start_latitude,   -90,  +90, 43.606414), //decimal degrees
	CONF_FLOAT(start_longitude, -180, +180, 11.311832), //decimal degrees
	CONF_INT(dist_max_meters, 1000, 1000000, 80000), //meters
	CONF_INT(dist_timeout, 0, 1800, 300), // seconds
	CONF_INT(altmax_meters, 20, 500000, 50000), //meters
	CONF_INT(altmax_timeout, 0, 1800, 300), //seconds
	CONF_INT_NODECLARE(pwm_duty1, pwm_duty[0], 0, 0xffff, 0x8000), // Number from 0 to 0xffff
	CONF_INT_NODECLARE(pwm_duty2, pwm_duty[1], 0, 0xffff, 0x8000) // Number from 0 to 0xffff
);

static void cutoff_reload(void)
{
	LOG_INFO("Setting cutoff configuration\n");
Ejemplo n.º 11
0
		if (++acc_idx >= countof(acc_buf))
		{
			acc_idx = 0;
			logging_acc(acc_buf, sizeof(acc_buf));
		}

		/* Wait for the next sample adjusting for time spent above */
		delay += (1000 / ACC_SAMPLE_RATE);
		timer_delay(delay - ticks_to_ms(timer_clock() - start));
	}
}

static void measures_reload(void);

DECLARE_CONF(measures, measures_reload,
	CONF_INT(curr_limit, 10, 5000, 500) //mA
);

static void power_enable(bool enable)
{
	if (enable)
		logging_setPendingPowerFlag(true);

	aux_out(enable);

	if (enable)
	{
		timer_delay(1000);
		/* ASSERT2(0, "Simulating power failure\n"); */
		logging_setPendingPowerFlag(false);
	}