mirror of
https://github.com/1dot13/source.git
synced 2026-09-02 14:36:06 +02:00
Move text to _EnglishText
This commit is contained in:
+87
-48
@@ -293,6 +293,44 @@ enum RebelCommandText // keep this synced with szRebelCommandText in the text fi
|
|||||||
RCT_NEXT_ARROW,
|
RCT_NEXT_ARROW,
|
||||||
RCT_CONFIRM_CHANGE_ADMIN_ACTION_PROMPT,
|
RCT_CONFIRM_CHANGE_ADMIN_ACTION_PROMPT,
|
||||||
RCT_NEW_MISSIONS_AVAILABLE_TIME,
|
RCT_NEW_MISSIONS_AVAILABLE_TIME,
|
||||||
|
RCT_MISSION_PREP_IN_PROGRESS,
|
||||||
|
RCT_MISSION_DURATION_DAYS,
|
||||||
|
RCT_MISSION_SUCCESS_CHANCE,
|
||||||
|
RCT_MISSION_AGENT_REDACTED,
|
||||||
|
RCT_MISSION_AGENT_NAME,
|
||||||
|
RCT_MISSION_AGENT_LOCATION,
|
||||||
|
RCT_MISSION_AGENT_ASSIGNMENT,
|
||||||
|
RCT_MISSION_AGENT_CONTRACT_DAYS,
|
||||||
|
RCT_MISSION_AGENT_CONTRACT_HOURS,
|
||||||
|
RCT_MISSION_AGENT_CONTRACT_NONE,
|
||||||
|
RCT_MISSION_AGENT_BONUS,
|
||||||
|
RCT_MISSION_BONUS_SUCCESS_CHANCE,
|
||||||
|
RCT_MISSION_BONUS_DEPLOY_RANGE,
|
||||||
|
RCT_MISSION_BONUS_DECISION_TIME,
|
||||||
|
RCT_MISSION_BONUS_UNALERTED_VISION_PENALTY,
|
||||||
|
RCT_MISSION_BONUS_INFANTRY_GEAR_QUALITY,
|
||||||
|
RCT_MISSION_BONUS_MECHANICAL_STAT_LOSS,
|
||||||
|
RCT_MISSION_BONUS_MAX_TRAINERS,
|
||||||
|
RCT_MISSION_BONUS_DURATION,
|
||||||
|
RCT_MISSION_CANT_START_LOW_LOYALTY,
|
||||||
|
RCT_MISSION_CANT_START_AGENT_UNAVAILABLE,
|
||||||
|
RCT_MISSION_CANT_START_CONTRACT_EXPIRING,
|
||||||
|
RCT_MISSION_CANT_START_BATTLE_IN_PROGRESS,
|
||||||
|
RCT_MISSION_START_BUTTON,
|
||||||
|
RCT_MISSION_VIEW_ACTIVE,
|
||||||
|
RCT_MISSION_VIEW_LIST,
|
||||||
|
RCT_MISSION_NEXT_AVAILABILITY,
|
||||||
|
RCT_MISSION_ACTIVE_MISSIONS,
|
||||||
|
RCT_MISSION_LIST_PREPARING,
|
||||||
|
RCT_MISSION_LIST_ACTIVE,
|
||||||
|
RCT_MISSION_POPUP_PART1,
|
||||||
|
RCT_MISSION_POPUP_PART2_GENERIC,
|
||||||
|
RCT_MISSION_POPUP_PART2_MALE,
|
||||||
|
RCT_MISSION_POPUP_PART2_FEMALE,
|
||||||
|
RCT_MISSION_SUCCESS,
|
||||||
|
RCT_MISSION_FAILURE,
|
||||||
|
RCT_MISSION_EXPIRED,
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
enum RebelCommandHelpText // keep this synced with szRebelCommandHelpText in the text files
|
enum RebelCommandHelpText // keep this synced with szRebelCommandHelpText in the text files
|
||||||
@@ -2121,8 +2159,7 @@ BOOLEAN SetupMissionAgentBox(UINT16 x, UINT16 y, INT8 index)
|
|||||||
if (rebelCommandSaveInfo.availableMissions[index] == RCAM_NONE)
|
if (rebelCommandSaveInfo.availableMissions[index] == RCAM_NONE)
|
||||||
{
|
{
|
||||||
// we shouldn't even reach this point, but leaving this here for safety
|
// we shouldn't even reach this point, but leaving this here for safety
|
||||||
swprintf(sText, L"Mission preparations in progress.");
|
DrawTextToScreen(szRebelCommandText[RCT_MISSION_PREP_IN_PROGRESS], x, y+155, 230, FONT14ARIAL, FONT_MCOLOR_BLACK, FONT_MCOLOR_BLACK, FALSE, CENTER_JUSTIFIED);
|
||||||
DrawTextToScreen(sText, x, y+155, 230, FONT14ARIAL, FONT_MCOLOR_BLACK, FONT_MCOLOR_BLACK, FALSE, CENTER_JUSTIFIED);
|
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -2159,7 +2196,7 @@ BOOLEAN SetupMissionAgentBox(UINT16 x, UINT16 y, INT8 index)
|
|||||||
}
|
}
|
||||||
// convert from hours
|
// convert from hours
|
||||||
missionDurationBase /= 24;
|
missionDurationBase /= 24;
|
||||||
swprintf(sText, L"Mission duration: %d days", missionDurationBase);
|
swprintf(sText, szRebelCommandText[RCT_MISSION_DURATION_DAYS], missionDurationBase);
|
||||||
DrawTextToScreen(sText, x+5, y+21, 0, FONT10ARIALBOLD, FONT_MCOLOR_BLACK, FONT_MCOLOR_BLACK, FALSE, 0);
|
DrawTextToScreen(sText, x+5, y+21, 0, FONT10ARIALBOLD, FONT_MCOLOR_BLACK, FONT_MCOLOR_BLACK, FALSE, 0);
|
||||||
|
|
||||||
// draw mission base success chance
|
// draw mission base success chance
|
||||||
@@ -2177,7 +2214,7 @@ BOOLEAN SetupMissionAgentBox(UINT16 x, UINT16 y, INT8 index)
|
|||||||
|
|
||||||
default: break;
|
default: break;
|
||||||
}
|
}
|
||||||
swprintf(sText, L"Chance of success: %d%s", missionSuccessChanceBase, L"%%");
|
swprintf(sText, szRebelCommandText[RCT_MISSION_SUCCESS_CHANCE], missionSuccessChanceBase, L"%%");
|
||||||
DrawTextToScreen(sText, x+5, y+33, 0, FONT10ARIALBOLD, FONT_MCOLOR_BLACK, FONT_MCOLOR_BLACK, FALSE, 0);
|
DrawTextToScreen(sText, x+5, y+33, 0, FONT10ARIALBOLD, FONT_MCOLOR_BLACK, FONT_MCOLOR_BLACK, FALSE, 0);
|
||||||
|
|
||||||
// draw mission description
|
// draw mission description
|
||||||
@@ -2207,16 +2244,19 @@ BOOLEAN SetupMissionAgentBox(UINT16 x, UINT16 y, INT8 index)
|
|||||||
SetFontShadow(FONT_GRAY1);
|
SetFontShadow(FONT_GRAY1);
|
||||||
|
|
||||||
// draw name
|
// draw name
|
||||||
DrawTextToScreen(L"Name: [REDACTED]", x+55, y+150+10, 0, FONT10ARIAL, FONT_MCOLOR_BLACK, FONT_MCOLOR_BLACK, FALSE, 0);
|
swprintf(sText, szRebelCommandText[RCT_MISSION_AGENT_NAME], szRebelCommandText[RCT_MISSION_AGENT_REDACTED]);
|
||||||
|
DrawTextToScreen(sText, x+55, y+150+10, 0, FONT10ARIAL, FONT_MCOLOR_BLACK, FONT_MCOLOR_BLACK, FALSE, 0);
|
||||||
|
|
||||||
// draw location
|
// draw location
|
||||||
DrawTextToScreen(L"Location: [REDACTED]", x+55, y+150+22, 0, FONT10ARIAL, FONT_MCOLOR_BLACK, FONT_MCOLOR_BLACK, FALSE, 0);
|
swprintf(sText, szRebelCommandText[RCT_MISSION_AGENT_LOCATION], szRebelCommandText[RCT_MISSION_AGENT_REDACTED]);
|
||||||
|
DrawTextToScreen(sText, x+55, y+150+22, 0, FONT10ARIAL, FONT_MCOLOR_BLACK, FONT_MCOLOR_BLACK, FALSE, 0);
|
||||||
|
|
||||||
// draw assignment
|
// draw assignment
|
||||||
DrawTextToScreen(L"Assignment: None", x+55, y+150+34, 0, FONT10ARIAL, FONT_MCOLOR_BLACK, FONT_MCOLOR_BLACK, FALSE, 0);
|
swprintf(sText, szRebelCommandText[RCT_MISSION_AGENT_ASSIGNMENT], szRebelCommandText[RCT_NONE]);
|
||||||
|
DrawTextToScreen(sText, x+55, y+150+34, 0, FONT10ARIAL, FONT_MCOLOR_BLACK, FONT_MCOLOR_BLACK, FALSE, 0);
|
||||||
|
|
||||||
// draw contract
|
// draw contract
|
||||||
DrawTextToScreen(L"Contract: ---", x+55, y+150+46, 0, FONT10ARIAL, FONT_MCOLOR_BLACK, FONT_MCOLOR_BLACK, FALSE, 0);
|
DrawTextToScreen(szRebelCommandText[RCT_MISSION_AGENT_CONTRACT_NONE], x+55, y+150+46, 0, FONT10ARIAL, FONT_MCOLOR_BLACK, FONT_MCOLOR_BLACK, FALSE, 0);
|
||||||
}
|
}
|
||||||
else // one of the player's mercs
|
else // one of the player's mercs
|
||||||
{
|
{
|
||||||
@@ -2229,17 +2269,17 @@ BOOLEAN SetupMissionAgentBox(UINT16 x, UINT16 y, INT8 index)
|
|||||||
BltVideoObject(FRAME_BUFFER, hvObj, 0, x+5, y+150+10, VO_BLT_SRCTRANSPARENCY, NULL);
|
BltVideoObject(FRAME_BUFFER, hvObj, 0, x+5, y+150+10, VO_BLT_SRCTRANSPARENCY, NULL);
|
||||||
|
|
||||||
// draw name
|
// draw name
|
||||||
swprintf(sText, L"Name: %s", gMercProfiles[mercs[agentIndex[index]]->ubProfile].zName);
|
swprintf(sText, szRebelCommandText[RCT_MISSION_AGENT_NAME], gMercProfiles[mercs[agentIndex[index]]->ubProfile].zName);
|
||||||
DrawTextToScreen(sText, x+55, y+150+10, 0, FONT10ARIAL, FONT_MCOLOR_BLACK, FONT_MCOLOR_BLACK, FALSE, 0);
|
DrawTextToScreen(sText, x+55, y+150+10, 0, FONT10ARIAL, FONT_MCOLOR_BLACK, FONT_MCOLOR_BLACK, FALSE, 0);
|
||||||
|
|
||||||
// draw location
|
// draw location
|
||||||
CHAR16 locationStr[128];
|
CHAR16 locationStr[128];
|
||||||
GetSectorIDString(mercs[agentIndex[index]]->sSectorX, mercs[agentIndex[index]]->sSectorY, 0, locationStr, TRUE);
|
GetSectorIDString(mercs[agentIndex[index]]->sSectorX, mercs[agentIndex[index]]->sSectorY, 0, locationStr, TRUE);
|
||||||
swprintf(sText, L"Location: %s", locationStr);
|
swprintf(sText, szRebelCommandText[RCT_MISSION_AGENT_LOCATION], locationStr);
|
||||||
DrawTextToScreen(sText, x+55, y+150+22, 0, FONT10ARIAL, FONT_MCOLOR_BLACK, FONT_MCOLOR_BLACK, FALSE, 0);
|
DrawTextToScreen(sText, x+55, y+150+22, 0, FONT10ARIAL, FONT_MCOLOR_BLACK, FONT_MCOLOR_BLACK, FALSE, 0);
|
||||||
|
|
||||||
// draw assignment
|
// draw assignment
|
||||||
swprintf( sText, L"Assignment: %s", pAssignmentStrings[mercs[agentIndex[index]]->bAssignment]);
|
swprintf( sText, szRebelCommandText[RCT_MISSION_AGENT_ASSIGNMENT], pAssignmentStrings[mercs[agentIndex[index]]->bAssignment]);
|
||||||
DrawTextToScreen(sText, x+55, y+150+34, 0, FONT10ARIAL, FONT_MCOLOR_BLACK, FONT_MCOLOR_BLACK, FALSE, 0);
|
DrawTextToScreen(sText, x+55, y+150+34, 0, FONT10ARIAL, FONT_MCOLOR_BLACK, FONT_MCOLOR_BLACK, FALSE, 0);
|
||||||
|
|
||||||
// draw contract
|
// draw contract
|
||||||
@@ -2253,16 +2293,16 @@ BOOLEAN SetupMissionAgentBox(UINT16 x, UINT16 y, INT8 index)
|
|||||||
|
|
||||||
if (remaining >= 24 * 60)
|
if (remaining >= 24 * 60)
|
||||||
{
|
{
|
||||||
swprintf(sText, L"Contract: %d days", remaining / (24 * 60));
|
swprintf(sText, szRebelCommandText[RCT_MISSION_AGENT_CONTRACT_DAYS], remaining / (24 * 60));
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
swprintf(sText, L"Contract: %d hours", remaining / 60);
|
swprintf(sText, szRebelCommandText[RCT_MISSION_AGENT_CONTRACT_HOURS], remaining / 60);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
swprintf(sText, L"Contract: ---");
|
swprintf(sText, szRebelCommandText[RCT_MISSION_AGENT_CONTRACT_NONE]);
|
||||||
}
|
}
|
||||||
DrawTextToScreen(sText, x+55, y+150+46, 0, FONT10ARIAL, FONT_MCOLOR_BLACK, FONT_MCOLOR_BLACK, FALSE, 0);
|
DrawTextToScreen(sText, x+55, y+150+46, 0, FONT10ARIAL, FONT_MCOLOR_BLACK, FONT_MCOLOR_BLACK, FALSE, 0);
|
||||||
}
|
}
|
||||||
@@ -2285,7 +2325,7 @@ BOOLEAN SetupMissionAgentBox(UINT16 x, UINT16 y, INT8 index)
|
|||||||
btnIds.push_back(btnId);
|
btnIds.push_back(btnId);
|
||||||
|
|
||||||
// draw agent bonus header text
|
// draw agent bonus header text
|
||||||
swprintf(sText, L"Agent bonus:");
|
swprintf(sText, szRebelCommandText[RCT_MISSION_AGENT_BONUS]);
|
||||||
DrawTextToScreen(sText, x+5, y+150+54+20+2, 0, FONT10ARIAL, FONT_MCOLOR_BLACK, FONT_MCOLOR_BLACK, FALSE, 0);
|
DrawTextToScreen(sText, x+5, y+150+54+20+2, 0, FONT10ARIAL, FONT_MCOLOR_BLACK, FONT_MCOLOR_BLACK, FALSE, 0);
|
||||||
|
|
||||||
// draw agent bonus text
|
// draw agent bonus text
|
||||||
@@ -2298,7 +2338,7 @@ BOOLEAN SetupMissionAgentBox(UINT16 x, UINT16 y, INT8 index)
|
|||||||
const INT8 successBonus_expLevel = GetMissionSuccessChanceBonus(&merc);
|
const INT8 successBonus_expLevel = GetMissionSuccessChanceBonus(&merc);
|
||||||
CHAR16 successText[100];
|
CHAR16 successText[100];
|
||||||
// stupid string hack to get the percent sign to display correctly
|
// stupid string hack to get the percent sign to display correctly
|
||||||
swprintf(successText, L"Chance of success +%d%s (%s)", successBonus_expLevel, L"%s", pShortAttributeStrings[5]); // "Lvl"
|
swprintf(successText, szRebelCommandText[RCT_MISSION_BONUS_SUCCESS_CHANCE], successBonus_expLevel, L"%s", pShortAttributeStrings[5]); // "Lvl"
|
||||||
agentBonusText.push_back(successText);
|
agentBonusText.push_back(successText);
|
||||||
|
|
||||||
const STR16* locSkillText = gGameOptions.fNewTraitSystem ? gzMercSkillTextNew : gzMercSkillText;
|
const STR16* locSkillText = gGameOptions.fNewTraitSystem ? gzMercSkillTextNew : gzMercSkillText;
|
||||||
@@ -2314,7 +2354,7 @@ BOOLEAN SetupMissionAgentBox(UINT16 x, UINT16 y, INT8 index)
|
|||||||
{
|
{
|
||||||
intModifier = max(intModifier, gRebelCommandSettings.iDeepDeploymentRangeEW);
|
intModifier = max(intModifier, gRebelCommandSettings.iDeepDeploymentRangeEW);
|
||||||
CHAR16 rangeText[100];
|
CHAR16 rangeText[100];
|
||||||
swprintf(rangeText, L"Deployment range +%d (%s)", intModifier, locSkillText[intModifierSkill]);
|
swprintf(rangeText, szRebelCommandText[RCT_MISSION_BONUS_DEPLOY_RANGE], intModifier, locSkillText[intModifierSkill]);
|
||||||
agentBonusText.push_back(rangeText);
|
agentBonusText.push_back(rangeText);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@@ -2337,7 +2377,7 @@ BOOLEAN SetupMissionAgentBox(UINT16 x, UINT16 y, INT8 index)
|
|||||||
floatModifier -= 1.f;
|
floatModifier -= 1.f;
|
||||||
floatModifier *= 100.f;
|
floatModifier *= 100.f;
|
||||||
CHAR16 rangeText[100];
|
CHAR16 rangeText[100];
|
||||||
swprintf(rangeText, L"Time +%2.0f%s (%s)", floatModifier, L"%s", locSkillText[floatModifierSkill]);
|
swprintf(rangeText, szRebelCommandText[RCT_MISSION_BONUS_DECISION_TIME], floatModifier, L"%s", locSkillText[floatModifierSkill]);
|
||||||
agentBonusText.push_back(rangeText);
|
agentBonusText.push_back(rangeText);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@@ -2347,7 +2387,7 @@ BOOLEAN SetupMissionAgentBox(UINT16 x, UINT16 y, INT8 index)
|
|||||||
floatModifier = max(floatModifier, gRebelCommandSettings.fReduceUnlaertedEnemyVisionModifier);
|
floatModifier = max(floatModifier, gRebelCommandSettings.fReduceUnlaertedEnemyVisionModifier);
|
||||||
floatModifier *= 100.f;
|
floatModifier *= 100.f;
|
||||||
CHAR16 text[100];
|
CHAR16 text[100];
|
||||||
swprintf(text, L"Vision -%2.0f%s (%s)", floatModifier, L"%s", locSkillText[floatModifierSkill]);
|
swprintf(text, szRebelCommandText[RCT_MISSION_BONUS_UNALERTED_VISION_PENALTY], floatModifier, L"%s", locSkillText[floatModifierSkill]);
|
||||||
agentBonusText.push_back(text);
|
agentBonusText.push_back(text);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@@ -2356,7 +2396,7 @@ BOOLEAN SetupMissionAgentBox(UINT16 x, UINT16 y, INT8 index)
|
|||||||
{
|
{
|
||||||
intModifier = max(intModifier, gRebelCommandSettings.iSabotageInfantryEquipmentModifier);
|
intModifier = max(intModifier, gRebelCommandSettings.iSabotageInfantryEquipmentModifier);
|
||||||
CHAR16 text[100];
|
CHAR16 text[100];
|
||||||
swprintf(text, L"Gear quality -%d (%s)", intModifier, locSkillText[intModifierSkill]);
|
swprintf(text, szRebelCommandText[RCT_MISSION_BONUS_INFANTRY_GEAR_QUALITY], intModifier, locSkillText[intModifierSkill]);
|
||||||
agentBonusText.push_back(text);
|
agentBonusText.push_back(text);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@@ -2365,7 +2405,7 @@ BOOLEAN SetupMissionAgentBox(UINT16 x, UINT16 y, INT8 index)
|
|||||||
{
|
{
|
||||||
intModifier = max(intModifier, gRebelCommandSettings.iSabotageMechanicalUnitsStatLoss);
|
intModifier = max(intModifier, gRebelCommandSettings.iSabotageMechanicalUnitsStatLoss);
|
||||||
CHAR16 text[100];
|
CHAR16 text[100];
|
||||||
swprintf(text, L"Overall stats -%d (%s)", intModifier, locSkillText[intModifierSkill]);
|
swprintf(text, szRebelCommandText[RCT_MISSION_BONUS_MECHANICAL_STAT_LOSS], intModifier, locSkillText[intModifierSkill]);
|
||||||
agentBonusText.push_back(text);
|
agentBonusText.push_back(text);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@@ -2374,7 +2414,7 @@ BOOLEAN SetupMissionAgentBox(UINT16 x, UINT16 y, INT8 index)
|
|||||||
{
|
{
|
||||||
intModifier = max(intModifier, 1);
|
intModifier = max(intModifier, 1);
|
||||||
CHAR16 text[100];
|
CHAR16 text[100];
|
||||||
swprintf(text, L"Max trainers: %d (%s)", intModifier, locSkillText[intModifierSkill]);
|
swprintf(text, szRebelCommandText[RCT_MISSION_BONUS_MAX_TRAINERS], intModifier, locSkillText[intModifierSkill]);
|
||||||
agentBonusText.push_back(text);
|
agentBonusText.push_back(text);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@@ -2385,14 +2425,14 @@ BOOLEAN SetupMissionAgentBox(UINT16 x, UINT16 y, INT8 index)
|
|||||||
if (durationBonus > 0)
|
if (durationBonus > 0)
|
||||||
{
|
{
|
||||||
CHAR16 durationText[100];
|
CHAR16 durationText[100];
|
||||||
swprintf(durationText, L"Duration +%d hours (%s)", durationBonus, locSkillText[durationBonusSkill]);
|
swprintf(durationText, szRebelCommandText[RCT_MISSION_BONUS_DURATION], durationBonus, locSkillText[durationBonusSkill]);
|
||||||
agentBonusText.push_back(durationText);
|
agentBonusText.push_back(durationText);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (agentBonusText.size() == 0)
|
if (agentBonusText.size() == 0)
|
||||||
{
|
{
|
||||||
DrawTextToScreen(L"None", x+10, y+150+54+20+2+11, 0, FONT10ARIAL, FONT_MCOLOR_RED, FONT_MCOLOR_BLACK, FALSE, 0);
|
DrawTextToScreen(szRebelCommandText[RCT_NONE], x+10, y+150+54+20+2+11, 0, FONT10ARIAL, FONT_MCOLOR_RED, FONT_MCOLOR_BLACK, FALSE, 0);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@@ -2417,17 +2457,17 @@ BOOLEAN SetupMissionAgentBox(UINT16 x, UINT16 y, INT8 index)
|
|||||||
if (townId < FIRST_TOWN || townId >= NUM_TOWNS || townLoyalty < gRebelCommandSettings.iMinLoyaltyForMission)
|
if (townId < FIRST_TOWN || townId >= NUM_TOWNS || townLoyalty < gRebelCommandSettings.iMinLoyaltyForMission)
|
||||||
{
|
{
|
||||||
canStartMission = FALSE;
|
canStartMission = FALSE;
|
||||||
swprintf(sText, L"Agent not in loyal town");
|
swprintf(sText, szRebelCommandText[RCT_MISSION_CANT_START_LOW_LOYALTY]);
|
||||||
}
|
}
|
||||||
else if (mercs[agentIndex[index]]->bAssignment == ASSIGNMENT_POW || mercs[agentIndex[index]]->bAssignment == ASSIGNMENT_MINIEVENT || mercs[agentIndex[index]]->bAssignment == ASSIGNMENT_REBELCOMMAND)
|
else if (mercs[agentIndex[index]]->bAssignment == ASSIGNMENT_POW || mercs[agentIndex[index]]->bAssignment == ASSIGNMENT_MINIEVENT || mercs[agentIndex[index]]->bAssignment == ASSIGNMENT_REBELCOMMAND)
|
||||||
{
|
{
|
||||||
canStartMission = FALSE;
|
canStartMission = FALSE;
|
||||||
swprintf(sText, L"Agent unavailable");
|
swprintf(sText, szRebelCommandText[RCT_MISSION_CANT_START_AGENT_UNAVAILABLE]);
|
||||||
}
|
}
|
||||||
else if (mercs[agentIndex[index]]->ubWhatKindOfMercAmI == MERC_TYPE__AIM_MERC && remaining < 24 * 60)
|
else if (mercs[agentIndex[index]]->ubWhatKindOfMercAmI == MERC_TYPE__AIM_MERC && remaining < 24 * 60)
|
||||||
{
|
{
|
||||||
canStartMission = FALSE;
|
canStartMission = FALSE;
|
||||||
swprintf(sText, L"Agent contract expiring");
|
swprintf(sText, szRebelCommandText[RCT_MISSION_CANT_START_CONTRACT_EXPIRING]);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!canStartMission)
|
if (!canStartMission)
|
||||||
@@ -2438,13 +2478,13 @@ BOOLEAN SetupMissionAgentBox(UINT16 x, UINT16 y, INT8 index)
|
|||||||
else if ((gTacticalStatus.uiFlags & INCOMBAT) || gTacticalStatus.fEnemyInSector)
|
else if ((gTacticalStatus.uiFlags & INCOMBAT) || gTacticalStatus.fEnemyInSector)
|
||||||
{
|
{
|
||||||
canStartMission = FALSE;
|
canStartMission = FALSE;
|
||||||
swprintf(sText, L"Battle in progress");
|
swprintf(sText, szRebelCommandText[RCT_MISSION_CANT_START_BATTLE_IN_PROGRESS]);
|
||||||
DrawTextToScreen(sText, x, y+295, 231, FONT10ARIAL, FONT_RED, FONT_MCOLOR_BLACK, FALSE, CENTER_JUSTIFIED);
|
DrawTextToScreen(sText, x, y+295, 231, FONT10ARIAL, FONT_RED, FONT_MCOLOR_BLACK, FALSE, CENTER_JUSTIFIED);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (canStartMission)
|
if (canStartMission)
|
||||||
{
|
{
|
||||||
swprintf(sText, L"Start Mission (%d supplies)", GetMissionCost());
|
swprintf(sText, szRebelCommandText[RCT_MISSION_START_BUTTON], GetMissionCost());
|
||||||
btnId = CreateTextButton(sText, FONT10ARIAL, FONT_MCOLOR_LTYELLOW, FONT_BLACK, BUTTON_USE_DEFAULT, x, y+290, 231, 20, BUTTON_TOGGLE, MSYS_PRIORITY_HIGH, DEFAULT_MOVE_CALLBACK, [](GUI_BUTTON* btn, INT32 reason)
|
btnId = CreateTextButton(sText, FONT10ARIAL, FONT_MCOLOR_LTYELLOW, FONT_BLACK, BUTTON_USE_DEFAULT, x, y+290, 231, 20, BUTTON_TOGGLE, MSYS_PRIORITY_HIGH, DEFAULT_MOVE_CALLBACK, [](GUI_BUTTON* btn, INT32 reason)
|
||||||
{
|
{
|
||||||
const INT8 index = MSYS_GetBtnUserData(btn, 0);
|
const INT8 index = MSYS_GetBtnUserData(btn, 0);
|
||||||
@@ -2471,11 +2511,11 @@ void RenderMissionOverview()
|
|||||||
switch (missionOverviewSubview)
|
switch (missionOverviewSubview)
|
||||||
{
|
{
|
||||||
case MOS_MISSION_LIST:
|
case MOS_MISSION_LIST:
|
||||||
swprintf(sText, L"View active mission effects");
|
swprintf(sText, szRebelCommandText[RCT_MISSION_VIEW_ACTIVE]);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case MOS_ACTIVE_MISSION_EFFECTS:
|
case MOS_ACTIVE_MISSION_EFFECTS:
|
||||||
swprintf(sText, L"View available mission list");
|
swprintf(sText, szRebelCommandText[RCT_MISSION_VIEW_LIST]);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
btnId = CreateTextButton(sText, FONT10ARIAL, FONT_MCOLOR_LTYELLOW, FONT_BLACK, BUTTON_USE_DEFAULT, WEBSITE_LEFT + 15, WEBSITE_TOP + 40, 470, 20, BUTTON_TOGGLE, MSYS_PRIORITY_HIGH, DEFAULT_MOVE_CALLBACK, [](GUI_BUTTON* btn, INT32 reason)
|
btnId = CreateTextButton(sText, FONT10ARIAL, FONT_MCOLOR_LTYELLOW, FONT_BLACK, BUTTON_USE_DEFAULT, WEBSITE_LEFT + 15, WEBSITE_TOP + 40, 470, 20, BUTTON_TOGGLE, MSYS_PRIORITY_HIGH, DEFAULT_MOVE_CALLBACK, [](GUI_BUTTON* btn, INT32 reason)
|
||||||
@@ -2507,9 +2547,8 @@ void RenderMissionOverview()
|
|||||||
const INT8 interval = gRebelCommandSettings.iMissionRefreshTimeDays;
|
const INT8 interval = gRebelCommandSettings.iMissionRefreshTimeDays;
|
||||||
nextMissionAvailableDay += (interval - (nextMissionAvailableDay % interval));
|
nextMissionAvailableDay += (interval - (nextMissionAvailableDay % interval));
|
||||||
|
|
||||||
swprintf(sText, L"Mission preparations in progress.");
|
DrawTextToScreen(szRebelCommandText[RCT_MISSION_PREP_IN_PROGRESS], WEBSITE_LEFT + 15, WEBSITE_TOP + 155, WEBSITE_WIDTH - 30, FONT14ARIAL, FONT_MCOLOR_BLACK, FONT_MCOLOR_BLACK, FALSE, CENTER_JUSTIFIED);
|
||||||
DrawTextToScreen(sText, WEBSITE_LEFT + 15, WEBSITE_TOP + 155, WEBSITE_WIDTH - 30, FONT14ARIAL, FONT_MCOLOR_BLACK, FONT_MCOLOR_BLACK, FALSE, CENTER_JUSTIFIED);
|
swprintf(sText, szRebelCommandText[RCT_MISSION_NEXT_AVAILABILITY], nextMissionAvailableDay);
|
||||||
swprintf(sText, L"New missions will be available on Day %d at 00:00.", nextMissionAvailableDay);
|
|
||||||
DrawTextToScreen(sText, WEBSITE_LEFT + 15, WEBSITE_TOP + 175, WEBSITE_WIDTH - 30, FONT14ARIAL, FONT_MCOLOR_BLACK, FONT_MCOLOR_BLACK, FALSE, CENTER_JUSTIFIED);
|
DrawTextToScreen(sText, WEBSITE_LEFT + 15, WEBSITE_TOP + 175, WEBSITE_WIDTH - 30, FONT14ARIAL, FONT_MCOLOR_BLACK, FONT_MCOLOR_BLACK, FALSE, CENTER_JUSTIFIED);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@@ -2523,10 +2562,10 @@ void RenderMissionOverview()
|
|||||||
|
|
||||||
case MOS_ACTIVE_MISSION_EFFECTS:
|
case MOS_ACTIVE_MISSION_EFFECTS:
|
||||||
{
|
{
|
||||||
DrawTextToScreen(L"Active missions:", WEBSITE_LEFT + 25, WEBSITE_TOP + 75, 0, FONT12ARIAL, FONT_MCOLOR_BLACK, FONT_MCOLOR_BLACK, FALSE, 0);
|
DrawTextToScreen(szRebelCommandText[RCT_MISSION_ACTIVE_MISSIONS], WEBSITE_LEFT + 25, WEBSITE_TOP + 75, 0, FONT12ARIAL, FONT_MCOLOR_BLACK, FONT_MCOLOR_BLACK, FALSE, 0);
|
||||||
if (missionMap.size() == 0)
|
if (missionMap.size() == 0)
|
||||||
{
|
{
|
||||||
DrawTextToScreen(L"None", WEBSITE_LEFT + 35, WEBSITE_TOP + 90, 0, FONT12ARIAL, FONT_MCOLOR_BLACK, FONT_MCOLOR_BLACK, FALSE, 0);
|
DrawTextToScreen(szRebelCommandText[RCT_NONE], WEBSITE_LEFT + 35, WEBSITE_TOP + 90, 0, FONT12ARIAL, FONT_MCOLOR_BLACK, FONT_MCOLOR_BLACK, FALSE, 0);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@@ -2547,13 +2586,13 @@ void RenderMissionOverview()
|
|||||||
if (evt1.isFirstEvent)
|
if (evt1.isFirstEvent)
|
||||||
{
|
{
|
||||||
CHAR16 prepText[200];
|
CHAR16 prepText[200];
|
||||||
swprintf(prepText, L"%s - Preparing - Ready on Day %d, %02d:%02d", szRebelCommandAgentMissionsText[evt1.missionId * 2], day, hour, minute);
|
swprintf(prepText, szRebelCommandText[RCT_MISSION_LIST_PREPARING], szRebelCommandAgentMissionsText[evt1.missionId * 2], day, hour, minute);
|
||||||
evt1Strings.push_back(prepText);
|
evt1Strings.push_back(prepText);
|
||||||
}
|
}
|
||||||
else if (evt2.isSecondEvent)
|
else if (evt2.isSecondEvent)
|
||||||
{
|
{
|
||||||
CHAR16 missionText[200];
|
CHAR16 missionText[200];
|
||||||
swprintf(missionText, L"%s - Active - Expires on Day %d, %02d:%02d", szRebelCommandAgentMissionsText[evt2.missionId * 2], day, hour, minute);
|
swprintf(missionText, szRebelCommandText[RCT_MISSION_LIST_ACTIVE], szRebelCommandAgentMissionsText[evt2.missionId * 2], day, hour, minute);
|
||||||
evt2Strings.push_back(missionText);
|
evt2Strings.push_back(missionText);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -2698,21 +2737,21 @@ void StartMission(INT8 index)
|
|||||||
missionDuration += durationBonus;
|
missionDuration += durationBonus;
|
||||||
}
|
}
|
||||||
|
|
||||||
swprintf(text, L"[%s (%d supplies)]", szRebelCommandAgentMissionsText[missionTitle], cost);
|
swprintf(text, szRebelCommandText[RCT_MISSION_POPUP_PART1], szRebelCommandAgentMissionsText[missionTitle], cost);
|
||||||
|
|
||||||
if (agentIndex[index] == mercs.size())
|
if (agentIndex[index] == mercs.size())
|
||||||
{
|
{
|
||||||
// sent a generic rebel
|
// sent a generic rebel
|
||||||
MissionHelpers::missionParam = SerialiseMissionFirstEvent(TRUE, 0 /* no profile needed */, static_cast<RebelCommandAgentMissions>(rebelCommandSaveInfo.availableMissions[index]), missionDuration, 0 /* no extra data */);
|
MissionHelpers::missionParam = SerialiseMissionFirstEvent(TRUE, 0 /* no profile needed */, static_cast<RebelCommandAgentMissions>(rebelCommandSaveInfo.availableMissions[index]), missionDuration, 0 /* no extra data */);
|
||||||
swprintf(text, L"%s Send a rebel agent to prepare this mission?", text);
|
swprintf(text, szRebelCommandText[RCT_MISSION_POPUP_PART2_GENERIC], text);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
MissionHelpers::missionParam = SerialiseMissionFirstEvent(FALSE, mercs[agentIndex[index]]->ubProfile, static_cast<RebelCommandAgentMissions>(rebelCommandSaveInfo.availableMissions[index]), missionDuration, static_cast<UINT8>(extraBits));
|
MissionHelpers::missionParam = SerialiseMissionFirstEvent(FALSE, mercs[agentIndex[index]]->ubProfile, static_cast<RebelCommandAgentMissions>(rebelCommandSaveInfo.availableMissions[index]), missionDuration, static_cast<UINT8>(extraBits));
|
||||||
if (merc->bSex == MALE)
|
if (merc->bSex == MALE)
|
||||||
swprintf(text, L"%s Send %s to prepare this mission? He will return in 24 hours.", text, merc->zNickname);
|
swprintf(text, szRebelCommandText[RCT_MISSION_POPUP_PART2_MALE], text, merc->zNickname);
|
||||||
else
|
else
|
||||||
swprintf(text, L"%s Send %s to prepare this mission? She will return in 24 hours.", text, merc->zNickname);
|
swprintf(text, szRebelCommandText[RCT_MISSION_POPUP_PART2_FEMALE], text, merc->zNickname);
|
||||||
}
|
}
|
||||||
|
|
||||||
DoLapTopMessageBox(MSG_BOX_LAPTOP_DEFAULT, text, LAPTOP_SCREEN, MSG_BOX_FLAG_YESNO, [](UINT8 exitValue) {
|
DoLapTopMessageBox(MSG_BOX_LAPTOP_DEFAULT, text, LAPTOP_SCREEN, MSG_BOX_FLAG_YESNO, [](UINT8 exitValue) {
|
||||||
@@ -4493,8 +4532,8 @@ void HandleStrategicEvent(const UINT32 eventParam)
|
|||||||
}
|
}
|
||||||
|
|
||||||
missionMap.insert(std::make_pair(mission, activatedMissionParam));
|
missionMap.insert(std::make_pair(mission, activatedMissionParam));
|
||||||
swprintf(msgBoxText, L"Mission prep success! %s", szRebelCommandAgentMissionsText[evt1.missionId * 2]);
|
swprintf(msgBoxText, szRebelCommandText[RCT_MISSION_SUCCESS], szRebelCommandAgentMissionsText[evt1.missionId * 2]);
|
||||||
swprintf(screenMsgText, L"Mission \"%s\" is now in effect.", szRebelCommandAgentMissionsText[evt1.missionId * 2]);
|
swprintf(screenMsgText, szRebelCommandText[RCT_MISSION_SUCCESS], szRebelCommandAgentMissionsText[evt1.missionId * 2]);
|
||||||
ScreenMsg(FONT_MCOLOR_LTGREEN, MSG_INTERFACE, screenMsgText);
|
ScreenMsg(FONT_MCOLOR_LTGREEN, MSG_INTERFACE, screenMsgText);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -4516,8 +4555,8 @@ void HandleStrategicEvent(const UINT32 eventParam)
|
|||||||
}
|
}
|
||||||
|
|
||||||
MissionFailed_MercNoLongerOnTeam:
|
MissionFailed_MercNoLongerOnTeam:
|
||||||
swprintf(msgBoxText, L"Mission prep failed... %s", szRebelCommandAgentMissionsText[evt1.missionId * 2]);
|
swprintf(msgBoxText, szRebelCommandText[RCT_MISSION_FAILURE], szRebelCommandAgentMissionsText[evt1.missionId * 2]);
|
||||||
swprintf(screenMsgText, L"Preparations for mission \"%s\" failed.", szRebelCommandAgentMissionsText[evt1.missionId * 2]);
|
swprintf(screenMsgText, szRebelCommandText[RCT_MISSION_FAILURE], szRebelCommandAgentMissionsText[evt1.missionId * 2]);
|
||||||
ScreenMsg(FONT_MCOLOR_RED, MSG_INTERFACE, screenMsgText);
|
ScreenMsg(FONT_MCOLOR_RED, MSG_INTERFACE, screenMsgText);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -4544,8 +4583,8 @@ void HandleStrategicEvent(const UINT32 eventParam)
|
|||||||
{
|
{
|
||||||
// mission duration is over. deactivate the mission
|
// mission duration is over. deactivate the mission
|
||||||
missionMap.erase(static_cast<RebelCommandAgentMissions>(evt2.missionId));
|
missionMap.erase(static_cast<RebelCommandAgentMissions>(evt2.missionId));
|
||||||
swprintf(msgBoxText, L"Mission duration complete! %s", szRebelCommandAgentMissionsText[evt2.missionId * 2]);
|
swprintf(msgBoxText, szRebelCommandText[RCT_MISSION_EXPIRED], szRebelCommandAgentMissionsText[evt2.missionId * 2]);
|
||||||
swprintf(screenMsgText, L"Mission \"%s\" has expired and is no longer in effect.", szRebelCommandAgentMissionsText[evt1.missionId * 2]);
|
swprintf(screenMsgText, szRebelCommandText[RCT_MISSION_EXPIRED], szRebelCommandAgentMissionsText[evt1.missionId * 2]);
|
||||||
ScreenMsg(FONT_MCOLOR_RED, MSG_INTERFACE, screenMsgText);
|
ScreenMsg(FONT_MCOLOR_RED, MSG_INTERFACE, screenMsgText);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -11933,6 +11933,47 @@ STR16 szRebelCommandText[] =
|
|||||||
L">",
|
L">",
|
||||||
L"Changing this Admin Action will cost $%d and reset its tier. Confirm expenditure?",
|
L"Changing this Admin Action will cost $%d and reset its tier. Confirm expenditure?",
|
||||||
L"New missions will be available every %d hours.",
|
L"New missions will be available every %d hours.",
|
||||||
|
L"Mission preparations in progress.",
|
||||||
|
L"Mission duration: %d days",
|
||||||
|
L"Chance of success: %d%s",
|
||||||
|
L"[REDACTED]",
|
||||||
|
L"Name: %s",
|
||||||
|
L"Location: %s",
|
||||||
|
L"Assignment: %s",
|
||||||
|
L"Contract: %d days",
|
||||||
|
L"Contract: %d hours",
|
||||||
|
L"Contract: ---",
|
||||||
|
L"Agent bonus:",
|
||||||
|
L"Chance of success +%d%s (%s)",
|
||||||
|
L"Deployment range +%d (%s)",
|
||||||
|
L"Time +%2.0f%s (%s)",
|
||||||
|
L"Vision -%2.0f%s (%s)",
|
||||||
|
L"Gear quality -%d (%s)",
|
||||||
|
L"Overall stats -%d (%s)",
|
||||||
|
L"Max trainers: %d (%s)",
|
||||||
|
L"Duration +%d hours (%s)",
|
||||||
|
L"Agent not in loyal town",
|
||||||
|
L"Agent unavailable",
|
||||||
|
L"Agent contract expiring",
|
||||||
|
L"Battle in progress",
|
||||||
|
L"Start Mission (%d supplies)",
|
||||||
|
L"View active mission effects",
|
||||||
|
L"View available mission list",
|
||||||
|
L"New missions will be available on Day %d at 00:00.",
|
||||||
|
L"Active missions:",
|
||||||
|
L"%s - Preparing - Ready on Day %d, %02d:%02d",
|
||||||
|
L"%s - Active - Expires on Day %d, %02d:%02d",
|
||||||
|
L"[%s (%d supplies)]",
|
||||||
|
L"%s Send a rebel agent to prepare this mission?",
|
||||||
|
L"%s Send %s to prepare this mission? He will return in 24 hours.",
|
||||||
|
L"%s Send %s to prepare this mission? She will return in 24 hours.",
|
||||||
|
L"Mission \"%s\" is now in effect.",
|
||||||
|
L"Preparations for mission \"%s\" failed.",
|
||||||
|
L"Mission \"%s\" has expired and is no longer in effect."
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
STR16 szRebelCommandHelpText[] =
|
STR16 szRebelCommandHelpText[] =
|
||||||
|
|||||||
Reference in New Issue
Block a user