コード例 #1
0
ファイル: load.c プロジェクト: stephenjsweeney/tbftss
static void loadChallenges(cJSON *missionsJSON)
{
	Mission *mission;
	Challenge *challenge;
	cJSON *missionJSON, *challengeJSON;
	int type, value;

	if (missionsJSON)
	{
		for (missionJSON = missionsJSON->child ; missionJSON != NULL ; missionJSON = missionJSON->next)
		{
			mission = getMission(cJSON_GetObjectItem(missionJSON, "filename")->valuestring);

			for (challengeJSON = cJSON_GetObjectItem(missionJSON, "challenges")->child ; challengeJSON != NULL ; challengeJSON = challengeJSON->next)
			{
				type = lookup(cJSON_GetObjectItem(challengeJSON, "type")->valuestring);
				value = cJSON_GetObjectItem(challengeJSON, "value")->valueint;

				challenge = getChallenge(mission, type, value);

				if (challenge)
				{
					challenge->passed = cJSON_GetObjectItem(challengeJSON, "passed")->valueint;
				}
			}
		}
	}
}
コード例 #2
0
ファイル: MissionMgr.cpp プロジェクト: carribus/firecell
bool MissionMgr::completeMission(FCULONG mission_id)
{
	_Mission* pMission = getMission(mission_id);

	if ( !pMission )
		return false;

	pMission->bCompleted = true;

	return true;
}
コード例 #3
0
ファイル: load.c プロジェクト: LibreGames/tbftss
static void loadMissions(cJSON *missionsJSON)
{
	Mission *mission;
	cJSON *missionJSON;

	for (missionJSON = missionsJSON->child ; missionJSON != NULL ; missionJSON = missionJSON->next)
	{
		mission = getMission(cJSON_GetObjectItem(missionJSON, "filename")->valuestring);
		mission->completed = cJSON_GetObjectItem(missionJSON, "completed")->valueint;
	}
}
コード例 #4
0
ファイル: MissionMgr.cpp プロジェクト: carribus/firecell
FCSHORT MissionMgr::getMissionFailureCount(FCULONG mission_id)
{
  FCSHORT ret = 0;
  _Mission* pMission = getMission(mission_id);

  if ( pMission )
  {
    ret = pMission->failureCount;
  }

  return ret;
}
コード例 #5
0
ファイル: MissionMgr.cpp プロジェクト: carribus/firecell
FCSHORT MissionMgr::getMissionSuccessCount(FCULONG mission_id)
{
  FCSHORT ret = 0;
  _Mission* pMission = getMission(mission_id);

  if ( pMission )
  {
    ret = pMission->successCount;
  }

  return ret;
}
コード例 #6
0
ファイル: load.c プロジェクト: nnesse/tbftss
static void loadMissions(cJSON *missionsCJSON)
{
	Mission *mission;
	cJSON *missionCJSON;
	
	for (missionCJSON = missionsCJSON->child ; missionCJSON != NULL ; missionCJSON = missionCJSON->next)
	{
		mission = getMission(cJSON_GetObjectItem(missionCJSON, "filename")->valuestring);
		
		mission->completed = cJSON_GetObjectItem(missionCJSON, "completed")->valueint;
		
		if (cJSON_GetObjectItem(missionCJSON, "challenges"))
		{
			loadChallenges(mission, cJSON_GetObjectItem(missionCJSON, "challenges"));
		}
	}
}
コード例 #7
0
ファイル: MissionMgr.cpp プロジェクト: carribus/firecell
bool MissionMgr::addMission(FCULONG mission_id, FCSHORT successCount, FCSHORT failureCount, bool bCompleted, FCULONG parent_mission_id)
{
  _Mission m;

  m.mission_id = mission_id;
  m.successCount = successCount;
  m.failureCount = failureCount;
  m.bCompleted = bCompleted;
  if ( !parent_mission_id )
  {
    // if this is mission that has no parent, then we add it to the root missions vector
    m_missions.push_back(m);
  }
  else
  {
    // if this mission is childed, lets find the parent
    _Mission* pParent = getMission(parent_mission_id);

    if ( pParent )
      pParent->children.push_back(m);
  }

  return true;
}