tdmike

Group rename script (edited)

Dec 21st, 2015
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. void Main()
  2. {
  3.     var all_groups = new List<IMyBlockGroup>();
  4.     GridTerminalSystem.GetBlockGroups(all_groups);
  5.      
  6.     for (int cur_group_index = 0; cur_group_index < all_groups.Count; ++cur_group_index)
  7.     {
  8.         var cur_group = all_groups[cur_group_index];
  9.         string group_name = cur_group.Name;
  10.         if (group_name.ToLower().StartsWith("numbering and rename to"))
  11.         {
  12.             var blocks_in_group = cur_group.Blocks;
  13.             string base_name = group_name.Substring(24);
  14.                 for (int cur_block = 0; cur_block < blocks_in_group.Count; ++cur_block)
  15.                     blocks_in_group[cur_block].SetCustomName(base_name + ((cur_block == 0) ? "" : (" " + (cur_block + 1).ToString())));
  16.         }
  17.         else if (group_name.ToLower().StartsWith("rename to"))
  18.         {
  19.             var blocks_in_group = cur_group.Blocks;
  20.             string base_name = group_name.Substring(10);
  21.                 for (int cur_block = 0; cur_block < blocks_in_group.Count; ++cur_block)
  22.                     blocks_in_group[cur_block].SetCustomName(base_name);
  23.         }
  24.         else if (group_name.ToLower().StartsWith("prefix with "))
  25.         {
  26.             var blocks_in_group = cur_group.Blocks;
  27.             string prefix = group_name.Substring(12) + " ";
  28.              
  29.             for (int cur_block = 0; cur_block < blocks_in_group.Count; ++cur_block)
  30.                 if (!blocks_in_group[cur_block].CustomName.ToLower().StartsWith(prefix.ToLower()))
  31.                     blocks_in_group[cur_block].SetCustomName(prefix + blocks_in_group[cur_block].CustomName);
  32.         }
  33.     }
  34. }
Add Comment
Please, Sign In to add comment