Esempio n. 1
0
    void GenerateOscillation()
    {
        foreach (Trait trait in traits)
        {
            priceOscillation[trait] = new List <bool>();

            float frequency = trait.GetTraitOscillationFrequency();
            bool  direction = UnityEngine.Random.Range(0f, 1.0f) < upwardProbability? true:false; //starting upper direction

            for (int i = 0; i < 30; i++)                                                          //30=arbitrary
            {
                if (priceOscillation[trait].Count >= 30)
                {
                    break;
                }
                //double num = RandomGaussian(frequency, 1);
                //Debug.Log(num);
                double numUnity = RandomGaussianUnity(frequency, 1);
                //Debug.Log(numUnity);
                int rows = (int)numUnity;
                //Debug.Log(rows);
                rows = Mathf.Max(1, rows);
                //Debug.Log(UnityEngine.Random.Range(0f,1f));
                for (int j = 0; j < rows; j++)
                {
                    //Debug.Log(priceOscillation[trait]);
                    //MyDebug.List(priceOscillation[trait]);
                    priceOscillation[trait].Add(direction);
                }
                direction = !direction;
            }
            MyDebug.List(priceOscillation[trait]);
        }
    }