예제 #1
0
 private void testingStatIOsRecalculateValue(StatIO sIo)
 {
     sIo.BreedingValue = StatValueCalculation.CalculateValue(speciesSelector1.SelectedSpecies, sIo.statIndex, sIo.LevelWild, 0, true, 1, 0);
     sIo.Input         = StatValueCalculation.CalculateValue(speciesSelector1.SelectedSpecies, sIo.statIndex, sIo.LevelWild, sIo.LevelDom,
                                                             rbTamedTester.Checked || rbBredTester.Checked,
                                                             rbBredTester.Checked ? 1 : (double)NumericUpDownTestingTE.Value / 100,
                                                             rbBredTester.Checked ? (double)numericUpDownImprintingBonusTester.Value / 100 : 0);
 }
예제 #2
0
        private void statIO_Click(object sender, EventArgs e)
        {
            StatIO se = (StatIO)sender;

            if (se != null)
            {
                setActiveStat(statIOs.IndexOf(se));
            }
        }
예제 #3
0
        /// <summary>
        /// Updates the values in the testing-statIOs
        /// </summary>
        /// <param name="sIo"></param>
        private void testingStatIOValueUpdate(StatIO sIo)
        {
            testingStatIOsRecalculateValue(sIo);

            // update Torpor-level if changed value is not from torpor-StatIO
            if (_updateTorporInTester && sIo.statIndex != (int)StatNames.Torpidity)
            {
                int torporLvl = 0;
                for (int s = 0; s < Values.STATS_COUNT; s++)
                {
                    if (s != (int)StatNames.Torpidity)
                    {
                        torporLvl += _testingIOs[s].LevelWild > 0 ? _testingIOs[s].LevelWild : 0;
                    }
                }
                _testingIOs[(int)StatNames.Torpidity].LevelWild = torporLvl + _hiddenLevelsCreatureTester;
            }

            int domLevels = 0;

            for (int s = 0; s < Values.STATS_COUNT; s++)
            {
                domLevels += _testingIOs[s].LevelDom;
            }
            labelDomLevelSum.Text      = $"Dom Levels: {domLevels}/{_creatureCollection.maxDomLevel}";
            labelDomLevelSum.BackColor = domLevels > _creatureCollection.maxDomLevel ? Color.LightSalmon : Color.Transparent;
            labelTesterTotalLevel.Text = $"Total Levels: {_testingIOs[(int)StatNames.Torpidity].LevelWild + domLevels + 1}/{_testingIOs[(int)StatNames.Torpidity].LevelWild + 1 + _creatureCollection.maxDomLevel}";
            creatureInfoInputTester.parentListValid = false;

            int[] levelsWild = _testingIOs.Select(s => s.LevelWild).ToArray();
            if (!_testingIOs[2].Enabled)
            {
                levelsWild[2] = 0;
            }
            radarChart1.SetLevels(levelsWild);
            statPotentials1.SetLevels(levelsWild, false);
            //statGraphs1.setGraph(sE, 0, testingIOs[0].LevelWild, testingIOs[0].LevelDom, !radioButtonTesterWild.Checked, (double)NumericUpDownTestingTE.Value / 100, (double)numericUpDownImprintingBonusTester.Value / 100);

            if (sIo.statIndex == (int)StatNames.Torpidity)
            {
                lbWildLevelTester.Text = "PreTame Level: " + Math.Ceiling(Math.Round((_testingIOs[(int)StatNames.Torpidity].LevelWild + 1) / (1 + NumericUpDownTestingTE.Value / 200), 6));
            }
        }
예제 #4
0
        /// <summary>
        /// Updates the values in the testing-statIOs
        /// </summary>
        /// <param name="sIo"></param>
        private void statIOUpdateValue(StatIO sIo)
        {
            sIo.BreedingValue = Stats.calculateValue(cbbStatTestingSpecies.SelectedIndex, sIo.statIndex, sIo.LevelWild, 0, true, 1, 0);
            sIo.Input = Stats.calculateValue(cbbStatTestingSpecies.SelectedIndex, sIo.statIndex, sIo.LevelWild, sIo.LevelDom, (checkBoxStatTestingTamed.Checked || checkBoxStatTestingBred.Checked), (checkBoxStatTestingBred.Checked ? 1 : (double)NumericUpDownTestingTE.Value / 100), (checkBoxStatTestingBred.Checked ? (double)numericUpDownImprintingBonusTester.Value / 100 : 0));

            // update Torpor-level if changed value is not from torpor-StatIO
            if (updateTorporInTester && sIo != statTestingTorpor)
            {
                int torporLvl = 0;
                for (int s = 0; s < 7; s++)
                {
                    torporLvl += testingIOs[s].LevelWild;
                }
                testingIOs[7].LevelWild = torporLvl;
            }
            int domLevels = 0;
            for (int s = 0; s < 8; s++)
            {
                domLevels += testingIOs[s].LevelDom;
            }
            labelDomLevelSum.Text = "Dom Levels: " + domLevels.ToString() + "/" + creatureCollection.maxDomLevel;
            if (domLevels > creatureCollection.maxDomLevel)
                labelDomLevelSum.BackColor = Color.LightSalmon;
            else
                labelDomLevelSum.BackColor = Color.Transparent;
            labelTesterTotalLevel.Text = "Total Levels: " + (testingIOs[7].LevelWild + domLevels + 1) + "/" + (testingIOs[7].LevelWild + 1 + creatureCollection.maxDomLevel);
            creatureInfoInputTester.parentListValid = false;
        }
예제 #5
0
 /// <summary>
 /// Display the wild-levels, assuming it's a wild creature. Used for quick checking
 /// </summary>
 /// <param name="sIO"></param>
 private void statIOQuickWildLevelCheck(StatIO sIO)
 {
     if (checkBoxQuickWildCheck.Checked)
     {
         int lvlWild = (int)Math.Round((sIO.Input - Values.V.species[sE].stats[sIO.statIndex].BaseValue) / (Values.V.species[sE].stats[sIO.statIndex].BaseValue * Values.V.species[sE].stats[sIO.statIndex].IncPerWildLevel));
         sIO.LevelWild = (lvlWild < 0 ? 0 : lvlWild);
         sIO.LevelDom = 0;
     }
 }