ARKBreedingStats.Form1.updateCreatureValues C# (CSharp) Method

updateCreatureValues() private method

Call this function to update the displayed values of a creature. Usually called after a creature was edited.
private updateCreatureValues ( Creature cr, bool creatureStatusChanged ) : void
cr Creature Creature that was changed
creatureStatusChanged bool
return void
        private void updateCreatureValues(Creature cr, bool creatureStatusChanged)
        {
            // data of the selected creature changed, update listview
            recalculateCreatureValues(cr);
            // if creaturestatus (available/dead) changed, recalculate topstats (dead creatures are not considered there)
            if (creatureStatusChanged)
            {
                calculateTopStats(creatureCollection.creatures.Where(c => c.species == cr.species).ToList());
                filterLib();
            }
            else
            {
                // int listViewLibrary replace old row with new one
                int ci = -1;
                for (int i = 0; i < listViewLibrary.Items.Count; i++)
                {
                    if ((Creature)listViewLibrary.Items[i].Tag == cr)
                    {
                        ci = i;
                        break;
                    }
                }
                if (ci >= 0)
                    listViewLibrary.Items[ci] = createCreatureLVItem(cr, listViewLibrary.Items[ci].Group);
            }
            // recreate ownerlist
            createOwnerList();
            setCollectionChanged(true, cr.species);
        }
Form1