Advertisement
Ryuujisan

Untitled

Nov 15th, 2018
107
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.51 KB | None | 0 0
  1. public static List<CharacterStats> StaffListGenerate()
  2.     {
  3.         List<CharacterStats> staffs = new List<CharacterStats>();
  4.         Room room = Hotel.Me.StaffRoom;
  5.         if(room == null)
  6.         {
  7.             return staffs;
  8.         }
  9.  
  10.         StaffConfig.StaffGenerateCapacities generateCapacities =
  11.             StaffConfig.Instance.staffGenerateCapacitieses.Find(s => s.staffRoomLevel == room.Level);
  12.  
  13.         if(generateCapacities == null)
  14.         {
  15.             return staffs;
  16.         }
  17.  
  18.         for(int i = 0; i < generateCapacities.capacities; ++i)
  19.         {
  20.             StaffConfig.GenerateRarityStaff rarityStaff =
  21.                 StaffConfig.Instance.generateRarityStaves.Find(
  22.                     g => g.divisionLevel == Hotel.Me.stats.resources.Division);
  23.  
  24.             CharacterStats stats = GenerateBaseCharacterStats(CharacterType.Staff);
  25.             stats.Id = (uint)i;
  26.             if(rarityStaff == null)
  27.             {
  28.                 stats.rarity = Rarity.Common;
  29.             }
  30.             else
  31.             {
  32.                 float rng = UnityEngine.Random.Range(0, 100);
  33.  
  34.                 StaffConfig.GeneratePercent percent = rarityStaff.generatePercents.Find(g => g.percent <= rng);
  35.                 if(percent == null)
  36.                 {
  37.                     stats.rarity = Rarity.Common;
  38.                 }
  39.                 else
  40.                 {
  41.                     stats.rarity = percent.rarity;
  42.                 }
  43.             }
  44.  
  45.             stats.StaffInitAttribute();
  46.  
  47.             StaffConfig.AttributeValue attributeValue =
  48.                 StaffConfig.Instance.attributeValues.Find(a => a.rarity == stats.rarity);
  49.  
  50.             if(attributeValue != null)
  51.             {
  52.                 stats.Attributes.ForEach(a => a.value = UnityEngine.Random.Range(attributeValue.minAttributeValue, attributeValue.maxAttributeValue));
  53.             }
  54.  
  55.             staffs.Add(stats);
  56.         }
  57.  
  58.         return staffs;
  59.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement