Files
7d2dXG/Mods/zzz_REBIRTH__Utils/Scripts/Dialog/DialogRequirementHasPlayerLevelRebirth.cs
Nathaniel Cosford 062dfab2cd Patched
2025-05-30 01:04:40 +09:30

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;
}
}