Search in sources :

Example 1 with MOD

use of main.ability.effects.Effect.MOD in project Eidolons by IDemiurge.

the class EffectFinder method initParamModEffects.

public static void initParamModEffects(Effects modEffects, Map<PARAMETER, String> map, Ref ref) {
    for (PARAMETER param : map.keySet()) {
        String amount = map.get(param);
        MOD code = MOD.MODIFY_BY_CONST;
        if (!amount.contains(StringMaster.BASE_CHAR)) {
            if (amount.contains(StringMaster.MOD)) {
                code = MOD.MODIFY_BY_PERCENT;
                amount = amount.replace(StringMaster.MOD, "");
            }
            if (amount.contains(StringMaster.SET)) {
                code = MOD.SET;
                amount = amount.replace(StringMaster.SET, "");
            }
        }
        if (ref.getId(KEYS.INFO) == null) {
            ref.setID(KEYS.INFO, ref.getId(KEYS.SKILL));
        }
        amount = TextParser.parse(amount, ref, TextParser.INFO_PARSING_CODE);
        modEffects.add(new ModifyValueEffect(param, code, amount));
    }
}
Also used : MOD(main.ability.effects.Effect.MOD) ModifyValueEffect(eidolons.ability.effects.common.ModifyValueEffect) PARAMETER(main.content.values.parameters.PARAMETER)

Example 2 with MOD

use of main.ability.effects.Effect.MOD in project Eidolons by IDemiurge.

the class DialogueSyntax method getParamModEffects.

private static Effects getParamModEffects(String text) {
    Effects e = new Effects();
    for (String substring : StringMaster.open(text, item_separator)) {
        // TODO permanent for non-dynamic? base?
        MOD mod = MOD.MODIFY_BY_CONST;
        String param = text.split(pair_separator)[0];
        String formula = text.split(pair_separator)[1];
        ModifyValueEffect ef = new ModifyValueEffect(param, mod, formula);
        // ef.setBase()
        e.add(ef);
    }
    return e;
}
Also used : MOD(main.ability.effects.Effect.MOD) ModifyValueEffect(eidolons.ability.effects.common.ModifyValueEffect) Effects(main.ability.effects.Effects)

Example 3 with MOD

use of main.ability.effects.Effect.MOD in project Eidolons by IDemiurge.

the class EffectAnimation method drawCounterMod.

private boolean drawCounterMod(AnimPhase phase) {
    String counterName = (String) phase.getArgs()[0];
    COUNTER counter = CounterMaster.findCounterConst(counterName);
    MOD modtype = (MOD) phase.getArgs()[1];
    Integer modValue = (Integer) phase.getArgs()[2];
    Boolean negative = false;
    if (counter != null) // counter.isNegative(); // img
    {
        drawTextOnTarget(StringMaster.getBonusString(modValue), font, CENTERED_X, CENTERED_Y, ColorManager.getStandardColor(negative));
    }
    StringMaster.getBonusString(modValue);
    return true;
}
Also used : MOD(main.ability.effects.Effect.MOD) COUNTER(main.content.enums.entity.UnitEnums.COUNTER)

Aggregations

MOD (main.ability.effects.Effect.MOD)3 ModifyValueEffect (eidolons.ability.effects.common.ModifyValueEffect)2 Effects (main.ability.effects.Effects)1 COUNTER (main.content.enums.entity.UnitEnums.COUNTER)1 PARAMETER (main.content.values.parameters.PARAMETER)1