示例#1
0
    protected bool GetRandomChance(RatingScale probability)
    {
        if (probability <= 0)
        {
            return(false);
        }

        return(random.Next() % (int)((1 / (float)((int)probability * (int)probability)) * 100000) < (int)probability);
    }
示例#2
0
        public void TestConstructor3_1()
        {
            var levels = (new float[] { 0f, 1f }).ToList();
            var scale  = new RatingScale(new RatingScale(levels), new RatingScale(levels));

            Assert.AreEqual(0f, scale.Min);
            Assert.AreEqual(1f, scale.Max);
            Assert.AreEqual(2, scale.Levels.Count);
            Assert.AreEqual(0, scale.LevelID[0f]);
            Assert.AreEqual(1, scale.LevelID[1f]);
        }
示例#3
0
        public void TestConstructor2()
        {
            var scale = new RatingScale(CreateRatings());

            Assert.AreEqual(0.2f, scale.Min);
            Assert.AreEqual(0.6f, scale.Max);
            Assert.AreEqual(4, scale.Levels.Count);
            Assert.AreEqual(0, scale.LevelID[0.2f]);
            Assert.AreEqual(1, scale.LevelID[0.3f]);
            Assert.AreEqual(2, scale.LevelID[0.4f]);
            Assert.AreEqual(3, scale.LevelID[0.6f]);
        }
示例#4
0
        public void TestConstructor3_2()
        {
            var levels = (new float[] { 0f, 1f }).ToList();
            var scale  = new RatingScale(new RatingScale(levels), new RatingScale(CreateRatings()));

            Assert.AreEqual(0f, scale.Min);
            Assert.AreEqual(1f, scale.Max);
            Assert.AreEqual(6, scale.Levels.Count);
            Assert.AreEqual(0, scale.LevelID[0f]);
            Assert.AreEqual(1, scale.LevelID[0.2f]);
            Assert.AreEqual(2, scale.LevelID[0.3f]);
            Assert.AreEqual(3, scale.LevelID[0.4f]);
            Assert.AreEqual(4, scale.LevelID[0.6f]);
            Assert.AreEqual(5, scale.LevelID[1f]);
        }
示例#5
0
 public RegionBase(int mapResoultion, int terrainHeight, Corners corner, Regions region, RatingScale maxHeight, RatingScale minHeight, RatingScale hillHeight, RatingScale hillyness, RatingScale hillWidth)
 {
     Length = mapResoultion / 2;
     ResetMap();
     Corner           = corner;
     MaxHeight        = maxHeight;
     MinHeight        = minHeight;
     Hillyness        = hillyness;
     HillHeight       = hillHeight;
     random           = random ?? new System.Random();
     GrassLandsRadius = Length / 4;
     MaxNumberOfMountainsAtOneTime = 5;
     HillWidth     = hillWidth;
     TerrainHeight = terrainHeight;
     Region        = region;
 }
示例#6
0
    public TreeBase(Rect spawnBounds, Regions region, RatingScale spawnRate)
    {
        rand        = new System.Random();
        SpawnBounds = spawnBounds;
        SpawnRate   = spawnRate;
        parent      = GameObject.Find("All Trees").transform;
        Prefabs     = new Dictionary <GameObject, float>();
        var tempPrefabs = Manager.Trees.Where(t => t.name.ToLower().Contains(region.ToString().ToLower()));

        foreach (var p in tempPrefabs)
        {
            var curr = int.Parse(p.name.Split('_').Last());

            Prefabs.Add(p, curr + pSum);

            pSum += curr;
        }
    }
