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

51 lines
1.4 KiB
C#

/*
* Match at least one of these buffs, by default.
* <requirement type="NPCNotHasBuffSDX, RebirthUtils" requirementtype="Hide" value="buffCursed,buffGodMode,buffImagination" />
* Do not have these buffs
* <requirement type="NPCNotHasBuffSDX, RebirthUtils" requirementtype="Hide" value="!buffCursed" " />
*/
using System.Linq;
public class DialogRequirementNPCNotHasBuffSDX : BaseDialogRequirement
{
public override bool CheckRequirement(EntityPlayer player, EntityNPC talkingTo)
{
var matches = -1;
// If there's more than one buff listed, loop around, recording how many we match.
string[] array = Value.Split(new char[]
{
','
});
if (Value.Contains(","))
{
matches = array.Count(t => talkingTo.Buffs.HasBuff(t));
if (matches > 0)
return false;
return true;
}
else
{
// Reverse condition on the buff.
if (Value.StartsWith("!"))
{
var tempBuff = Value.Replace("!", "");
if (!talkingTo.Buffs.HasBuff(tempBuff))
return false;
}
// If no operator, just check if we have it
if (talkingTo.Buffs.HasBuff(Value))
return false;
}
return false;
}
}