public static Potion CreatePotion(EPotionType p_type, Int32 p_modelLevel) { List <PotionStaticData> list = new List <PotionStaticData>(StaticDataHandler.GetIterator <PotionStaticData>(EDataType.POTION)); if (m_potionTempFilter == null) { m_potionTempFilter = new List <Int32>(); } m_potionTempFilter.Clear(); for (Int32 i = 0; i < list.Count; i++) { PotionStaticData potionStaticData = list[i]; if (potionStaticData.Type == p_type && potionStaticData.ModelLevel == p_modelLevel) { m_potionTempFilter.Add(i); } } if (m_potionTempFilter.Count > 0) { Int32 index = Random.Range(0, m_potionTempFilter.Count); Int32 index2 = m_potionTempFilter[index]; return(CreateItem <Potion>(list[index2].StaticID)); } throw new NotSupportedException("Potion Data not found! " + p_type); }
public override void Init(Int32 p_staticID) { m_staticData = StaticDataHandler.GetStaticData <PotionStaticData>(EDataType.POTION, p_staticID); m_properties = new Dictionary <String, String>(); InitIncreasingProperties(); InitRemovingProperties(); }