Complete disaster-recovery snapshot: engine/game source, game data assets, VC6 toolchain + DX SDKs, build outputs, deployed game, and _UNUSED archive. Large binaries in Git LFS; text preserved byte-for-byte (core.autocrlf=false, no eol attributes). See RECOVERY.md for the one-clone rebuild procedure.
258 lines
6.6 KiB
Plaintext
258 lines
6.6 KiB
Plaintext
#include "Content\\ShellScripts\\stddefs.h"
|
|
#include "Content\\ShellScripts\\common_shell.script"
|
|
#include "Content\\ShellScripts\\ScriptStrings.h"
|
|
#include "Content\\ShellScripts\\ShellFunctionHeaders.hpp"
|
|
#include "Content\\ShellScripts\\C_Pane.script"
|
|
#include "Content\\ShellScripts\\buttons.script"
|
|
#include "Content\\ShellScripts\\c_Text.script"
|
|
|
|
main
|
|
{
|
|
GUI_CREATE
|
|
{
|
|
// use the whole region
|
|
location = 0, 0, 0
|
|
region = 0, 0 to getresx(), getresy()
|
|
|
|
// columns - operation, mission, save point
|
|
int max_mccb_columns = 3
|
|
|
|
// XXX jackyc - need maximum number of items
|
|
int max_mccb_items = 50
|
|
|
|
object screen = o_IAWrapScreen
|
|
object pointer = o_MousePointer
|
|
pointer.showMousePointer = 1
|
|
|
|
focus(screen)
|
|
}
|
|
}
|
|
|
|
o_IAWrapScreen
|
|
{
|
|
GUI_CREATE
|
|
{
|
|
string szMissionName
|
|
string szName
|
|
int nKills
|
|
int nDeaths
|
|
int nResults
|
|
int nType
|
|
|
|
//BackGround Pane
|
|
object oBackground = s_Pane
|
|
oBackground.location = 0,0,0
|
|
oBackground.szBitmap = szPATH_GRAPHICS "debriefing_background.tga"
|
|
oBackground.nFrames = 1
|
|
oBackground.nMode = 0
|
|
oBackground.fVolatile = 0
|
|
oBackground.fRegion = 0
|
|
initialize(oBackground)
|
|
|
|
int nX = 21
|
|
int nY = 21
|
|
int nYoff = 40
|
|
//Text
|
|
//Page title
|
|
//BUGBUG BP
|
|
int difficulty //0-3 just like your pulldown
|
|
callback($$Shell_CallbackHandler$$, ShellIAGetResults,szMissionName,szName,nDeaths,nKills,nResults,nType, difficulty)
|
|
|
|
object oType = s_Text
|
|
// oType.location = oMissionName.location.x + oMissionName.nLayoutWidth,oMissionName.location.y,nZ_TEXT,nZ_TEXT
|
|
oType.location = nX,nY,nZ_TEXT
|
|
oType.nFontID = IDS_F_GEN_SCREEN_TITLE
|
|
oType.cTextColor = 0xFFff7200
|
|
oType.nJustify = 0
|
|
oType.nLayoutWidth = 200
|
|
oType.nLayoutHeight = 30
|
|
if(nType == 0)
|
|
{
|
|
oType.szText = localize$(IDS_IA_MISSION)": "
|
|
}
|
|
else
|
|
if(nType == 1)
|
|
{
|
|
oType.szText = localize$(IDS_IA_TRAINING)": "
|
|
}
|
|
else
|
|
if(nType == 2)
|
|
{
|
|
oType.szText = localize$(IDS_IA_WAVE)": "
|
|
}
|
|
else
|
|
if(nType == 3)
|
|
{
|
|
oType.szText = localize$(IDS_IA_MASTERS)": "
|
|
}
|
|
initialize(oType)
|
|
|
|
object oMissionName = s_Text
|
|
oMissionName.location = oType.location.x + oType.nLayoutWidth,oType.location.y,nZ_TEXT,nZ_TEXT
|
|
oMissionName.nFontID = IDS_F_GEN_SCREEN_TITLE
|
|
oMissionName.cTextColor = 0xFFff7200
|
|
oMissionName.nJustify = 0
|
|
oMissionName.nLayoutWidth = 300
|
|
oMissionName.nLayoutHeight = 30
|
|
oMissionName.szText = szMissionName
|
|
initialize(oMissionName)
|
|
|
|
object oDiffTitle = s_Text
|
|
oDiffTitle.location = nX,oMissionName.location.y + (1*nYoff),nZ_TEXT,nZ_TEXT
|
|
oDiffTitle.nFontID = IDS_F_GEN_SCREEN_TITLE
|
|
oDiffTitle.cTextColor = cWhite
|
|
oDiffTitle.nJustify = 0
|
|
oDiffTitle.nLayoutWidth = 200
|
|
oDiffTitle.nLayoutHeight = 30
|
|
oDiffTitle.szText = localize$(IDS_IA_DIFF_TITLE)
|
|
initialize(oDiffTitle)
|
|
|
|
object oDiff = s_Text
|
|
oDiff.location = oDiffTitle.location.x + oDiffTitle.nLayoutWidth,oMissionName.location.y + (1*nYoff),nZ_TEXT
|
|
oDiff.nFontID = IDS_F_GEN_SCREEN_TITLE
|
|
oDiff.cTextColor = cWhite
|
|
oDiff.nJustify = 0
|
|
oDiff.nLayoutWidth = 200
|
|
oDiff.nLayoutHeight = 30
|
|
if(difficulty == 0)
|
|
{
|
|
oDiff.szText = localize$(IDS_RS_RECRUIT)
|
|
}
|
|
else
|
|
if(difficulty == 1)
|
|
{
|
|
oDiff.szText = localize$(IDS_RS_REGULAR)
|
|
}
|
|
else
|
|
if(difficulty == 2)
|
|
{
|
|
oDiff.szText = localize$(IDS_RS_VETERAN)
|
|
}
|
|
else
|
|
if(difficulty == 3)
|
|
{
|
|
oDiff.szText = localize$(IDS_RS_ELITE)
|
|
}
|
|
initialize(oDiff)
|
|
|
|
|
|
object oResults = s_Text
|
|
oResults.location = nX,oMissionName.location.y + (2*nYoff),nZ_TEXT
|
|
oResults.nFontID = IDS_F_GEN_TEXTBUTTON
|
|
oResults.cTextColor = cWhite
|
|
oResults.nJustify = 0
|
|
oResults.nLayoutWidth = 400
|
|
oResults.nLayoutHeight = 150
|
|
if(nResults == 0)
|
|
{
|
|
oResults.nResID = IDS_CMW_FAIL
|
|
}
|
|
else
|
|
if(nResults > 0)
|
|
{
|
|
oResults.nResID = IDS_CMW_SUCCESS
|
|
}
|
|
initialize(oResults)
|
|
|
|
object oPlayerName = s_Text
|
|
oPlayerName.location = nX,oMissionName.location.y + (6*nYoff),nZ_TEXT
|
|
oPlayerName.nFontID = IDS_F_LOAD_TITLE
|
|
oPlayerName.cTextColor = cWhite
|
|
oPlayerName.nJustify = 0
|
|
oPlayerName.nLayoutWidth = 400
|
|
oPlayerName.nLayoutHeight = 30
|
|
oPlayerName.szText = szName
|
|
initialize(oPlayerName)
|
|
|
|
object oKillTitle = s_Text
|
|
oKillTitle.location = nX,oMissionName.location.y + (7*nYoff),nZ_TEXT
|
|
oKillTitle.nFontID = IDS_F_LOAD_TITLE
|
|
oKillTitle.cTextColor = cWhite
|
|
oKillTitle.nJustify = 0
|
|
oKillTitle.nResID = IDS_IAW_KILLS
|
|
oKillTitle.nLayoutWidth = 150
|
|
initialize(oKillTitle)
|
|
|
|
object oKill = s_Text
|
|
oKill.location = oKillTitle.location.x + oKillTitle.nLayoutWidth ,oKillTitle.location.y,nZ_TEXT
|
|
oKill.nFontID = IDS_F_LOAD_TITLE
|
|
oKill.cTextColor = cWhite
|
|
oKill.nJustify = 0
|
|
oKill.szText = ": "conv$(nKills)
|
|
initialize(oKill)
|
|
|
|
object oDeathTitle = s_Text
|
|
oDeathTitle.location = nX ,oMissionName.location.y + (8*nYoff),nZ_TEXT
|
|
oDeathTitle.nFontID = IDS_F_LOAD_TITLE
|
|
oDeathTitle.cTextColor = cWhite
|
|
oDeathTitle.nJustify = 0
|
|
oDeathTitle.nResID = IDS_IAW_DEATH
|
|
oDeathTitle.nLayoutWidth = 150
|
|
initialize(oDeathTitle)
|
|
|
|
object oDeath = s_Text
|
|
oDeath.location = oDeathTitle.location.x + oDeathTitle.nLayoutWidth ,oDeathTitle.location.y,nZ_TEXT
|
|
oDeath.nFontID = IDS_F_LOAD_TITLE
|
|
oDeath.cTextColor = cWhite
|
|
oDeath.nJustify = 0
|
|
oDeath.szText = ": "conv$(nDeaths)
|
|
initialize(oDeath)
|
|
|
|
//Buttons
|
|
object o_Close_button = s_multistatepane
|
|
o_Close_button.file = WPATH "button_reg_200x27m_4state.tga"
|
|
o_Close_button.text = localize$(IDS_OM_VA_CLOSE)
|
|
o_Close_button.total_states = 4
|
|
o_Close_button.location = 560,555,nZ_BUTTON
|
|
initialize (o_Close_button)
|
|
|
|
sound btnTriggeredSound = SPATH "sfx_button5.wav"
|
|
|
|
initialize(this)
|
|
}
|
|
GUI_MAILBOX
|
|
{
|
|
switch (sender)
|
|
{
|
|
case o_Close_button:
|
|
{
|
|
play btnTriggeredSound,1
|
|
unfocus
|
|
@SHELL@lastScreenDepth++
|
|
@SHELL@lastScreen[@SHELL@lastScreenDepth] = MAINMENU
|
|
@SHELL@currentScreen = INSTANT_SCREEN
|
|
}
|
|
break
|
|
}
|
|
switch (getmessage())
|
|
{
|
|
// case :
|
|
// {
|
|
// }
|
|
// break
|
|
}
|
|
|
|
|
|
}
|
|
}
|
|
// A utility class for showing the mouse pointer
|
|
o_MousePointer
|
|
{
|
|
GUI_CREATE
|
|
{
|
|
int showMousePointer = 1
|
|
|
|
pane p_pointer = GPATH "mouse_pointer.tga"
|
|
alphamode(p_pointer) = am_alpha_alphainvalpha
|
|
origin(p_pointer) = 0, 0
|
|
location.z = 255
|
|
}
|
|
|
|
GUI_DRAW
|
|
{
|
|
if (showMousePointer != 0)
|
|
{
|
|
render p_pointer, mouse.x, mouse.y
|
|
}
|
|
}
|
|
} |