Example #1
0
        private void AddNewDoorsToVillageOrCreateVillage()
        {
            for (int i = 0; i < NewDoors.Count; i++)
            {
                VillageDoorInfo       villagedoorinfo = (VillageDoorInfo)NewDoors[i];
                bool                  flag            = false;
                IEnumerator <Village> iterator        = VillageList.GetEnumerator();

                do
                {
                    if (!iterator.MoveNext())
                    {
                        break;
                    }

                    Village village1 = iterator.Current;
                    int     j        = (int)village1.GetCenter().GetEuclideanDistanceTo(villagedoorinfo.PosX, villagedoorinfo.PosY, villagedoorinfo.PosZ);

                    if (j > 32 + village1.GetVillageRadius())
                    {
                        continue;
                    }

                    village1.AddVillageDoorInfo(villagedoorinfo);
                    flag = true;
                    break;
                }while (true);

                if (!flag)
                {
                    Village village = new Village(WorldObj);
                    village.AddVillageDoorInfo(villagedoorinfo);
                    VillageList.Add(village);
                }
            }

            NewDoors.Clear();
        }