What about checking the name of the item equip? instead of checking the card?
I tried this but its not working either..
Script: <" if(readparam(bDex) > 72 && getequipname(8) = "of Bigmouth" && getequipname(128) = "of Bigmouth") { bonus bVariableCastrate,-100; } else { bonus bVariableCastrate,-30; } ">
This is an incorrect string comparison (it'd be an incorrect numerical comparison as well):
getequipname(8) = "of Bigmouth"
A proper comparison would be:
getequipname(8) == "of Bigmouth"
In any case, this check wouldn't work at all for the purpose intended.
Check if two of the card is equipped:
if(readparam(bDex) < 72 || isequippedcnt(Berzebub_Card) < 2) { bonus bVariableCastrate, -30;} else { bonus bVariableCastrate, -30 * isequippedcnt(Berzebub_Card);}
However, I'd just write it like this:
if(readparam(bDex) < 72) { bonus bVariableCastrate, -30;} else { bonus bVariableCastrate, -30 * isequippedcnt(Berzebub_Card);}
or like this:
bonus bVariableCastrate, readparam(bDex) < 72 ? -30 : -30 * isequippedcnt(Berzebub_Card);
This effect multiplies the rate at which Berzebub Card takes effect according to the amount of Berzebub Cards they have equipped - but only if the player's DEX reads 72 or higher.
- 1 Berzebub card is -30%
- 2 Berzebub cards is -60%
- 3 Berzebub cards is -90%
...and so on; if (for some reason) you could equip more than three, the effect's rate would increase in increments of -30.