/**
  * zwraca grupę, jeśli grupa nie istnieje zwraca nową
  */
 public Group GetGroup(string groupName)
 {
     Group group;
     if (groupList.TryGetValue (groupName, out group)) {//znaczy że dana grupa już istnieje
         return group;
     } else { // trzeba utworzyć grupę
         group= new Group();
         group.name = groupName;
         groupList.Add(groupName, group);
         return group;
     }
 }
 public void AddHex(string groupName, HexField hex)
 {
     Group group;
     if (groupList.TryGetValue (groupName, out group)) {//znaczy że dana grupa już istnieje
         bool isNew = true;
         foreach(string actualHexGroupName in hex.groupListNames){
             if(actualHexGroupName == groupName){
                 isNew = false;
                 break;
             }
         }
         if(isNew == true){//dany hex nie jest w tej grupie
             group.list.Add(hex);
             hex.groupListNames.Add(groupName);
         }
     } else { // trzeba utworzyć grupę
         group= new Group();
         group.name = groupName;
         group.list.Add(hex);
         groupList.Add(groupName, group);
         hex.groupListNames.Add(groupName);
     }
 }