public bool BumperCheck(Pawn p) { TextBlock TurnLabel = (TextBlock)this.FindName("TurnLabel"); if (p.pawnColor.Equals("yellow") && TurnLabel.Equals("Turn: Yellow") || p.pawnColor.Equals("green") && TurnLabel.Equals("Turn: Green") || p.pawnColor.Equals("red") && TurnLabel.Equals("Turn: Red") || p.pawnColor.Equals("blue") && TurnLabel.Equals("Turn: Blue")) { return(false); } else { return(true); } }
private void TextBlock_Drop(object sender, DragEventArgs e) { TextBlock textBlock = ((TextBlock)e.Source); if (e.Data.GetDataPresent(DataFormats.FileDrop)) { if (!((string[])e.Data.GetData(DataFormats.FileDrop))[0].StartsWith(AppDomain.CurrentDomain.BaseDirectory)) { MessageBox.Show("請將Minecraft_updater置於該目錄/檔案於同一目錄下\r\n詳情請查閱wiki"); return; } if (textBlock.Text.Trim() != "") { switch (MessageBox.Show("不清除直接加入到最後?", "已經含有資料", MessageBoxButton.YesNoCancel)) { case MessageBoxResult.No: textBlock.Text = ""; break; case MessageBoxResult.Yes: break; default: return; } } string[] docPath = (string[])e.Data.GetData(DataFormats.FileDrop); int basepathLength = AppDomain.CurrentDomain.BaseDirectory.Length; string name, MD5, URL; StringBuilder sb = new StringBuilder(), sb2 = new StringBuilder(), sb3 = new StringBuilder(); bool addmodtodelete = checkbox_addmodtodelete.IsChecked.Value; bool addconfigtodelete = checkbox_addconfigtodelete.IsChecked.Value; int TextblockIndex = -1; if (textBlock.Equals(TextBlock1)) { TextblockIndex = 0; } else if (textBlock.Equals(TextBlock2)) { TextblockIndex = 1; } else if (textBlock.Equals(TextBlock3)) { TextblockIndex = 2; } foreach (string path in docPath) { if (File.Exists(path)) { name = path.Substring(basepathLength, path.Length - basepathLength); MD5 = Private_Function.GetMD5(path); URL = textBox.Text + name; int temp = name.IndexOfAny(Delimiter); switch (TextblockIndex) { case 0: sb.AppendLine(String.Format("{0}||{1}||{2}", name, MD5, URL)); if ((addmodtodelete && name.Contains("mod")) || (addconfigtodelete && name.Contains("config"))) { sb2.AppendLine(String.Format("#{0}||{1}||", name.Substring(0, temp == -1 ? name.Length : temp), MD5)); } break; case 1: sb2.AppendLine(String.Format("#{0}||{1}||", name.Substring(0, temp == -1 ? name.Length : temp), MD5)); break; case 2: sb3.AppendLine(String.Format(":{0}||{1}||{2}", name.Substring(0, temp == -1 ? name.Length : temp), MD5, URL)); break; } } else if (Directory.Exists(path)) { DirectoryInfo di = new DirectoryInfo(path); foreach (var fi in di.EnumerateFiles("*", SearchOption.AllDirectories)) { name = fi.FullName.Substring(basepathLength, fi.FullName.Length - basepathLength); MD5 = Private_Function.GetMD5(fi.FullName); URL = textBox.Text + name.Replace("\\", "/"); int temp = name.IndexOfAny(Delimiter); switch (TextblockIndex) { case 0: sb.AppendLine(String.Format("{0}||{1}||{2}", name, MD5, URL)); if ((addmodtodelete && name.Contains("mod")) || (addconfigtodelete && name.Contains("config"))) { sb2.AppendLine(String.Format("#{0}||{1}||", name.Substring(0, temp == -1 ? name.Length : temp), MD5)); } break; case 1: sb2.AppendLine(String.Format("#{0}||{1}||", name.Substring(0, temp == -1 ? name.Length : temp), MD5)); break; case 2: sb3.AppendLine(String.Format(":{0}||{1}||{2}", name.Substring(0, temp == -1 ? name.Length : temp), MD5, URL)); break; } } } } TextBlock1.Text += (sb.ToString()); TextBlock2.Text += (sb2.ToString()); TextBlock3.Text += (sb3.ToString()); } }