public override bool HandleInput(KeyEvent KeyEvent) { if (_EditMode == EEditMode.None) { base.HandleInput(KeyEvent); } if (KeyEvent.KeyPressed && !Char.IsControl(KeyEvent.Unicode)) { switch (_EditMode) { case EEditMode.None: break; case EEditMode.PlayerName: SelectSlides[htSelectSlides(SelectSlideProfiles)].RenameValue( CProfiles.AddGetPlayerName(SelectSlides[htSelectSlides(SelectSlideProfiles)].Selection, KeyEvent.Unicode)); break; default: break; } } else { switch (KeyEvent.Key) { case Keys.Escape: CGraphics.FadeTo(EScreens.ScreenMain); break; case Keys.Enter: if (Buttons[htButtons(ButtonExit)].Selected) { CGraphics.FadeTo(EScreens.ScreenMain); } else if (Buttons[htButtons(ButtonSave)].Selected) { SaveProfiles(); } else if (Buttons[htButtons(ButtonNew)].Selected) { NewProfile(); } else if (Buttons[htButtons(ButtonPlayerName)].Selected) { if (CProfiles.NumProfiles > 0 && _EditMode != EEditMode.PlayerName) { _EditMode = EEditMode.PlayerName; } else { _EditMode = EEditMode.None; } } else if (Buttons[htButtons(ButtonDelete)].Selected) { DeleteProfile(); } break; case Keys.Back: if (_EditMode == EEditMode.PlayerName) { SelectSlides[htSelectSlides(SelectSlideProfiles)].RenameValue( CProfiles.GetDeleteCharInPlayerName(SelectSlides[htSelectSlides(SelectSlideProfiles)].Selection)); } else { CGraphics.FadeTo(EScreens.ScreenMain); } break; case Keys.Delete: DeleteProfile(); break; } if (SelectSlides[htSelectSlides(SelectSlideDifficulty)].Selected) { CProfiles.SetDifficulty(SelectSlides[htSelectSlides(SelectSlideProfiles)].Selection, (EGameDifficulty)SelectSlides[htSelectSlides(SelectSlideDifficulty)].Selection); } else if (SelectSlides[htSelectSlides(SelectSlideAvatars)].Selected) { CProfiles.SetAvatar(SelectSlides[htSelectSlides(SelectSlideProfiles)].Selection, SelectSlides[htSelectSlides(SelectSlideAvatars)].Selection); } else if (SelectSlides[htSelectSlides(SelectSlideGuestProfile)].Selected) { CProfiles.SetGuestProfile(SelectSlides[htSelectSlides(SelectSlideProfiles)].Selection, (EOffOn)SelectSlides[htSelectSlides(SelectSlideGuestProfile)].Selection); } else if (SelectSlides[htSelectSlides(SelectSlideActive)].Selected) { CProfiles.SetActive(SelectSlides[htSelectSlides(SelectSlideProfiles)].Selection, (EOffOn)SelectSlides[htSelectSlides(SelectSlideActive)].Selection); } } return(true); }
public override bool HandleInput(SKeyEvent keyEvent) { if (_EditMode == EEditMode.None) { base.HandleInput(keyEvent); } if (keyEvent.KeyPressed && !Char.IsControl(keyEvent.Unicode)) { switch (_EditMode) { case EEditMode.None: break; case EEditMode.PlayerName: _SelectSlides[_SelectSlideProfiles].RenameValue( CProfiles.AddGetPlayerName(_SelectSlides[_SelectSlideProfiles].SelectedTag, keyEvent.Unicode)); _ProfilesChanged = true; break; } } else { switch (keyEvent.Key) { case Keys.Escape: if (_EditMode == EEditMode.PlayerName) { _EditMode = EEditMode.None; } else { CGraphics.FadeTo(EScreen.Main); } break; case Keys.Enter: if (_Buttons[_ButtonExit].Selected) { CGraphics.FadeTo(EScreen.Main); } else if (_Buttons[_ButtonSave].Selected) { _SaveProfiles(); } else if (_Buttons[_ButtonNew].Selected) { _NewProfile(); } else if (_Buttons[_ButtonPlayerName].Selected) { if (CProfiles.NumProfiles > 0 && _EditMode != EEditMode.PlayerName) { _EditMode = EEditMode.PlayerName; } else { _EditMode = EEditMode.None; } } else if (_Buttons[_ButtonDelete].Selected) { _DeleteProfile(); } else if (_Buttons[_ButtonWebcam].Selected) { _OnWebcam(); } else if (_Buttons[_ButtonSaveSnapshot].Selected) { _OnSaveSnapshot(); } else if (_Buttons[_ButtonDiscardSnapshot].Selected) { _OnDiscardSnapshot(); } else if (_Buttons[_ButtonTakeSnapshot].Selected) { _OnTakeSnapshot(); } break; case Keys.Back: if (_EditMode == EEditMode.PlayerName) { _SelectSlides[_SelectSlideProfiles].RenameValue( CProfiles.GetDeleteCharInPlayerName(_SelectSlides[_SelectSlideProfiles].SelectedTag)); _ProfilesChanged = true; } else { CGraphics.FadeTo(EScreen.Main); } break; case Keys.Delete: _DeleteProfile(); break; } if (_SelectSlides[_SelectSlideDifficulty].Selected) { CProfiles.SetDifficulty(_SelectSlides[_SelectSlideProfiles].SelectedTag, (EGameDifficulty)_SelectSlides[_SelectSlideDifficulty].Selection); } else if (_SelectSlides[_SelectSlideAvatars].Selected) { CProfiles.SetAvatar(_SelectSlides[_SelectSlideProfiles].SelectedTag, _SelectSlides[_SelectSlideAvatars].SelectedTag); } else if (_SelectSlides[_SelectSlideUserRole].Selected) { CProfiles.SetUserRoleProfile(_SelectSlides[_SelectSlideProfiles].SelectedTag, (EUserRole)_SelectSlides[_SelectSlideUserRole].Selection); } else if (_SelectSlides[_SelectSlideActive].Selected) { CProfiles.SetActive(_SelectSlides[_SelectSlideProfiles].SelectedTag, (EOffOn)_SelectSlides[_SelectSlideActive].Selection); } } return(true); }
public override bool HandleMouse(MouseEvent MouseEvent) { if (_EditMode == EEditMode.None) { base.HandleMouse(MouseEvent); } if (MouseEvent.LB && IsMouseOver(MouseEvent)) { if (Buttons[htButtons(ButtonExit)].Selected) { CGraphics.FadeTo(EScreens.ScreenMain); } else if (Buttons[htButtons(ButtonSave)].Selected) { SaveProfiles(); } else if (Buttons[htButtons(ButtonNew)].Selected) { NewProfile(); } else if (Buttons[htButtons(ButtonDelete)].Selected) { DeleteProfile(); } else if (Buttons[htButtons(ButtonPlayerName)].Selected) { if (CProfiles.NumProfiles > 0 && _EditMode != EEditMode.PlayerName) { _EditMode = EEditMode.PlayerName; } else { _EditMode = EEditMode.None; } } else if (SelectSlides[htSelectSlides(SelectSlideDifficulty)].Selected) { CProfiles.SetDifficulty(SelectSlides[htSelectSlides(SelectSlideProfiles)].Selection, (EGameDifficulty)SelectSlides[htSelectSlides(SelectSlideDifficulty)].Selection); } else if (SelectSlides[htSelectSlides(SelectSlideAvatars)].Selected) { CProfiles.SetAvatar(SelectSlides[htSelectSlides(SelectSlideProfiles)].Selection, SelectSlides[htSelectSlides(SelectSlideAvatars)].Selection); } else if (SelectSlides[htSelectSlides(SelectSlideGuestProfile)].Selected) { CProfiles.SetGuestProfile(SelectSlides[htSelectSlides(SelectSlideProfiles)].Selection, (EOffOn)SelectSlides[htSelectSlides(SelectSlideGuestProfile)].Selection); } else if (SelectSlides[htSelectSlides(SelectSlideActive)].Selected) { CProfiles.SetActive(SelectSlides[htSelectSlides(SelectSlideProfiles)].Selection, (EOffOn)SelectSlides[htSelectSlides(SelectSlideActive)].Selection); } } if (MouseEvent.RB) { CGraphics.FadeTo(EScreens.ScreenMain); } return(true); }
public override bool HandleMouse(SMouseEvent mouseEvent) { if (_EditMode == EEditMode.None) { base.HandleMouse(mouseEvent); } if (mouseEvent.LB && _IsMouseOverCurSelection(mouseEvent)) { if (_Buttons[_ButtonExit].Selected) { CGraphics.FadeTo(EScreen.Main); } else if (_Buttons[_ButtonSave].Selected) { _SaveProfiles(); } else if (_Buttons[_ButtonNew].Selected) { _NewProfile(); } else if (_Buttons[_ButtonDelete].Selected) { _DeleteProfile(); } else if (_Buttons[_ButtonPlayerName].Selected) { if (CProfiles.NumProfiles > 0 && _EditMode != EEditMode.PlayerName) { _EditMode = EEditMode.PlayerName; } else { _EditMode = EEditMode.None; } } else if (_SelectSlides[_SelectSlideDifficulty].Selected) { CProfiles.SetDifficulty(_SelectSlides[_SelectSlideProfiles].SelectedTag, (EGameDifficulty)_SelectSlides[_SelectSlideDifficulty].Selection); } else if (_SelectSlides[_SelectSlideAvatars].Selected) { CProfiles.SetAvatar(_SelectSlides[_SelectSlideProfiles].SelectedTag, _SelectSlides[_SelectSlideAvatars].SelectedTag); if (CWebcam.IsDeviceAvailable() && _WebcamTexture != null) { _OnDiscardSnapshot(); } } else if (_SelectSlides[_SelectSlideUserRole].Selected) { CProfiles.SetUserRoleProfile(_SelectSlides[_SelectSlideProfiles].SelectedTag, (EUserRole)_SelectSlides[_SelectSlideUserRole].Selection); } else if (_SelectSlides[_SelectSlideActive].Selected) { CProfiles.SetActive(_SelectSlides[_SelectSlideProfiles].SelectedTag, (EOffOn)_SelectSlides[_SelectSlideActive].Selection); } else if (_Buttons[_ButtonWebcam].Selected) { _OnWebcam(); } else if (_Buttons[_ButtonSaveSnapshot].Selected) { _OnSaveSnapshot(); } else if (_Buttons[_ButtonDiscardSnapshot].Selected) { _OnDiscardSnapshot(); } else if (_Buttons[_ButtonTakeSnapshot].Selected) { _OnTakeSnapshot(); } } if (mouseEvent.RB) { CGraphics.FadeTo(EScreen.Main); } return(true); }