示例#7
0
    protected int GetRandomHillWidth()
    {
        if ((int)HillWidth == 0)
        {
            return(0);
        }

        if ((int)HillWidth == -1)
        {
            //TODO
        }

        var probabilityArray         = new RatingScale[10];
        var numberOfGivenHillHeights = (int)Mathf.Floor((int)Hillyness / 2f);

        for (int i = 0; i < numberOfGivenHillHeights; i++)
        {
            probabilityArray[i] = HillWidth;
        }

        int modifier = 0;

        for (int i = numberOfGivenHillHeights; i < probabilityArray.Length; i++)
        {
            var val = ((int)HillWidth + modifier);
            if (val > 10 || val < 1)
            {
                modifier = 0;
                val      = ((int)HillWidth + modifier);
            }
            probabilityArray[i] = (RatingScale)val;


            modifier = (modifier > 0 ? -1 : 1) * (Mathf.Abs(modifier) + (modifier < 0 ? 0 : 1));
        }

        return((int)probabilityArray[random.Next() % 10]);
    }
 public JsonResult GetRatingScale(int from, int to)
 {
     System.Diagnostics.StackFrame stackFrame = new System.Diagnostics.StackFrame();
     System.Reflection.MethodBase methodBase = stackFrame.GetMethod();
     log.Debug("Start: " + methodBase.Name);
     try
     {
         var data = new List<RatingScale>();
         for (int i = from; i <= to; i++)
         {
             var scale = new RatingScale
             {
                 Id = i,
             };
             data.Add(scale);
         }
         return Json(data);
     }
     catch (Exception ex)
     {
         log.Error("Error: " + ex);
         return Json("");
     }
     finally
     {
         log.Debug("End: " + methodBase.Name);
     }
 }
        public JsonResult GetListValues(string givenOptions, int includeOthers)
        {
            System.Diagnostics.StackFrame stackFrame = new System.Diagnostics.StackFrame();
            System.Reflection.MethodBase methodBase = stackFrame.GetMethod();
            log.Debug("Start: " + methodBase.Name);
            try
            {
                var data = new List<RatingScale>();
                string[] values = givenOptions.Split(',');
                var last = 0;
                for (int i = 0; i < values.Length; i++)
                {
                    if (!string.IsNullOrEmpty(values[i]))
                    {
                        var scale = new RatingScale
                        {
                            Id = i,
                            Text = values[i],
                            Name = givenOptions,
                        };
                        data.Add(scale);
                        last = i;
                    }

                }
                if (includeOthers == 1)
                {
                    var scale = new RatingScale
                    {
                        Id = last + 1,
                        Text = "Others",
                        Name = givenOptions,
                    };
                    data.Add(scale);
                }
                return Json(data);
            }
            catch (Exception ex)
            {
                log.Error("Error: " + ex);
                return Json("");
            }
            finally
            {
                log.Debug("End: " + methodBase.Name);
            }
        }
        public JsonResult GetDDLValues(int from, int to)
        {
            System.Diagnostics.StackFrame stackFrame = new System.Diagnostics.StackFrame();
            System.Reflection.MethodBase methodBase = stackFrame.GetMethod();
            log.Debug("Start: " + methodBase.Name);
            try
            {
                List<RatingScale> data = new List<RatingScale>();

                if (from == 1 && to == 1)
                {
                    data = new List<RatingScale>
                {
                    new RatingScale {Id=76, Text="76", Name="76"},
                    new RatingScale {Id=78,Text="78", Name="78"},
                };
                }

                else if (from == 2 && to == 2)
                {
                    var designations = CSS2.Areas.Masters.Models.Masters.ModeOfDesignations.GetModeOfDesignations();
                    foreach (var i in designations)
                    {
                        var designation = new RatingScale
                        {
                            Id = i.ID,
                            Name = i.Name,
                            Text = i.Name
                        };
                        data.Add(designation);
                    }
                    //data = new List<RatingScale>
                    //{

                    //    new RatingScale {Id=1, Name="Manager", Text="Manager"},
                    //    new RatingScale {Id=2, Name="Director", Text="Director"},
                    //};
                }

                ////*********Added by Sudheer to get the Currency in AllotmentDetails PopUp********
                else if (from == 4 && to == 4)
                {
                    var currencies = CSS2.Areas.Masters.Models.Masters.Currency.GetCurrencyDetails();
                    foreach (var i in currencies)
                    {
                        var currency = new RatingScale
                        {
                            Id = i.CurrencyID,
                            Name = i.CurrencyName,
                            Text = i.CurrencyName
                        };
                        data.Add(currency);
                    }
                }

                return Json(data);
            }
            catch (Exception ex)
            {
                log.Error("Error: " + ex);
                return Json("");
            }
            finally
            {
                log.Debug("End: " + methodBase.Name);
            }
        }