-Fixed InputConfig_Load...forgot that the switch syntax from before acts like an OR statement; I thought it meant "don't do anything".
-PCE.
This commit is contained in:
parent
6b9024dd5c
commit
4f2ebdfbd4
|
@ -19,7 +19,6 @@ namespace BizHawk.MultiClient
|
|||
int prevWidth;
|
||||
int prevHeight;
|
||||
const string ControllerStr = "Configure Controllers - ";
|
||||
public static string[] PCEControlList = new string[] { "Up", "Down", "Left", "Right", "I", "II", "Run", "Select" };
|
||||
public static string[] GenesisControlList = new string[] { "Up", "Down", "Left", "Right", "A", "B", "C", "Start", };
|
||||
public static string[] NESControlList = new string[] { "Up", "Down", "Left", "Right", "A", "B", "Select", "Start" };
|
||||
public static string[] TI83ControlList = new string[] { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", ".", "ON",
|
||||
|
@ -30,7 +29,7 @@ namespace BizHawk.MultiClient
|
|||
{
|
||||
{"Genesis 3-Button", new string[8] { "Up", "Down", "Left", "Right", "A", "B", "C", "Start", } },
|
||||
{"NES", new string[8] { "Up", "Down", "Left", "Right", "A", "B", "Select", "Start" } },
|
||||
{"PC Engine", new string[8] { "Up", "Down", "Left", "Right", "I", "II", "Run", "Select" } },
|
||||
{"PC Engine / SGX", new string[8] { "Up", "Down", "Left", "Right", "I", "II", "Run", "Select" } },
|
||||
{"SMS / GG / SG-1000", new string[8] { "Up", "Down", "Left", "Right", "B1", "B2", "Pause", "Reset" } },
|
||||
{
|
||||
// TODO: display shift / alpha names too, Also order these like on the calculator
|
||||
|
@ -42,7 +41,7 @@ namespace BizHawk.MultiClient
|
|||
};
|
||||
public static readonly Dictionary<string, int> PADS = new Dictionary<string, int>()
|
||||
{
|
||||
{"NES", 4}, {"SMS / GG / SG-1000", 2}
|
||||
{"NES", 4}, {"PC Engine / SGX", 5}, {"SMS / GG / SG-1000", 2}
|
||||
};
|
||||
public static string[] AtariControlList = new string[] { "Up", "Down", "Left", "Right", "Button" };
|
||||
private ArrayList Labels;
|
||||
|
@ -184,128 +183,6 @@ namespace BizHawk.MultiClient
|
|||
}
|
||||
}
|
||||
|
||||
private void DoPCE()
|
||||
{
|
||||
Label TempLabel;
|
||||
InputWidget TempTextBox;
|
||||
this.Text = ControllerStr + "PCE Engine / SuperGrafx";
|
||||
ControllerImage.Image = BizHawk.MultiClient.Properties.Resources.PCEngineController;
|
||||
int jpad = this.ControllComboBox.SelectedIndex;
|
||||
string[] ButtonMappings = new string[PCEControlList.Length];
|
||||
|
||||
if (jpad < 5)
|
||||
{
|
||||
ButtonMappings[0] = Global.Config.PCEController[jpad].Up;
|
||||
ButtonMappings[1] = Global.Config.PCEController[jpad].Down;
|
||||
ButtonMappings[2] = Global.Config.PCEController[jpad].Left;
|
||||
ButtonMappings[3] = Global.Config.PCEController[jpad].Right;
|
||||
ButtonMappings[4] = Global.Config.PCEController[jpad].I;
|
||||
ButtonMappings[5] = Global.Config.PCEController[jpad].II;
|
||||
ButtonMappings[6] = Global.Config.PCEController[jpad].Run;
|
||||
ButtonMappings[7] = Global.Config.PCEController[jpad].Select;
|
||||
IDX_CONTROLLERENABLED.Checked = Global.Config.PCEController[jpad].Enabled;
|
||||
}
|
||||
else
|
||||
{
|
||||
ButtonMappings[0] = Global.Config.PCEAutoController[jpad - 5].Up;
|
||||
ButtonMappings[1] = Global.Config.PCEAutoController[jpad - 5].Down;
|
||||
ButtonMappings[2] = Global.Config.PCEAutoController[jpad - 5].Left;
|
||||
ButtonMappings[3] = Global.Config.PCEAutoController[jpad - 5].Right;
|
||||
ButtonMappings[4] = Global.Config.PCEAutoController[jpad - 5].I;
|
||||
ButtonMappings[5] = Global.Config.PCEAutoController[jpad - 5].II;
|
||||
ButtonMappings[6] = Global.Config.PCEAutoController[jpad - 5].Run;
|
||||
ButtonMappings[7] = Global.Config.PCEAutoController[jpad - 5].Select;
|
||||
IDX_CONTROLLERENABLED.Checked = Global.Config.PCEAutoController[jpad - 5].Enabled;
|
||||
}
|
||||
|
||||
Labels.Clear();
|
||||
TextBoxes.Clear();
|
||||
for (int i = 0; i < PCEControlList.Length; i++)
|
||||
{
|
||||
TempLabel = new Label();
|
||||
TempLabel.Text = PCEControlList[i];
|
||||
TempLabel.Location = new Point(8, 20 + (i * 24));
|
||||
Labels.Add(TempLabel);
|
||||
TempTextBox = new InputWidget();
|
||||
TempTextBox.Location = new Point(48, 20 + (i * 24));
|
||||
TextBoxes.Add(TempTextBox);
|
||||
TempTextBox.SetBindings(ButtonMappings[i]);
|
||||
ButtonsGroupBox.Controls.Add(TempTextBox);
|
||||
ButtonsGroupBox.Controls.Add(TempLabel);
|
||||
}
|
||||
Changed = true;
|
||||
}
|
||||
|
||||
private void UpdatePCE(int prev)
|
||||
{
|
||||
ButtonsGroupBox.Controls.Clear();
|
||||
InputWidget TempBox;
|
||||
Label TempLabel;
|
||||
|
||||
if (prev < 5)
|
||||
{
|
||||
TempBox = TextBoxes[0] as InputWidget;
|
||||
Global.Config.PCEController[prev].Up = AppendButtonMapping(TempBox.Text, Global.Config.PCEController[prev].Up);
|
||||
TempBox.Dispose();
|
||||
TempBox = TextBoxes[1] as InputWidget;
|
||||
Global.Config.PCEController[prev].Down = AppendButtonMapping(TempBox.Text, Global.Config.PCEController[prev].Down);
|
||||
TempBox.Dispose();
|
||||
TempBox = TextBoxes[2] as InputWidget;
|
||||
Global.Config.PCEController[prev].Left = AppendButtonMapping(TempBox.Text, Global.Config.PCEController[prev].Left);
|
||||
TempBox.Dispose();
|
||||
TempBox = TextBoxes[3] as InputWidget;
|
||||
Global.Config.PCEController[prev].Right = AppendButtonMapping(TempBox.Text, Global.Config.PCEController[prev].Right);
|
||||
TempBox.Dispose();
|
||||
TempBox = TextBoxes[4] as InputWidget;
|
||||
Global.Config.PCEController[prev].I = AppendButtonMapping(TempBox.Text, Global.Config.PCEController[prev].I);
|
||||
TempBox.Dispose();
|
||||
TempBox = TextBoxes[5] as InputWidget;
|
||||
Global.Config.PCEController[prev].II = AppendButtonMapping(TempBox.Text, Global.Config.PCEController[prev].II);
|
||||
TempBox.Dispose();
|
||||
TempBox = TextBoxes[6] as InputWidget;
|
||||
Global.Config.PCEController[prev].Run = AppendButtonMapping(TempBox.Text, Global.Config.PCEController[prev].Run);
|
||||
TempBox.Dispose();
|
||||
TempBox = TextBoxes[7] as InputWidget;
|
||||
Global.Config.PCEController[prev].Select = AppendButtonMapping(TempBox.Text, Global.Config.PCEController[prev].Select);
|
||||
TempBox.Dispose();
|
||||
Global.Config.PCEController[prev].Enabled = IDX_CONTROLLERENABLED.Checked;
|
||||
}
|
||||
else
|
||||
{
|
||||
TempBox = TextBoxes[0] as InputWidget;
|
||||
Global.Config.PCEAutoController[prev - 5].Up = AppendButtonMapping(TempBox.Text, Global.Config.PCEAutoController[prev - 5].Up);
|
||||
TempBox.Dispose();
|
||||
TempBox = TextBoxes[1] as InputWidget;
|
||||
Global.Config.PCEAutoController[prev - 5].Down = AppendButtonMapping(TempBox.Text, Global.Config.PCEAutoController[prev - 5].Down);
|
||||
TempBox.Dispose();
|
||||
TempBox = TextBoxes[2] as InputWidget;
|
||||
Global.Config.PCEAutoController[prev - 5].Left = AppendButtonMapping(TempBox.Text, Global.Config.PCEAutoController[prev - 5].Left);
|
||||
TempBox.Dispose();
|
||||
TempBox = TextBoxes[3] as InputWidget;
|
||||
Global.Config.PCEAutoController[prev - 5].Right = AppendButtonMapping(TempBox.Text, Global.Config.PCEAutoController[prev - 5].Right);
|
||||
TempBox.Dispose();
|
||||
TempBox = TextBoxes[4] as InputWidget;
|
||||
Global.Config.PCEAutoController[prev - 5].I = AppendButtonMapping(TempBox.Text, Global.Config.PCEAutoController[prev - 5].I);
|
||||
TempBox.Dispose();
|
||||
TempBox = TextBoxes[5] as InputWidget;
|
||||
Global.Config.PCEAutoController[prev - 5].II = AppendButtonMapping(TempBox.Text, Global.Config.PCEAutoController[prev - 5].II);
|
||||
TempBox.Dispose();
|
||||
TempBox = TextBoxes[6] as InputWidget;
|
||||
Global.Config.PCEAutoController[prev - 5].Run = AppendButtonMapping(TempBox.Text, Global.Config.PCEAutoController[prev - 5].Run);
|
||||
TempBox.Dispose();
|
||||
TempBox = TextBoxes[7] as InputWidget;
|
||||
Global.Config.PCEAutoController[prev - 5].Select = AppendButtonMapping(TempBox.Text, Global.Config.PCEAutoController[prev - 5].Select);
|
||||
TempBox.Dispose();
|
||||
Global.Config.PCEAutoController[prev - 5].Enabled = IDX_CONTROLLERENABLED.Checked;
|
||||
}
|
||||
|
||||
for (int i = 0; i < PCEControlList.Length; i++)
|
||||
{
|
||||
TempLabel = Labels[i] as Label;
|
||||
TempLabel.Dispose();
|
||||
}
|
||||
}
|
||||
|
||||
private void DoGen()
|
||||
{
|
||||
Label TempLabel;
|
||||
|
@ -742,18 +619,22 @@ namespace BizHawk.MultiClient
|
|||
case "NES":
|
||||
ControllerImage.Image = BizHawk.MultiClient.Properties.Resources.NESController;
|
||||
controller = Global.Config.NESController;
|
||||
mainController = controller;
|
||||
autoController = Global.Config.NESAutoController;
|
||||
break;
|
||||
case "PC Engine / SGX":
|
||||
ControllerImage.Image = BizHawk.MultiClient.Properties.Resources.PCEngineController;
|
||||
controller = Global.Config.PCEController;
|
||||
autoController = Global.Config.PCEAutoController;
|
||||
break;
|
||||
case "SMS / GG / SG-1000":
|
||||
ControllerImage.Image = BizHawk.MultiClient.Properties.Resources.SMSController;
|
||||
controller = Global.Config.SMSController;
|
||||
mainController = controller;
|
||||
autoController = Global.Config.SMSAutoController;
|
||||
break;
|
||||
default:
|
||||
return;
|
||||
}
|
||||
mainController = controller;
|
||||
int jpad = this.ControllComboBox.SelectedIndex;
|
||||
if (jpad >= PADS[platform])
|
||||
{
|
||||
|
@ -765,6 +646,9 @@ namespace BizHawk.MultiClient
|
|||
case "NES":
|
||||
IDX_CONTROLLERENABLED.Checked = ((NESControllerTemplate)mainController[jpad]).Enabled;
|
||||
break;
|
||||
case "PC Engine / SGX":
|
||||
IDX_CONTROLLERENABLED.Checked = ((PCEControllerTemplate)mainController[jpad]).Enabled;
|
||||
break;
|
||||
case "SMS / GG / SG-1000":
|
||||
IDX_CONTROLLERENABLED.Checked = ((SMSControllerTemplate)mainController[jpad]).Enabled;
|
||||
break;
|
||||
|
@ -790,6 +674,12 @@ namespace BizHawk.MultiClient
|
|||
field = obj.GetType().GetField(fieldName).GetValue(obj);
|
||||
break;
|
||||
}
|
||||
case "PC Engine / SGX":
|
||||
{
|
||||
PCEControllerTemplate obj = (PCEControllerTemplate)controller[jpad];
|
||||
field = obj.GetType().GetField(fieldName).GetValue(obj);
|
||||
break;
|
||||
}
|
||||
case "SMS / GG / SG-1000":
|
||||
{
|
||||
if (button < 6)
|
||||
|
@ -821,17 +711,20 @@ namespace BizHawk.MultiClient
|
|||
{
|
||||
case "NES":
|
||||
controller = Global.Config.NESController;
|
||||
mainController = controller;
|
||||
autoController = Global.Config.NESAutoController;
|
||||
break;
|
||||
case "PC Engine / SGX":
|
||||
controller = Global.Config.PCEController;
|
||||
autoController = Global.Config.PCEAutoController;
|
||||
break;
|
||||
case "SMS / GG / SG-1000":
|
||||
controller = Global.Config.SMSController;
|
||||
mainController = controller;
|
||||
autoController = Global.Config.SMSAutoController;
|
||||
break;
|
||||
default:
|
||||
return;
|
||||
}
|
||||
mainController = controller;
|
||||
if (prev >= PADS[platform])
|
||||
{
|
||||
prev -= PADS[platform];
|
||||
|
@ -842,6 +735,9 @@ namespace BizHawk.MultiClient
|
|||
case "NES":
|
||||
((NESControllerTemplate)mainController[prev]).Enabled = IDX_CONTROLLERENABLED.Checked;
|
||||
break;
|
||||
case "PC Engine / SGX":
|
||||
((PCEControllerTemplate)mainController[prev]).Enabled = IDX_CONTROLLERENABLED.Checked;
|
||||
break;
|
||||
case "SMS / GG / SG-1000":
|
||||
((SMSControllerTemplate)mainController[prev]).Enabled = IDX_CONTROLLERENABLED.Checked;
|
||||
break;
|
||||
|
@ -861,6 +757,14 @@ namespace BizHawk.MultiClient
|
|||
buttonField.SetValue(obj, AppendButtonMapping(TempBox.Text, (string)field));
|
||||
break;
|
||||
}
|
||||
case "PC Engine / SGX":
|
||||
{
|
||||
PCEControllerTemplate obj = (PCEControllerTemplate)controller[prev];
|
||||
FieldInfo buttonField = obj.GetType().GetField(fieldName);
|
||||
field = buttonField.GetValue(obj);
|
||||
buttonField.SetValue(obj, AppendButtonMapping(TempBox.Text, (string)field));
|
||||
break;
|
||||
}
|
||||
case "SMS / GG / SG-1000":
|
||||
{
|
||||
if (button < 6)
|
||||
|
@ -899,7 +803,8 @@ namespace BizHawk.MultiClient
|
|||
Dictionary<string, string> systems = new Dictionary<string, string>()
|
||||
{
|
||||
{"A26", "Atari"}, {"GB", "Gameboy"}, {"GEN", "Sega Genesis"}, {"GG", "SMS / GG / SG-1000"}, {"NES", "NES"},
|
||||
{"SGX", "PC Engine / SGX"}, {"TI83", "TI-83"}
|
||||
{"PCE", "PC Engine / SGX"}, {"SG", "SMS / GG / SG-1000"}, {"SGX", "PC Engine / SGX"},
|
||||
{"SMS", "SMS / GG / SG-1000"}, {"TI83", "TI-83"}
|
||||
};
|
||||
if (systems.ContainsKey(Global.Game.System))
|
||||
this.SystemComboBox.SelectedIndex = SystemComboBox.Items.IndexOf(systems[Global.Game.System]);
|
||||
|
@ -994,12 +899,11 @@ namespace BizHawk.MultiClient
|
|||
}
|
||||
switch (SystemComboBox.SelectedItem.ToString())
|
||||
{
|
||||
case "NES":
|
||||
case "PC Engine / SGX":
|
||||
case "SMS / GG / SG-1000":
|
||||
Do(SystemComboBox.SelectedItem.ToString());
|
||||
break;
|
||||
case "PC Engine / SGX":
|
||||
DoPCE();
|
||||
break;
|
||||
case "Gameboy":
|
||||
DoGameBoy();
|
||||
break;
|
||||
|
@ -1009,9 +913,6 @@ namespace BizHawk.MultiClient
|
|||
case "TI-83":
|
||||
DoTI83();
|
||||
break;
|
||||
case "NES":
|
||||
Do(SystemComboBox.SelectedItem.ToString());
|
||||
break;
|
||||
case "Atari":
|
||||
DoAtari();
|
||||
break;
|
||||
|
@ -1023,12 +924,11 @@ namespace BizHawk.MultiClient
|
|||
{
|
||||
switch (CurSelectConsole)
|
||||
{
|
||||
case "NES":
|
||||
case "PC Engine / SGX":
|
||||
case "SMS / GG / SG-1000":
|
||||
Update(CurSelectController, CurSelectConsole);
|
||||
break;
|
||||
case "PC Engine / SGX":
|
||||
UpdatePCE(CurSelectController);
|
||||
break;
|
||||
case "Gameboy":
|
||||
UpdateGameBoy();
|
||||
break;
|
||||
|
@ -1038,9 +938,6 @@ namespace BizHawk.MultiClient
|
|||
case "TI-83":
|
||||
UpdateTI83();
|
||||
break;
|
||||
case "NES":
|
||||
Update(CurSelectController, CurSelectConsole);
|
||||
break;
|
||||
case "Atari":
|
||||
UpdateAtari(CurSelectController);
|
||||
break;
|
||||
|
|
Loading…
Reference in New Issue