示例#1
0
        public Gedachte InspireerMij(Persoonlijkheid persoonlijkheid)
        {
            Gedachte gedachte = new Gedachte(_iConcept, Cloner.DeepClone(persoonlijkheid));

            if (++_iConcept > 9)
            {
                _iConcept = 1;
            }
            return(gedachte);
        }
示例#2
0
 public void Bid()
 {
     if (_liGedachtes.Count < _iMaxGedachtes)
     {
         Gedachte gedachte = _inspiratie.InspireerMij(_persoonlijkheid);
         Console.WriteLine(string.Format("{0} bidt en komt tot een gedachte: {1}.", _sNaam, gedachte.ToString()));
         _liGedachtes.Add(gedachte);
     }
     else
     {
         Console.WriteLine(string.Format("{0} hoofd zit vol, gedacht niet opgeslagen. Hij gaat even nadenken.", _sNaam));
         if (!DenkNa())
         {
             Console.WriteLine(string.Format("Hoofd van pater {0} zit vol en nadenken brengt geen soelaas.", _sNaam));
             throw new Exception(string.Format("{0} zijn hoofd zit vol!", _sNaam));
         }
     }
 }
示例#3
0
 public void Luister(Woord verteldWoord)
 {
     Console.WriteLine(string.Format("{0} luistert naar de volgende woorden: {1}.", _sNaam, verteldWoord));
     if (_liGedachtes.Count < _iMaxGedachtes)
     {
         Gedachte gedachte = new Gedachte(verteldWoord, _persoonlijkheid);
         Console.WriteLine(string.Format("{0} denkt er dit van: {1}", _sNaam, gedachte));
         _liGedachtes.Add(gedachte);
     }
     else
     {
         Console.WriteLine(string.Format("{0} hoofd zit vol, gedacht niet opgeslagen. Hij gaat even nadenken.", _sNaam));
         if (!DenkNa())
         {
             Console.WriteLine(string.Format("Hoofd van pater {0} zit vol en nadenken brengt geen soelaas.", _sNaam));
             throw new Exception(string.Format("{0} zijn hoofd zit vol!", _sNaam));
         }
     }
 }
示例#4
0
        private void OrdenCreativiteitsgewijs()
        {
            List <Gedachte> liGeordendeGedachtes = new List <Gedachte>();

            foreach (int iConcept in _liGedachtes.Select(gedachte => gedachte.Concept).Distinct())
            {
                int      iKleinsteVerschil = int.MaxValue;
                Gedachte besteGedachte     = null;
                foreach (Gedachte gedachte in _liGedachtes.Where(gedachte => gedachte.Concept == iConcept).Select(gedachte => gedachte))
                {
                    int iVerschil = Math.Abs(gedachte.Persoonlijkheid.Creativiteit - _persoonlijkheid.Creativiteit);
                    if (iVerschil < iKleinsteVerschil)
                    {
                        //besteGedachte = Cloner.DeepClone(gedachte);
                        besteGedachte     = gedachte;
                        iKleinsteVerschil = iVerschil;
                    }
                }
                liGeordendeGedachtes.Add(besteGedachte);
            }
            _liGedachtes = liGeordendeGedachtes;
        }
示例#5
0
 public Woord(Gedachte gedachte, Persoonlijkheid begeestering)
 {
     _gedachte     = gedachte;
     _begeestering = begeestering;
 }