public void HandleSignal(SignalSetCrossData arg) { if (arg.list == null) { DataChances DataChances = Toolbox.Get <DataChances>(); int rolled = RollTypeOfCross(DataChances); //Debug.Log(rolled); Toolbox.Get <DataArtSession>().SetRoadData(rolled, RollCountOfCars(DataChances)); } else { Toolbox.Get <DataArtSession>().CrossSituation = arg.list; } }
int RollTypeOfCross(DataChances dataChances) { if (Roll(dataChances.chanceOfQvalent)) { return(TypeOfCross.Qvalent); } else if (Roll(dataChances.chanceOfUnQvalent)) { return(TypeOfCross.UnQvalent); } else if (Roll(dataChances.chanceOfRegularity)) { return(TypeOfCross.Regularity); } else { return(dataChances.defaultType); } }
int RollCountOfCars(DataChances dataChances) { return(Random.Range(dataChances.MinToRandom, dataChances.MaxToRandom)); }