89 lines
3.4 KiB
C#
89 lines
3.4 KiB
C#
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;
|
|
}
|
|
} |