public void DrawLokaiSkill() { for (int i = 0; i < m_BuildItem.LokaiSkills.Count; i++) { BuildLokaiSkill lokaiSkill = m_BuildItem.LokaiSkills.GetAt(i); double minLokaiSkill = lokaiSkill.MinLokaiSkill, maxLokaiSkill = lokaiSkill.MaxLokaiSkill; if (minLokaiSkill < 0) { minLokaiSkill = 0; } AddHtmlLocalized(170, 132 + (i * 20), 200, 18, 1070722, lokaiSkill.LokaiSkillToMake.ToString(), LabelColor, false, false); AddLabel(430, 132 + (i * 20), LabelHue, String.Format("{0:F1}", minLokaiSkill)); } BuildSubResCol res = (m_BuildItem.UseSubRes2 ? m_BuildSystem.BuildSubRes2 : m_BuildSystem.BuildSubRes); int resIndex = -1; BuildContext context = m_BuildSystem.GetContext(m_From); if (context != null) { resIndex = (m_BuildItem.UseSubRes2 ? context.LastResourceIndex2 : context.LastResourceIndex); } bool allRequiredLokaiSkills = true; double chance = m_BuildItem.GetSuccessChance(m_From, resIndex > -1 ? res.GetAt(resIndex).ItemType : null, m_BuildSystem, false, ref allRequiredLokaiSkills); double excepChance = m_BuildItem.GetExceptionalChance(m_BuildSystem, chance, m_From); if (chance < 0.0) { chance = 0.0; } else if (chance > 1.0) { chance = 1.0; } AddHtmlLocalized(170, 80, 250, 18, 1044057, LabelColor, false, false); // Success Chance: AddLabel(430, 80, LabelHue, String.Format("{0:F1}%", chance * 100)); if (m_ShowExceptionalChance) { if (excepChance < 0.0) { excepChance = 0.0; } else if (excepChance > 1.0) { excepChance = 1.0; } AddHtmlLocalized(170, 100, 250, 18, 1044058, 32767, false, false); // Exceptional Chance: AddLabel(430, 100, LabelHue, String.Format("{0:F1}%", excepChance * 100)); } }