private void B_EditVillagerPlayerMemories_Click(object sender, EventArgs e) { if (ModifierKeys == Keys.Shift) { var prompt = WinFormsUtil.Prompt(MessageBoxButtons.YesNo, MessageStrings.MsgVillagerFriendshipMax); if (prompt != DialogResult.Yes) { return; } foreach (var villager in Villagers) { villager.SetFriendshipAll(); } System.Media.SystemSounds.Asterisk.Play(); return; } var v = Villagers[VillagerIndex]; using var editor = new VillagerMemoryEditor(v); if (editor.ShowDialog() == DialogResult.OK) { } // editor saves our changes }
private void Menu_SavePNG_Click(object sender, EventArgs e) { var pb = WinFormsUtil.GetUnderlyingControl<PictureBox>(sender); if (pb?.Image == null) { WinFormsUtil.Alert(MessageStrings.MsgNoPictureLoaded); return; } CM_Picture.Close(ToolStripDropDownCloseReason.CloseCalled); const string name = "map"; using var sfd = new SaveFileDialog { Filter = "png file (*.png)|*.png|All files (*.*)|*.*", FileName = $"{name}.png", }; if (sfd.ShowDialog() != DialogResult.OK) return; if (!Menu_SavePNGTerrain.Checked) { PB_Map.Image.Save(sfd.FileName, ImageFormat.Png); } else if (!Menu_SavePNGItems.Checked) { PB_Map.BackgroundImage.Save(sfd.FileName, ImageFormat.Png); } else { var img = (Bitmap)PB_Map.BackgroundImage.Clone(); using var gfx = Graphics.FromImage(img); gfx.DrawImage(PB_Map.Image, new Point(0, 0)); img.Save(sfd.FileName, ImageFormat.Png); } }
private void B_Save_Click(object sender, EventArgs e) { var unsupported = Map.Items.GetUnsupportedTiles(); if (unsupported.Count != 0) { var err = MessageStrings.MsgFieldItemUnsupportedLayer2Tile; var ask = MessageStrings.MsgAskContinue; var prompt = WinFormsUtil.Prompt(MessageBoxButtons.YesNo, err, ask); if (prompt != DialogResult.Yes) return; } Map.Items.Save(); SAV.SetTerrainTiles(Map.Terrain.Tiles); SAV.SetAcreBytes(Map.Terrain.BaseAcres); SAV.OutsideFieldTemplateUniqueId = (ushort)NUD_MapAcreTemplateOutside.Value; SAV.MainFieldParamUniqueID = (ushort)NUD_MapAcreTemplateField.Value; SAV.Buildings = Map.Buildings; SAV.EventPlazaLeftUpX = Map.PlazaX; SAV.EventPlazaLeftUpZ = Map.PlazaY; Close(); }
public static byte[] LoadFlags(int size, string name) { using var ofd = new OpenFileDialog { Filter = "New Horizons Flag List (*.nhfl)|*.nhfl|All files (*.*)|*.*", FileName = $"{name}.nhfl", }; if (ofd.ShowDialog() != DialogResult.OK) { return(System.Array.Empty <byte>()); } var file = ofd.FileName; var fi = new FileInfo(file); int expectLength = size; if (fi.Length != expectLength) { WinFormsUtil.Error(MessageStrings.MsgCanceling, string.Format(MessageStrings.MsgDataSizeMismatchImport, fi.Length, expectLength)); return(System.Array.Empty <byte>()); } return(File.ReadAllBytes(file)); }
private void Menu_Open_Click(object sender, EventArgs e) { WinFormsUtil.Alert("I don't do anything yet!"); }
private void CB_Goto_SelectedValueChanged(object sender, EventArgs e) => CLB_Recipes.SelectedIndex = WinFormsUtil.GetIndex(CB_Goto);
private void Menu_Save_Click(object sender, EventArgs e) { SaveAll(); SAV.Save((uint)DateTime.Now.Ticks); WinFormsUtil.Alert("Saved all save data!"); }
private void CB_KeyDown(object sender, KeyEventArgs e) => WinFormsUtil.RemoveDropCB(sender, e);
private void CB_CountAlias_SelectedValueChanged(object sender, EventArgs e) { var val = WinFormsUtil.GetIndex((ComboBox)sender); NUD_Count.Value = Math.Max(0, Math.Min(NUD_Count.Maximum, val)); }
private void B_LoadDesign_Click(object sender, EventArgs e) { if (ModifierKeys == Keys.Shift) { using var fbd = new FolderBrowserDialog(); if (fbd.ShowDialog() != DialogResult.OK) { return; } var dir = Path.GetDirectoryName(fbd.SelectedPath); if (dir == null || !Directory.Exists(dir)) { return; } Patterns.Load(fbd.SelectedPath); LoadPattern(Patterns[0]); return; } var original = Patterns[Index]; var name = original.DesignName; using var ofd = new OpenFileDialog { Filter = "New Horizons PRO Design (*.nhpd)|*.nhpd|All files (*.*)|*.*", FileName = $"{name}.nhd", }; if (ofd.ShowDialog() != DialogResult.OK) { return; } var file = ofd.FileName; var expectLength = original.Data.Length; var fi = new FileInfo(file); if (fi.Length != expectLength) { var msg = string.Format(MessageStrings.MsgDataSizeMismatchImport, fi.Length, expectLength); WinFormsUtil.Error(MessageStrings.MsgCanceling, msg); return; } var data = File.ReadAllBytes(ofd.FileName); var d = new DesignPatternPRO(data); var player0 = original; if (!d.IsOriginatedFrom(player0)) { var notHost = string.Format(MessageStrings.MsgDataDidNotOriginateFromHost_0, player0.PlayerName); var result = WinFormsUtil.Prompt(MessageBoxButtons.YesNoCancel, notHost, MessageStrings.MsgAskUpdateValues); if (result == DialogResult.Cancel) { return; } if (result == DialogResult.Yes) { d.ChangeOrigins(player0, d.Data); } } Patterns[Index] = d; LoadPattern(d); }
private void CB_NamedItemArgument_SelectedValueChanged(object sender, EventArgs e) { var val = WinFormsUtil.GetIndex(CB_NamedItemArgument); NUD_Count.Value = Math.Max(0, Math.Min(NUD_Count.Maximum, val)); }