mirror of
https://github.com/jmarshall23/CnC_Remastered_Collection.git
synced 2026-08-19 09:34:18 +02:00
Initial work on the scenerio editor screen.
This commit is contained in:
+206
-112
@@ -1168,6 +1168,74 @@ int MapEditClass::Size_Map(int x, int y, int w, int h)
|
|||||||
return(0);
|
return(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
std::vector<const char *> scenerio_theaters;
|
||||||
|
std::vector<const char*> scenerio_intros;
|
||||||
|
std::vector<const char*> scenario_briefing;
|
||||||
|
std::vector<const char*> scenario_action;
|
||||||
|
std::vector<const char*> scenario_win;
|
||||||
|
std::vector<const char*> scenario_loose;
|
||||||
|
|
||||||
|
char description[DESCRIP_MAX] = "";
|
||||||
|
int scenario_intromovie = 0;
|
||||||
|
void ImGui_ScenerioDialog(void) {
|
||||||
|
bool toolActive = false;
|
||||||
|
int theater = Scen.Theater;
|
||||||
|
int briefmovie = Scen.BriefMovie + 1;
|
||||||
|
int action = Scen.ActionMovie + 1;
|
||||||
|
int win = Scen.WinMovie + 1;
|
||||||
|
int lose = Scen.LoseMovie + 1;
|
||||||
|
|
||||||
|
ImGuiStyle& style = ImGui::GetStyle();
|
||||||
|
style.FramePadding = ImVec2(0, 0);
|
||||||
|
ImGui::SetNextWindowSize(ImVec2(320 * RESFACTOR, 200 * RESFACTOR));
|
||||||
|
ImGui::SetNextWindowPos(ImVec2(0, 0));
|
||||||
|
ImGui::Begin("Scenario Editor", &toolActive, ImGuiWindowFlags_AlwaysAutoResize);
|
||||||
|
ImGui::Columns(2, "outer", true);
|
||||||
|
ImGui::Text("Theater");
|
||||||
|
ImGui::PushID("t_text");
|
||||||
|
ImGui::Combo("", (int *)&theater, &scenerio_theaters[0], scenerio_theaters.size());
|
||||||
|
ImGui::PopID();
|
||||||
|
ImGui::NextColumn();
|
||||||
|
ImGui::Text("Scenario Name:");
|
||||||
|
ImGui::PushID("s_name");
|
||||||
|
ImGui::InputText("", description, sizeof(description));
|
||||||
|
ImGui::PopID();
|
||||||
|
ImGui::Columns(1);
|
||||||
|
ImGui::Columns(5, "outer2", true);
|
||||||
|
ImGui::Text("Intro");
|
||||||
|
ImGui::PushID("s_intro");
|
||||||
|
ImGui::Combo("", (int*)&scenario_intromovie, &scenerio_intros[0], scenerio_intros.size());
|
||||||
|
ImGui::PopID();
|
||||||
|
ImGui::NextColumn();
|
||||||
|
ImGui::Text("Briefing");
|
||||||
|
ImGui::PushID("brief_txt");
|
||||||
|
ImGui::Combo("", (int*)&briefmovie, &scenario_briefing[0], scenario_briefing.size());
|
||||||
|
ImGui::PopID();
|
||||||
|
ImGui::NextColumn();
|
||||||
|
ImGui::Text("Action");
|
||||||
|
ImGui::PushID("action_txt");
|
||||||
|
ImGui::Combo("", (int*)&action, &scenario_action[0], scenario_action.size());
|
||||||
|
ImGui::PopID();
|
||||||
|
ImGui::NextColumn();
|
||||||
|
ImGui::Text("Win");
|
||||||
|
ImGui::PushID("win_txt");
|
||||||
|
ImGui::Combo("", (int*)&win, &scenario_win[0], scenario_win.size());
|
||||||
|
ImGui::PopID();
|
||||||
|
ImGui::NextColumn();
|
||||||
|
ImGui::Text("Lose");
|
||||||
|
ImGui::PushID("lose_txt");
|
||||||
|
ImGui::Combo("", (int*)&lose, &scenario_loose[0], scenario_loose.size());
|
||||||
|
ImGui::PopID();
|
||||||
|
ImGui::Columns(1);
|
||||||
|
ImGui::End();
|
||||||
|
|
||||||
|
Scen.Theater = (TheaterType)(theater);
|
||||||
|
Scen.BriefMovie = (VQType)(briefmovie - 1);
|
||||||
|
Scen.ActionMovie = (VQType)(action - 1);
|
||||||
|
Scen.WinMovie = (VQType)(win - 1);
|
||||||
|
Scen.LoseMovie = (VQType)(lose - 1);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/***************************************************************************
|
/***************************************************************************
|
||||||
* MapEditClass::Scenario_Dialog -- scenario global parameters dialog *
|
* MapEditClass::Scenario_Dialog -- scenario global parameters dialog *
|
||||||
@@ -1190,11 +1258,27 @@ int MapEditClass::Size_Map(int x, int y, int w, int h)
|
|||||||
*=========================================================================*/
|
*=========================================================================*/
|
||||||
int MapEditClass::Scenario_Dialog(void)
|
int MapEditClass::Scenario_Dialog(void)
|
||||||
{
|
{
|
||||||
TheaterType orig_theater = Scen.Theater; // original theater
|
|
||||||
HousesType house = PlayerPtr->Class->House;
|
HousesType house = PlayerPtr->Class->House;
|
||||||
HousesType newhouse = house;
|
HousesType newhouse = house;
|
||||||
HouseStaticClass hdata[HOUSE_COUNT];
|
HouseStaticClass hdata[HOUSE_COUNT];
|
||||||
|
|
||||||
|
Imgui_Dialog_Function = ImGui_ScenerioDialog;
|
||||||
|
|
||||||
|
|
||||||
|
scenerio_theaters.clear();
|
||||||
|
scenerio_intros.clear();
|
||||||
|
scenario_briefing.clear();
|
||||||
|
scenario_action.clear();
|
||||||
|
scenario_win.clear();
|
||||||
|
scenario_loose.clear();
|
||||||
|
|
||||||
|
scenerio_intros.push_back("<NONE>");
|
||||||
|
scenario_briefing.push_back("<NONE>");
|
||||||
|
scenario_action.push_back("<NONE>");
|
||||||
|
scenario_win.push_back("<NONE>");
|
||||||
|
scenario_loose.push_back("<NONE>");
|
||||||
|
|
||||||
/*
|
/*
|
||||||
** Fill in the house data for each house that exists.
|
** Fill in the house data for each house that exists.
|
||||||
*/
|
*/
|
||||||
@@ -1277,12 +1361,13 @@ int MapEditClass::Scenario_Dialog(void)
|
|||||||
D_DIALOG_X+15*RESFACTOR, D_DIALOG_Y+30, 65, 8*5,
|
D_DIALOG_X+15*RESFACTOR, D_DIALOG_Y+30, 65, 8*5,
|
||||||
MFCD::Retrieve("EBTN-UP.SHP"),
|
MFCD::Retrieve("EBTN-UP.SHP"),
|
||||||
MFCD::Retrieve("EBTN-DN.SHP"));
|
MFCD::Retrieve("EBTN-DN.SHP"));
|
||||||
for (TheaterType t = THEATER_FIRST; t < THEATER_COUNT; t++) {
|
|
||||||
theaterbtn.Add_Item(Theaters[t].Name);
|
|
||||||
}
|
|
||||||
theaterbtn.Set_Selected_Index(orig_theater);
|
|
||||||
|
|
||||||
char description[DESCRIP_MAX] = "";
|
for (TheaterType t = THEATER_FIRST; t < THEATER_COUNT; t++) {
|
||||||
|
scenerio_theaters.push_back(Theaters[t].Name);
|
||||||
|
}
|
||||||
|
//theaterbtn.Set_Selected_Index(orig_theater);
|
||||||
|
|
||||||
|
|
||||||
strcpy(description, Scen.Description);
|
strcpy(description, Scen.Description);
|
||||||
EditClass desc(BUTTON_DESCRIPTION, description, sizeof(description), TPF_EFNT|TPF_NOSHADOW, theaterbtn.X+theaterbtn.Width+15, theaterbtn.Y, 160);
|
EditClass desc(BUTTON_DESCRIPTION, description, sizeof(description), TPF_EFNT|TPF_NOSHADOW, theaterbtn.X+theaterbtn.Width+15, theaterbtn.Y, 160);
|
||||||
|
|
||||||
@@ -1406,11 +1491,11 @@ int MapEditClass::Scenario_Dialog(void)
|
|||||||
theaterbtn.X, theaterbtn.Y+theaterbtn.Height+24, 50, 7*10,
|
theaterbtn.X, theaterbtn.Y+theaterbtn.Height+24, 50, 7*10,
|
||||||
MFCD::Retrieve("EBTN-UP.SHP"),
|
MFCD::Retrieve("EBTN-UP.SHP"),
|
||||||
MFCD::Retrieve("EBTN-DN.SHP"));
|
MFCD::Retrieve("EBTN-DN.SHP"));
|
||||||
intro.Add_Item("<none>");
|
//intro.Add_Item("<none>");
|
||||||
for (VQType v = VQ_FIRST; v < VQ_COUNT; v++) {
|
for (VQType v = VQ_FIRST; v < VQ_COUNT; v++) {
|
||||||
intro.Add_Item(VQName[v]);
|
scenerio_intros.push_back(&VQName[v][0]);
|
||||||
}
|
}
|
||||||
intro.Set_Selected_Index((int)Scen.IntroMovie + 1);
|
//intro.Set_Selected_Index((int)Scen.IntroMovie + 1);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
** Briefing movie name.
|
** Briefing movie name.
|
||||||
@@ -1421,11 +1506,12 @@ int MapEditClass::Scenario_Dialog(void)
|
|||||||
intro.X+intro.Width+10, intro.Y, 50, 7*10,
|
intro.X+intro.Width+10, intro.Y, 50, 7*10,
|
||||||
MFCD::Retrieve("EBTN-UP.SHP"),
|
MFCD::Retrieve("EBTN-UP.SHP"),
|
||||||
MFCD::Retrieve("EBTN-DN.SHP"));
|
MFCD::Retrieve("EBTN-DN.SHP"));
|
||||||
briefing.Add_Item("<none>");
|
//briefing.Add_Item("<none>");
|
||||||
for (v = VQ_FIRST; v < VQ_COUNT; v++) {
|
for (v = VQ_FIRST; v < VQ_COUNT; v++) {
|
||||||
briefing.Add_Item(VQName[v]);
|
//briefing.Add_Item(VQName[v]);
|
||||||
|
scenario_briefing.push_back(VQName[v]);
|
||||||
}
|
}
|
||||||
briefing.Set_Selected_Index((int)Scen.BriefMovie + 1);
|
//briefing.Set_Selected_Index((int)Scen.BriefMovie + 1);
|
||||||
|
|
||||||
char actiontext[_MAX_FNAME+_MAX_EXT];
|
char actiontext[_MAX_FNAME+_MAX_EXT];
|
||||||
DropListClass action(BUTTON_ACTION, actiontext, sizeof(actiontext),
|
DropListClass action(BUTTON_ACTION, actiontext, sizeof(actiontext),
|
||||||
@@ -1433,11 +1519,12 @@ int MapEditClass::Scenario_Dialog(void)
|
|||||||
briefing.X+briefing.Width+10, briefing.Y, 50, 7*10,
|
briefing.X+briefing.Width+10, briefing.Y, 50, 7*10,
|
||||||
MFCD::Retrieve("EBTN-UP.SHP"),
|
MFCD::Retrieve("EBTN-UP.SHP"),
|
||||||
MFCD::Retrieve("EBTN-DN.SHP"));
|
MFCD::Retrieve("EBTN-DN.SHP"));
|
||||||
action.Add_Item("<none>");
|
//action.Add_Item("<none>");
|
||||||
for (v = VQ_FIRST; v < VQ_COUNT; v++) {
|
for (v = VQ_FIRST; v < VQ_COUNT; v++) {
|
||||||
action.Add_Item(VQName[v]);
|
//action.Add_Item(VQName[v]);
|
||||||
|
scenario_action.push_back(VQName[v]);
|
||||||
}
|
}
|
||||||
action.Set_Selected_Index((int)Scen.ActionMovie + 1);
|
//action.Set_Selected_Index((int)Scen.ActionMovie + 1);
|
||||||
|
|
||||||
char wintext[_MAX_FNAME+_MAX_EXT];
|
char wintext[_MAX_FNAME+_MAX_EXT];
|
||||||
DropListClass win(BUTTON_WIN, wintext, sizeof(wintext),
|
DropListClass win(BUTTON_WIN, wintext, sizeof(wintext),
|
||||||
@@ -1445,11 +1532,12 @@ int MapEditClass::Scenario_Dialog(void)
|
|||||||
action.X+action.Width+10, action.Y, 50, 7*10,
|
action.X+action.Width+10, action.Y, 50, 7*10,
|
||||||
MFCD::Retrieve("EBTN-UP.SHP"),
|
MFCD::Retrieve("EBTN-UP.SHP"),
|
||||||
MFCD::Retrieve("EBTN-DN.SHP"));
|
MFCD::Retrieve("EBTN-DN.SHP"));
|
||||||
win.Add_Item("<none>");
|
//win.Add_Item("<none>");
|
||||||
for (v = VQ_FIRST; v < VQ_COUNT; v++) {
|
for (v = VQ_FIRST; v < VQ_COUNT; v++) {
|
||||||
win.Add_Item(VQName[v]);
|
//win.Add_Item(VQName[v]);
|
||||||
|
scenario_win.push_back(VQName[v]);
|
||||||
}
|
}
|
||||||
win.Set_Selected_Index((int)Scen.WinMovie + 1);
|
//win.Set_Selected_Index((int)Scen.WinMovie + 1);
|
||||||
|
|
||||||
char losetext[_MAX_FNAME+_MAX_EXT];
|
char losetext[_MAX_FNAME+_MAX_EXT];
|
||||||
DropListClass lose(BUTTON_LOSE, losetext, sizeof(losetext),
|
DropListClass lose(BUTTON_LOSE, losetext, sizeof(losetext),
|
||||||
@@ -1457,11 +1545,12 @@ int MapEditClass::Scenario_Dialog(void)
|
|||||||
win.X+win.Width+10, win.Y, 50, 7*10,
|
win.X+win.Width+10, win.Y, 50, 7*10,
|
||||||
MFCD::Retrieve("EBTN-UP.SHP"),
|
MFCD::Retrieve("EBTN-UP.SHP"),
|
||||||
MFCD::Retrieve("EBTN-DN.SHP"));
|
MFCD::Retrieve("EBTN-DN.SHP"));
|
||||||
lose.Add_Item("<none>");
|
//lose.Add_Item("<none>");
|
||||||
for (v = VQ_FIRST; v < VQ_COUNT; v++) {
|
for (v = VQ_FIRST; v < VQ_COUNT; v++) {
|
||||||
lose.Add_Item(VQName[v]);
|
//lose.Add_Item(VQName[v]);
|
||||||
|
scenario_loose.push_back(VQName[v]);
|
||||||
}
|
}
|
||||||
lose.Set_Selected_Index((int)Scen.LoseMovie + 1);
|
//lose.Set_Selected_Index((int)Scen.LoseMovie + 1);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
** House choice list.
|
** House choice list.
|
||||||
@@ -1601,40 +1690,40 @@ int MapEditClass::Scenario_Dialog(void)
|
|||||||
/*
|
/*
|
||||||
** Create the list
|
** Create the list
|
||||||
*/
|
*/
|
||||||
commands = &okbtn;
|
//commands = &okbtn;
|
||||||
cancelbtn.Add_Tail(*commands);
|
//cancelbtn.Add_Tail(*commands);
|
||||||
theaterbtn.Add_Tail(*commands);
|
//theaterbtn.Add_Tail(*commands);
|
||||||
themebtn.Add_Tail(*commands);
|
//themebtn.Add_Tail(*commands);
|
||||||
housebtn.Add_Tail(*commands);
|
//housebtn.Add_Tail(*commands);
|
||||||
techlevel.Add_Tail(*commands);
|
//techlevel.Add_Tail(*commands);
|
||||||
techstatic.Add_Tail(*commands);
|
//techstatic.Add_Tail(*commands);
|
||||||
sourcebtn.Add_Tail(*commands);
|
//sourcebtn.Add_Tail(*commands);
|
||||||
creditbtn.Add_Tail(*commands);
|
//creditbtn.Add_Tail(*commands);
|
||||||
creditstatic.Add_Tail(*commands);
|
//creditstatic.Add_Tail(*commands);
|
||||||
maxunitstatic.Add_Tail(*commands);
|
//maxunitstatic.Add_Tail(*commands);
|
||||||
moneytib.Add_Tail(*commands);
|
//moneytib.Add_Tail(*commands);
|
||||||
smartiesstatic.Add_Tail(*commands);
|
//smartiesstatic.Add_Tail(*commands);
|
||||||
allies.Add_Tail(*commands);
|
//allies.Add_Tail(*commands);
|
||||||
control.Add_Tail(*commands);
|
//control.Add_Tail(*commands);
|
||||||
maxunit.Add_Tail(*commands);
|
//maxunit.Add_Tail(*commands);
|
||||||
nospyplane.Add_Tail(*commands);
|
//nospyplane.Add_Tail(*commands);
|
||||||
skipscore.Add_Tail(*commands);
|
//skipscore.Add_Tail(*commands);
|
||||||
nomapsel.Add_Tail(*commands);
|
//nomapsel.Add_Tail(*commands);
|
||||||
onetime.Add_Tail(*commands);
|
//onetime.Add_Tail(*commands);
|
||||||
inherit.Add_Tail(*commands);
|
//inherit.Add_Tail(*commands);
|
||||||
timercarry.Add_Tail(*commands);
|
//timercarry.Add_Tail(*commands);
|
||||||
tanya.Add_Tail(*commands);
|
//tanya.Add_Tail(*commands);
|
||||||
record.Add_Tail(*commands);
|
//record.Add_Tail(*commands);
|
||||||
truckcrate.Add_Tail(*commands);
|
//truckcrate.Add_Tail(*commands);
|
||||||
endofgame.Add_Tail(*commands);
|
//endofgame.Add_Tail(*commands);
|
||||||
briefing.Add_Tail(*commands);
|
//briefing.Add_Tail(*commands);
|
||||||
intro.Add_Tail(*commands);
|
//intro.Add_Tail(*commands);
|
||||||
action.Add_Tail(*commands);
|
//action.Add_Tail(*commands);
|
||||||
win.Add_Tail(*commands);
|
//win.Add_Tail(*commands);
|
||||||
lose.Add_Tail(*commands);
|
//lose.Add_Tail(*commands);
|
||||||
basebtn.Add_Tail(*commands);
|
//basebtn.Add_Tail(*commands);
|
||||||
smarties.Add_Tail(*commands);
|
//smarties.Add_Tail(*commands);
|
||||||
desc.Add_Tail(*commands);
|
//desc.Add_Tail(*commands);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
** Main Processing Loop
|
** Main Processing Loop
|
||||||
@@ -1676,61 +1765,61 @@ int MapEditClass::Scenario_Dialog(void)
|
|||||||
/*
|
/*
|
||||||
** Refresh display if needed
|
** Refresh display if needed
|
||||||
*/
|
*/
|
||||||
if (display) {
|
//if (display) {
|
||||||
Hide_Mouse();
|
// Hide_Mouse();
|
||||||
|
//
|
||||||
/*
|
// /*
|
||||||
** Draw the background
|
// ** Draw the background
|
||||||
*/
|
// */
|
||||||
Dialog_Box(D_DIALOG_X, D_DIALOG_Y, D_DIALOG_W, D_DIALOG_H);
|
// Dialog_Box(D_DIALOG_X, D_DIALOG_Y, D_DIALOG_W, D_DIALOG_H);
|
||||||
Draw_Caption(TXT_SCENARIO_OPTIONS, D_DIALOG_X, D_DIALOG_Y, D_DIALOG_W);
|
// Draw_Caption(TXT_SCENARIO_OPTIONS, D_DIALOG_X, D_DIALOG_Y, D_DIALOG_W);
|
||||||
|
//
|
||||||
/*
|
// /*
|
||||||
** Display the text that doesn't need drawing except when the entire dialog
|
// ** Display the text that doesn't need drawing except when the entire dialog
|
||||||
** needs to be redrawn.
|
// ** needs to be redrawn.
|
||||||
*/
|
// */
|
||||||
Fancy_Text_Print("Tech Level =", techlevel.X, techlevel.Y-7, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
// Fancy_Text_Print("Tech Level =", techlevel.X, techlevel.Y-7, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
||||||
Fancy_Text_Print("Credits =", creditbtn.X, creditbtn.Y-7, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
// Fancy_Text_Print("Credits =", creditbtn.X, creditbtn.Y-7, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
||||||
Fancy_Text_Print("Unit Max =", maxunit.X, maxunit.Y-7, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
// Fancy_Text_Print("Unit Max =", maxunit.X, maxunit.Y-7, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
||||||
Fancy_Text_Print("IQ =", smarties.X, smarties.Y-7, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
// Fancy_Text_Print("IQ =", smarties.X, smarties.Y-7, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
||||||
Fancy_Text_Print("Prebuild Base:", basebtn.X, basebtn.Y-7, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
// Fancy_Text_Print("Prebuild Base:", basebtn.X, basebtn.Y-7, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
||||||
Fancy_Text_Print("Theater:", theaterbtn.X, theaterbtn.Y-7, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
// Fancy_Text_Print("Theater:", theaterbtn.X, theaterbtn.Y-7, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
||||||
Fancy_Text_Print("Scenario Name:", desc.X, desc.Y-7, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
// Fancy_Text_Print("Scenario Name:", desc.X, desc.Y-7, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
||||||
Fancy_Text_Print("Country:", housebtn.X, housebtn.Y-7, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
// Fancy_Text_Print("Country:", housebtn.X, housebtn.Y-7, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
||||||
Fancy_Text_Print("Home Edge:", sourcebtn.X, sourcebtn.Y-7, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
// Fancy_Text_Print("Home Edge:", sourcebtn.X, sourcebtn.Y-7, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
||||||
Fancy_Text_Print("Allies:", allies.X, allies.Y-7, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
// Fancy_Text_Print("Allies:", allies.X, allies.Y-7, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
||||||
Fancy_Text_Print("Plyr Control:", control.X, control.Y-7, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
// Fancy_Text_Print("Plyr Control:", control.X, control.Y-7, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
||||||
Fancy_Text_Print("Theme:", themebtn.X, themebtn.Y-7, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
// Fancy_Text_Print("Theme:", themebtn.X, themebtn.Y-7, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
||||||
Fancy_Text_Print("Intro:", intro.X, intro.Y-7, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
// Fancy_Text_Print("Intro:", intro.X, intro.Y-7, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
||||||
Fancy_Text_Print("Briefing:", briefing.X, briefing.Y-7, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
// Fancy_Text_Print("Briefing:", briefing.X, briefing.Y-7, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
||||||
Fancy_Text_Print("Action:", action.X, action.Y-7, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
// Fancy_Text_Print("Action:", action.X, action.Y-7, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
||||||
Fancy_Text_Print("Win:", win.X, win.Y-7, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
// Fancy_Text_Print("Win:", win.X, win.Y-7, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
||||||
Fancy_Text_Print("Lose:", lose.X, lose.Y-7, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
// Fancy_Text_Print("Lose:", lose.X, lose.Y-7, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
||||||
Fancy_Text_Print("Store scenario?", record.X+10, record.Y, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
// Fancy_Text_Print("Store scenario?", record.X+10, record.Y, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
||||||
Fancy_Text_Print("Inherit stored scenario?", inherit.X+10, inherit.Y, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
// Fancy_Text_Print("Inherit stored scenario?", inherit.X+10, inherit.Y, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
||||||
Fancy_Text_Print("Auto evac. Tanya (civilian)?", tanya.X+10, tanya.Y, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
// Fancy_Text_Print("Auto evac. Tanya (civilian)?", tanya.X+10, tanya.Y, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
||||||
Fancy_Text_Print("Last mission of game?", endofgame.X+10, endofgame.Y, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
// Fancy_Text_Print("Last mission of game?", endofgame.X+10, endofgame.Y, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
||||||
Fancy_Text_Print("Inherit mission timer from last scenario?", timercarry.X+10, timercarry.Y, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
// Fancy_Text_Print("Inherit mission timer from last scenario?", timercarry.X+10, timercarry.Y, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
||||||
Fancy_Text_Print("Disable spy plane?", nospyplane.X+10, nospyplane.Y, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
// Fancy_Text_Print("Disable spy plane?", nospyplane.X+10, nospyplane.Y, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
||||||
Fancy_Text_Print("Skip the score screen?", skipscore.X+10, skipscore.Y, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
// Fancy_Text_Print("Skip the score screen?", skipscore.X+10, skipscore.Y, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
||||||
Fancy_Text_Print("No map selection (force var 'B')?", nomapsel.X+10, nomapsel.Y, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
// Fancy_Text_Print("No map selection (force var 'B')?", nomapsel.X+10, nomapsel.Y, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
||||||
Fancy_Text_Print("Return to main menu after scenario finishes?", onetime.X+10, onetime.Y, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
// Fancy_Text_Print("Return to main menu after scenario finishes?", onetime.X+10, onetime.Y, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
||||||
Fancy_Text_Print("Truck carries wood crate?", truckcrate.X+10, truckcrate.Y, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
// Fancy_Text_Print("Truck carries wood crate?", truckcrate.X+10, truckcrate.Y, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
||||||
Fancy_Text_Print("Initial money is transferred to silos?", moneytib.X+10, moneytib.Y, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
// Fancy_Text_Print("Initial money is transferred to silos?", moneytib.X+10, moneytib.Y, GadgetClass::Get_Color_Scheme(), TBLACK, TPF_EFNT|TPF_NOSHADOW);
|
||||||
|
//
|
||||||
theaterbtn.Collapse();
|
// theaterbtn.Collapse();
|
||||||
themebtn.Collapse();
|
// themebtn.Collapse();
|
||||||
intro.Collapse();
|
// intro.Collapse();
|
||||||
briefing.Collapse();
|
// briefing.Collapse();
|
||||||
action.Collapse();
|
// action.Collapse();
|
||||||
win.Collapse();
|
// win.Collapse();
|
||||||
lose.Collapse();
|
// lose.Collapse();
|
||||||
basebtn.Collapse();
|
// basebtn.Collapse();
|
||||||
commands->Draw_All(true);
|
// //commands->Draw_All(true);
|
||||||
Show_Mouse();
|
// Show_Mouse();
|
||||||
display = false;
|
// display = false;
|
||||||
dotext = true;
|
// dotext = true;
|
||||||
}
|
//}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
** Display the text of the buttons that could change their text as a
|
** Display the text of the buttons that could change their text as a
|
||||||
@@ -1762,7 +1851,11 @@ int MapEditClass::Scenario_Dialog(void)
|
|||||||
/*
|
/*
|
||||||
** Get user input
|
** Get user input
|
||||||
*/
|
*/
|
||||||
KeyNumType input = commands->Input();
|
KeyNumType input = KN_NONE; //commands->Input();
|
||||||
|
|
||||||
|
KeyNumType _key;
|
||||||
|
int _flags;
|
||||||
|
WWSDL_ProcessEvents(_key, _flags);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
** Process input
|
** Process input
|
||||||
@@ -1899,7 +1992,7 @@ int MapEditClass::Scenario_Dialog(void)
|
|||||||
PlayerPtr->IsPlayerControl = true;
|
PlayerPtr->IsPlayerControl = true;
|
||||||
strncpy(Scen.Description, desc.Get_Text(), sizeof(Scen.Description));
|
strncpy(Scen.Description, desc.Get_Text(), sizeof(Scen.Description));
|
||||||
Scen.Description[sizeof(Scen.Description)-1] = '\0';
|
Scen.Description[sizeof(Scen.Description)-1] = '\0';
|
||||||
Scen.IntroMovie = VQType(intro.Current_Index()-1);
|
Scen.IntroMovie = VQType(scenario_intromovie);
|
||||||
Scen.BriefMovie = VQType(briefing.Current_Index()-1);
|
Scen.BriefMovie = VQType(briefing.Current_Index()-1);
|
||||||
Scen.ActionMovie = VQType(action.Current_Index()-1);
|
Scen.ActionMovie = VQType(action.Current_Index()-1);
|
||||||
Scen.WinMovie = VQType(win.Current_Index()-1);
|
Scen.WinMovie = VQType(win.Current_Index()-1);
|
||||||
@@ -1925,6 +2018,7 @@ int MapEditClass::Scenario_Dialog(void)
|
|||||||
** - Then, re-initialize the TypeClasses for the new Theater
|
** - Then, re-initialize the TypeClasses for the new Theater
|
||||||
*/
|
*/
|
||||||
TheaterType theater = TheaterType(theaterbtn.Current_Index());
|
TheaterType theater = TheaterType(theaterbtn.Current_Index());
|
||||||
|
TheaterType orig_theater = Scen.Theater;
|
||||||
if (theater != orig_theater) {
|
if (theater != orig_theater) {
|
||||||
|
|
||||||
unsigned char theater_mask; // template/terrain mask
|
unsigned char theater_mask; // template/terrain mask
|
||||||
|
|||||||
Reference in New Issue
Block a user