package StatusHandlerAbilityGen import AbilityObjEditing import BuffObjEditing import ObjectIds import StatusHandlerConfig /** * Sets some basic values for the abilitys used to apply the status effects. */ function AbilityDefinition.setBasicValues() this..setLevels(1) ..setCooldown(1, 0) ..setCastingTime(1, 0) ..setManaCost(1, 0) ..setDurationNormal(1, 0) ..setDurationHero(1, 0) ..setCastRange(1, 99999.) ..setAnimationNames("") ..setMissileArt("") ..setMissileSpeed(0) ..setHeroAbility(true) ..setIconNormal("") ..setEditorSuffix("(Status System)") ..setTargetsAllowed(1, "invulnerable,vulnerable") ..setRequiredLevel(6) .setRace(Race.Other) /** * Sets some basic values for the buffs used to apply the status effects. */ function BuffDefinition.setBasicValues() this..setRace(1, "other") ..setTarget(1, "") .setEditorSuffix(0, "(Status System)") /** * Generates the abilitys and buffs to apply the status effects. */ @compiletime function genAbilities() new AbilityDefinitionFireBoltcreep(STUN_ABILITY_ID) ..setBasicValues() ..setDamage(1, 0) ..setName("Stun") .setBuffs(1, idInteger2IdString(STUN_BUFF_ID)) new BuffDefinition(STUN_BUFF_ID, 'BPSE') ..setBasicValues() ..setTooltipNormal(1, STUN_TOOLTIP_NORMAL) ..setTarget(1, "Abilities\\Spells\\Human\\Thunderclap\\ThunderclapTarget.mdl") ..setTooltipNormalExtended(1, STUN_TOOLTIP_EXTENDED) .setIconNormal(1, STUN_ICON_PATH) new AbilityDefinitionFirelordSoulBurn(SILENCE_ABILITY_ID) ..setBasicValues() ..setDamageAmount(1, 0) ..setDamagePeriod(1, 99999) ..setDamagePenalty(1, 0) ..setAttackSpeedReduction(1, 0) ..setMovementSpeedReduction(1, 0) ..setName("Silence") .setBuffs(1, idInteger2IdString(SILENCE_BUFF_ID)) new BuffDefinition(SILENCE_BUFF_ID, 'BNso') ..setBasicValues() ..setTooltipNormal(1, SILENCE_TOOLTIP_NORMAL) ..setTooltipNormalExtended(1, SILENCE_TOOLTIP_EXTENDED) .setIconNormal(1, SILENCE_ICON_PATH) new AbilityDefinitionBrewmasterDrunkenHaze(DISARM_BOTH_ABILITY_ID) ..setBasicValues() ..setAttackSpeedModifier(1, 0) ..setMovementSpeedModifier(1, 0) ..setChanceToMiss(1, 0) ..setAttacksPrevented(1, "3") ..setName("Disarm (Both)") .setBuffs(1, idInteger2IdString(DISARM_BOTH_BUFF_ID)) new BuffDefinition(DISARM_BOTH_BUFF_ID, 'BNdh') ..setBasicValues() ..setTooltipNormal(1, DISARM_BOTH_TOOLTIP_NORMAL) ..setTooltipNormalExtended(1, DISARM_BOTH_TOOLTIP_EXTENDED) .setIconNormal(1, DISARM_BOTH_ICON_PATH) new AbilityDefinitionBrewmasterDrunkenHaze(DISARM_MELEE_ABILITY_ID) ..setBasicValues() ..setAttackSpeedModifier(1, 0) ..setMovementSpeedModifier(1, 0) ..setChanceToMiss(1, 0) ..setAttacksPrevented(1, "1") ..setName("Disarm (Melee)") .setBuffs(1, idInteger2IdString(DISARM_MELEE_BUFF_ID)) new BuffDefinition(DISARM_MELEE_BUFF_ID, 'BNdh') ..setBasicValues() ..setTooltipNormal(1, DISARM_MELEE_TOOLTIP_NORMAL) ..setTooltipNormalExtended(1, DISARM_MELEE_TOOLTIP_EXTENDED) .setIconNormal(1, DISARM_BOTH_ICON_PATH) new AbilityDefinitionBrewmasterDrunkenHaze(DISARM_RANGED_ABILITY_ID) ..setBasicValues() ..setAttackSpeedModifier(1, 0) ..setMovementSpeedModifier(1, 0) ..setChanceToMiss(1, 0) ..setAttacksPrevented(1, "2") ..setName("Disarm (Range)") .setBuffs(1, idInteger2IdString(DISARM_RANGED_BUFF_ID)) new BuffDefinition(DISARM_RANGED_BUFF_ID, 'BNdh') ..setBasicValues() ..setTooltipNormal(1, DISARM_RANGED_TOOLTIP_NORMAL) ..setTooltipNormalExtended(1, DISARM_RANGED_TOOLTIP_EXTENDED) .setIconNormal(1, DISARM_BOTH_ICON_PATH) new AbilityDefinitionEnsnareCreep(ENSNARE_ABILITY_ID) ..setBasicValues() ..setAirUnitLowerDuration(1, -1) ..setAirUnitHeight(1, -1) ..setName("Ensnare") .setBuffs(1, idInteger2IdString(ENSNARE1_BUFF_ID) + "," + idInteger2IdString(ENSNARE2_BUFF_ID)) new BuffDefinition(ENSNARE1_BUFF_ID, 'Beng') ..setBasicValues() ..setTooltipNormal(1, ENSNARE_TOOLTIP_NORMAL) ..setTooltipNormalExtended(1, ENSNARE_TOOLTIP_EXTENDED) .setIconNormal(1, ENSNARE_ICON_PATH) new BuffDefinition(ENSNARE2_BUFF_ID, 'Bena') ..setBasicValues() ..setTooltipNormal(1, ENSNARE_TOOLTIP_NORMAL) ..setTooltipNormalExtended(1, ENSNARE_TOOLTIP_EXTENDED) .setIconNormal(1, ENSNARE_ICON_PATH)