- When ordering a merc to interrogate, one can now select what type of prisoners should be interrogated primarily. Thus one no longer has to empty the prison just to get to the one remaining officer.

- Generals are now a separate prisoner type. They cannot join militia, but yield an impressive ransom.
- various prisoner fixes

git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@7327 3b4a5df2-a311-0410-b5c6-a8a6f20db521
This commit is contained in:
Flugente
2014-07-10 21:19:26 +00:00
parent 7fb31cc9c8
commit 0efc3b7241
31 changed files with 1000 additions and 310 deletions
+2
View File
@@ -139,6 +139,8 @@ bool Loc::ExportStrings()
ExportSection(props, L"SnitchToggleMenuDesc", Loc::pSnitchToggleMenuDescStrings, 0, MAX_SNITCH_TOGGLE_MENU_STRING_COUNT-1);
ExportSection(props, L"SnitchSectorMenu", Loc::pSnitchSectorMenuStrings, 0, MAX_SNITCH_SECTOR_MENU_STRING_COUNT);
ExportSection(props, L"SnitchSectorMenuDesc", Loc::pSnitchSectorMenuDescStrings, 0, MAX_SNITCH_SECTOR_MENU_STRING_COUNT-1);
ExportSection(props, L"PrisonerMenu", Loc::pPrisonerMenuStrings, 0, MAX_PRISONER_MENU_STRING_COUNT );
ExportSection(props, L"PrisonerMenuDesc", Loc::pPrisonerMenuDescStrings, 0, MAX_PRISONER_MENU_STRING_COUNT - 1 );
ExportSection(props, L"SnitchPrisonExposed", Loc::pSnitchPrisonExposedStrings, 0, NUM_SNITCH_PRISON_EXPOSED);
ExportSection(props, L"SnitchGatheringRumoursResult", Loc::pSnitchGatheringRumoursResultStrings, 0, NUM_SNITCH_GATHERING_RUMOURS_RESULT);
+17 -37
View File
@@ -196,8 +196,6 @@ void ShadeStringInBox( INT32 hBoxHandle, INT32 iLineNumber )
// shade line
PopUpBoxList[hBoxHandle]->Text[iLineNumber]->fShadeFlag = TRUE;
}
return;
}
void UnShadeStringInBox( INT32 hBoxHandle, INT32 iLineNumber )
@@ -217,8 +215,6 @@ void UnShadeStringInBox( INT32 hBoxHandle, INT32 iLineNumber )
// shade line
PopUpBoxList[hBoxHandle]->Text[iLineNumber]->fShadeFlag = FALSE;
}
return;
}
@@ -239,8 +235,6 @@ void SecondaryShadeStringInBox( INT32 hBoxHandle, INT32 iLineNumber )
// shade line
PopUpBoxList[hBoxHandle]->Text[iLineNumber]->fSecondaryShadeFlag = TRUE;
}
return;
}
void UnSecondaryShadeStringInBox( INT32 hBoxHandle, INT32 iLineNumber )
@@ -260,8 +254,6 @@ void UnSecondaryShadeStringInBox( INT32 hBoxHandle, INT32 iLineNumber )
// shade line
PopUpBoxList[hBoxHandle]->Text[iLineNumber]->fSecondaryShadeFlag = FALSE;
}
return;
}
@@ -271,13 +263,11 @@ void SetBoxBuffer(INT32 hBoxHandle, UINT32 uiBuffer)
if ( ( hBoxHandle < 0 ) || ( hBoxHandle >= MAX_POPUP_BOX_COUNT ) )
return;
Assert( PopUpBoxList[ hBoxHandle ] );
Assert( PopUpBoxList[ hBoxHandle ] );
PopUpBoxList[hBoxHandle]->uiBuffer=uiBuffer;
PopUpBoxList[hBoxHandle]->uiBuffer=uiBuffer;
PopUpBoxList[hBoxHandle]->fUpdated = FALSE;
return;
PopUpBoxList[hBoxHandle]->fUpdated = FALSE;
}
@@ -286,14 +276,12 @@ void SetBoxPosition( INT32 hBoxHandle,SGPPoint Position )
if ( ( hBoxHandle < 0 ) || ( hBoxHandle >= MAX_POPUP_BOX_COUNT ) )
return;
Assert( PopUpBoxList[ hBoxHandle ] );
Assert( PopUpBoxList[ hBoxHandle ] );
PopUpBoxList[hBoxHandle]->Position.iX=Position.iX;
PopUpBoxList[hBoxHandle]->Position.iY=Position.iY;
PopUpBoxList[hBoxHandle]->Position.iX=Position.iX;
PopUpBoxList[hBoxHandle]->Position.iY=Position.iY;
PopUpBoxList[hBoxHandle]->fUpdated = FALSE;
return;
PopUpBoxList[hBoxHandle]->fUpdated = FALSE;
}
@@ -306,8 +294,6 @@ void GetBoxPosition( INT32 hBoxHandle, SGPPoint *Position )
Position->iX = PopUpBoxList[hBoxHandle]->Position.iX;
Position->iY = PopUpBoxList[hBoxHandle]->Position.iY;
return;
}
void SetBoxSize(INT32 hBoxHandle,SGPRect Dimensions)
@@ -315,16 +301,14 @@ void SetBoxSize(INT32 hBoxHandle,SGPRect Dimensions)
if ( ( hBoxHandle < 0 ) || ( hBoxHandle >= MAX_POPUP_BOX_COUNT ) )
return;
Assert( PopUpBoxList[ hBoxHandle ] );
Assert( PopUpBoxList[ hBoxHandle ] );
PopUpBoxList[hBoxHandle]->Dimensions.iLeft=Dimensions.iLeft;
PopUpBoxList[hBoxHandle]->Dimensions.iBottom=Dimensions.iBottom;
PopUpBoxList[hBoxHandle]->Dimensions.iRight=Dimensions.iRight;
PopUpBoxList[hBoxHandle]->Dimensions.iTop=Dimensions.iTop;
PopUpBoxList[hBoxHandle]->Dimensions.iLeft=Dimensions.iLeft;
PopUpBoxList[hBoxHandle]->Dimensions.iBottom=Dimensions.iBottom;
PopUpBoxList[hBoxHandle]->Dimensions.iRight=Dimensions.iRight;
PopUpBoxList[hBoxHandle]->Dimensions.iTop=Dimensions.iTop;
PopUpBoxList[hBoxHandle]->fUpdated = FALSE;
return;
PopUpBoxList[hBoxHandle]->fUpdated = FALSE;
}
@@ -339,8 +323,6 @@ void GetBoxSize( INT32 hBoxHandle, SGPRect *Dimensions )
Dimensions->iBottom = PopUpBoxList[hBoxHandle]->Dimensions.iBottom;
Dimensions->iRight = PopUpBoxList[hBoxHandle]->Dimensions.iRight;
Dimensions->iTop = PopUpBoxList[hBoxHandle]->Dimensions.iTop;
return;
}
@@ -349,9 +331,8 @@ void SetBorderType(INT32 hBoxHandle, INT32 iBorderObjectIndex)
if ( ( hBoxHandle < 0 ) || ( hBoxHandle >= MAX_POPUP_BOX_COUNT ) )
return;
Assert( PopUpBoxList[ hBoxHandle ] );
PopUpBoxList[hBoxHandle]->iBorderObjectIndex=iBorderObjectIndex;
return;
Assert( PopUpBoxList[ hBoxHandle ] );
PopUpBoxList[hBoxHandle]->iBorderObjectIndex=iBorderObjectIndex;
}
void SetBackGroundSurface(INT32 hBoxHandle, INT32 iBackGroundSurfaceIndex)
@@ -359,9 +340,8 @@ void SetBackGroundSurface(INT32 hBoxHandle, INT32 iBackGroundSurfaceIndex)
if ( ( hBoxHandle < 0 ) || ( hBoxHandle >= MAX_POPUP_BOX_COUNT ) )
return;
Assert( PopUpBoxList[ hBoxHandle ] );
PopUpBoxList[hBoxHandle]->iBackGroundSurface=iBackGroundSurfaceIndex;
return;
Assert( PopUpBoxList[ hBoxHandle ] );
PopUpBoxList[hBoxHandle]->iBackGroundSurface=iBackGroundSurfaceIndex;
}
+2
View File
@@ -175,6 +175,8 @@ extern STR16 pSnitchToggleMenuStrings[];
extern STR16 pSnitchToggleMenuDescStrings[];
extern STR16 pSnitchSectorMenuStrings[];
extern STR16 pSnitchSectorMenuDescStrings[];
extern STR16 pPrisonerMenuStrings[];
extern STR16 pPrisonerMenuDescStrings[];
extern STR16 pSnitchPrisonExposedStrings[];
extern STR16 pSnitchGatheringRumoursResultStrings[];
extern STR16 pAssignMenuStrings[];
+20
View File
@@ -2263,6 +2263,26 @@ STR16 pSnitchSectorMenuDescStrings[] =
L"",
};
STR16 pPrisonerMenuStrings[] = // TODO.Translate
{
L"Interrogate admins",
L"Interrogate troops",
L"Interrogate elites",
L"Interrogate officers",
L"Interrogate generals",
L"Cancel",
};
STR16 pPrisonerMenuDescStrings[] =
{
L"Administrators are easy to process, but give only poor results",
L"Regular troops are common an don't give you high rewards.",
L"If elite troops defect to you, they can become veteran militia.",
L"Interrogating enemy officers can lead you to find enemy generals.",
L"Generals cannot join your militia, but lead to high ransoms.",
L"Cancel",
};
STR16 pSnitchPrisonExposedStrings[] =
{
L"%s告发者的身份暴露,但是及时注意到并成功逃脱。",
+20
View File
@@ -2261,6 +2261,26 @@ STR16 pSnitchSectorMenuDescStrings[] =
L"",
};
STR16 pPrisonerMenuStrings[] = // TODO.Translate
{
L"Interrogate admins",
L"Interrogate troops",
L"Interrogate elites",
L"Interrogate officers",
L"Interrogate generals",
L"Cancel",
};
STR16 pPrisonerMenuDescStrings[] =
{
L"Administrators are easy to process, but give only poor results",
L"Regular troops are common an don't give you high rewards.",
L"If elite troops defect to you, they can become veteran militia.",
L"Interrogating enemy officers can lead you to find enemy generals.",
L"Generals cannot join your militia, but lead to high ransoms.",
L"Cancel",
};
STR16 pSnitchPrisonExposedStrings[] =
{
L"%s was exposed as a snitch but managed to notice it and get out alive.",
+21 -1
View File
@@ -2264,6 +2264,26 @@ STR16 pSnitchSectorMenuDescStrings[] =
L"",
};
STR16 pPrisonerMenuStrings[] =
{
L"Interrogate admins",
L"Interrogate troops",
L"Interrogate elites",
L"Interrogate officers",
L"Interrogate generals",
L"Cancel",
};
STR16 pPrisonerMenuDescStrings[] =
{
L"Administrators are easy to process, but give only poor results",
L"Regular troops are common an don't give you high rewards.",
L"If elite troops defect to you, they can become veteran militia.",
L"Interrogating enemy officers can lead you to find enemy generals.",
L"Generals cannot join your militia, but lead to high ransoms.",
L"Cancel",
};
STR16 pSnitchPrisonExposedStrings[] =
{
L"%s was exposed as a snitch but managed to notice it and get out alive.",
@@ -8227,7 +8247,7 @@ STR16 szPersonalityHelpText[]=
L"What are your manners?",
L"How important are the manners of other people to you?",
L"What is your nationality?",
L"What nation o you dislike?",
L"What nation do you dislike?",
L"How much do you dislike that nation?",
L"How racist are you?",
L"What is your race? You will be\nracist against all other races.",
+20
View File
@@ -2270,6 +2270,26 @@ STR16 pSnitchSectorMenuDescStrings[] =
L"",
};
STR16 pPrisonerMenuStrings[] = // TODO.Translate
{
L"Interrogate admins",
L"Interrogate troops",
L"Interrogate elites",
L"Interrogate officers",
L"Interrogate generals",
L"Cancel",
};
STR16 pPrisonerMenuDescStrings[] =
{
L"Administrators are easy to process, but give only poor results",
L"Regular troops are common an don't give you high rewards.",
L"If elite troops defect to you, they can become veteran militia.",
L"Interrogating enemy officers can lead you to find enemy generals.",
L"Generals cannot join your militia, but lead to high ransoms.",
L"Cancel",
};
STR16 pSnitchPrisonExposedStrings[] =
{
L"%s s'est exposé(e) comme mouchard, mais s'en est rendu compte et a pu s'en sortir vivant.",
+20
View File
@@ -2266,6 +2266,26 @@ STR16 pSnitchSectorMenuDescStrings[] =
L"",
};
STR16 pPrisonerMenuStrings[] = // TODO.Translate
{
L"Interrogate admins",
L"Interrogate troops",
L"Interrogate elites",
L"Interrogate officers",
L"Interrogate generals",
L"Cancel",
};
STR16 pPrisonerMenuDescStrings[] =
{
L"Administrators are easy to process, but give only poor results",
L"Regular troops are common an don't give you high rewards.",
L"If elite troops defect to you, they can become veteran militia.",
L"Interrogating enemy officers can lead you to find enemy generals.",
L"Generals cannot join your militia, but lead to high ransoms.",
L"Cancel",
};
STR16 pSnitchPrisonExposedStrings[] =
{
L"%s was exposed as a snitch but managed to notice it and get out alive.",
+21
View File
@@ -2257,6 +2257,27 @@ STR16 pSnitchSectorMenuDescStrings[] =
L"",
};
STR16 pPrisonerMenuStrings[] = // TODO.Translate
{
// toggle snitching
L"Interrogate admins",
L"Interrogate troops",
L"Interrogate elites",
L"Interrogate officers",
L"Interrogate generals",
L"Cancel",
};
STR16 pPrisonerMenuDescStrings[] =
{
L"Administrators are easy to process, but give only poor results",
L"Regular troops are common an don't give you high rewards.",
L"If elite troops defect to you, they can become veteran militia.",
L"Interrogating enemy officers can lead you to find enemy generals.",
L"Generals cannot join your militia, but lead to high ransoms.",
L"Cancel",
};
STR16 pSnitchPrisonExposedStrings[] =
{
L"%s was exposed as a snitch but managed to notice it and get out alive.",
+20
View File
@@ -2272,6 +2272,26 @@ STR16 pSnitchSectorMenuDescStrings[] =
L"",
};
STR16 pPrisonerMenuStrings[] = // TODO.Translate
{
L"Interrogate admins",
L"Interrogate troops",
L"Interrogate elites",
L"Interrogate officers",
L"Interrogate generals",
L"Cancel",
};
STR16 pPrisonerMenuDescStrings[] =
{
L"Administrators are easy to process, but give only poor results",
L"Regular troops are common an don't give you high rewards.",
L"If elite troops defect to you, they can become veteran militia.",
L"Interrogating enemy officers can lead you to find enemy generals.",
L"Generals cannot join your militia, but lead to high ransoms.",
L"Cancel",
};
STR16 pSnitchPrisonExposedStrings[] =
{
L"%s został zdemaskowany jako kapuś, ale w porę to spostrzegł i zdołał ujść z życiem.",
+20
View File
@@ -2265,6 +2265,26 @@ STR16 pSnitchSectorMenuDescStrings[] =
L"",
};
STR16 pPrisonerMenuStrings[] = // TODO.Translate
{
L"Interrogate admins",
L"Interrogate troops",
L"Interrogate elites",
L"Interrogate officers",
L"Interrogate generals",
L"Cancel",
};
STR16 pPrisonerMenuDescStrings[] =
{
L"Administrators are easy to process, but give only poor results",
L"Regular troops are common an don't give you high rewards.",
L"If elite troops defect to you, they can become veteran militia.",
L"Interrogating enemy officers can lead you to find enemy generals.",
L"Generals cannot join your militia, but lead to high ransoms.",
L"Cancel",
};
STR16 pSnitchPrisonExposedStrings[] =
{
L"%s was exposed as a snitch but managed to notice it and get out alive.",