public class DialogRequirementHasPlayerLevelRebirth : BaseDialogRequirement { public override bool CheckRequirement(EntityPlayer player, EntityNPC talkingTo) { // If value is not specified, accepted it. //Log.Out("DialogRequirementHasPlayerLevelRebirth-CheckRequirement START"); if (string.IsNullOrEmpty(Value)) { //Log.Out("DialogRequirementHasPlayerLevelRebirth-CheckRequirement 1"); return false; } float numPlayerLevel = player.Buffs.GetCustomVar(ID); string tempValue = Value; //Log.Out("DialogRequirementHasPlayerLevelRebirth-CheckRequirement: Value: " + Value); //Log.Out("DialogRequirementHasPlayerLevelRebirth-CheckRequirement: tempValue: " + tempValue); if (tempValue.Contains(">=")) { //Log.Out("DialogRequirementHasPlayerLevelRebirth-CheckRequirement 2a"); tempValue = tempValue.Replace(">=", ""); float.TryParse(tempValue, out var flValue); if (numPlayerLevel >= flValue) { //Log.Out("DialogRequirementHasPlayerLevelRebirth-CheckRequirement 2b"); return true; } } else if (tempValue.Contains("LTE")) { //Log.Out("DialogRequirementHasPlayerLevelRebirth-CheckRequirement 3a"); tempValue = tempValue.Replace("LTE", ""); float.TryParse(tempValue, out var flValue); if (numPlayerLevel <= flValue) { //Log.Out("DialogRequirementHasPlayerLevelRebirth-CheckRequirement 3b"); return true; } } else if (tempValue.Contains(">")) { //Log.Out("DialogRequirementHasPlayerLevelRebirth-CheckRequirement 4a"); tempValue = tempValue.Replace(">", ""); float.TryParse(tempValue, out var flValue); if (numPlayerLevel > flValue) { //Log.Out("DialogRequirementHasPlayerLevelRebirth-CheckRequirement 4b"); return true; } } else if (tempValue.Contains("LT")) { //Log.Out("DialogRequirementHasPlayerLevelRebirth-CheckRequirement 5a"); tempValue = tempValue.Replace("LT", ""); float.TryParse(tempValue, out var flValue); if (numPlayerLevel < flValue) { //Log.Out("DialogRequirementHasPlayerLevelRebirth-CheckRequirement 5b"); return true; } } else if (tempValue.Contains("!=")) { //Log.Out("DialogRequirementHasPlayerLevelRebirth-CheckRequirement 6a"); tempValue = tempValue.Replace("!=", ""); float.TryParse(tempValue, out var flValue); if (numPlayerLevel != flValue) { //Log.Out("DialogRequirementHasPlayerLevelRebirth-CheckRequirement 6b"); return true; } } else { //Log.Out("DialogRequirementHasPlayerLevelRebirth-CheckRequirement 7a"); float.TryParse(tempValue, out var flValue); if (numPlayerLevel == flValue) { //Log.Out("DialogRequirementHasPlayerLevelRebirth-CheckRequirement 7b"); return true; } } //Log.Out("DialogRequirementHasPlayerLevelRebirth-CheckRequirement END"); return false; } }