Package noppes.npcs.api.ability
Interface ICustomAbility
-
- All Superinterfaces:
IAbility,IAbilityAction
public interface ICustomAbility extends IAbility
A custom (script-driven) ability whose behavior is entirely defined by script event hooks. Supports both instant execution mode and toggle mode.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description intgetDurationTicks()Get the duration in ticks for instant mode (non-toggle).intgetTargetingModeType()Get the targeting mode ordinal.intgetTelegraphActiveTicks()Get how many ticks the telegraph persists during the active phase.floatgetTelegraphAngle()Get the telegraph angle in degrees (used by CONE shape).floatgetTelegraphInnerRadius()Get the telegraph inner radius (used by RING, CONE shapes).floatgetTelegraphLength()Get the telegraph length (used by LINE, CONE shapes).floatgetTelegraphRadius()Get the telegraph radius (used by CIRCLE, RING, SQUARE shapes).intgetTelegraphShapeType()Get the telegraph shape type ordinal.floatgetTelegraphWidth()Get the telegraph width (used by LINE shape).booleanisSyncTelegraphWithDuration()Whether telegraph active ticks are synced to the ability duration.voidsetDurationTicks(int ticks)Set the duration in ticks for instant mode.voidsetSyncTelegraphWithDuration(boolean sync)Set whether telegraph active ticks should sync to the ability duration.voidsetTargetingModeType(int type)Set the targeting mode by ordinal.voidsetTelegraphActiveTicks(int ticks)Set how many ticks the telegraph persists during the active phase.voidsetTelegraphAngle(float angle)Set the telegraph angle in degrees.voidsetTelegraphInnerRadius(float innerRadius)Set the telegraph inner radius.voidsetTelegraphLength(float length)Set the telegraph length.voidsetTelegraphRadius(float radius)Set the telegraph radius.voidsetTelegraphShapeType(int type)Set the telegraph shape type by ordinal.voidsetTelegraphWidth(float width)Set the telegraph width.-
Methods inherited from interface noppes.npcs.api.ability.IAbility
getAllowedByType, getBurstAmount, getBurstDelay, getCooldownTicks, getCurrentTick, getDazedTicks, getDisplayName, getId, getLockMovementType, getMagicData, getMaxRange, getMinRange, getName, getNbt, getPhaseInt, getRotationModeType, getRotationPhaseType, getToggleStateLabel, getToggleStates, getTrackSpeedValue, getTypeId, getWeight, getWindUpTicks, isBurstEnabled, isBurstOverlap, isBurstReplayAnimations, isEnabled, isExecuting, isIgnoreCooldown, isIgnoreIFrames, isInterruptible, isMovementLockedDuringActive, isMovementLockedDuringWindup, isPerAbilityCooldown, isRotationLockedDuringActive, isRotationLockedDuringWindup, isToggleable, setAllowedByType, setBurstAmount, setBurstDelay, setBurstEnabled, setBurstOverlap, setBurstReplayAnimations, setCooldownTicks, setDazedTicks, setDisplayName, setEnabled, setId, setIgnoreCooldown, setIgnoreIFrames, setInterruptible, setLockMovementType, setMaxRange, setMinRange, setName, setNbt, setPerAbilityCooldown, setRotationModeType, setRotationPhaseType, setToggleStates, setTrackSpeedValue, setWeight, setWindUpTicks
-
Methods inherited from interface noppes.npcs.api.ability.IAbilityAction
isChain
-
-
-
-
Method Detail
-
getDurationTicks
int getDurationTicks()
Get the duration in ticks for instant mode (non-toggle).- Returns:
- duration in ticks
-
setDurationTicks
void setDurationTicks(int ticks)
Set the duration in ticks for instant mode.- Parameters:
ticks- duration in ticks
-
getTelegraphShapeType
int getTelegraphShapeType()
Get the telegraph shape type ordinal.- Returns:
- ordinal of TelegraphType: 0=CIRCLE, 1=RING, 2=LINE, 3=CONE, 4=POINT, 5=SQUARE, 6=NONE
-
setTelegraphShapeType
void setTelegraphShapeType(int type)
Set the telegraph shape type by ordinal.- Parameters:
type- ordinal of TelegraphType
-
getTargetingModeType
int getTargetingModeType()
Get the targeting mode ordinal.- Returns:
- ordinal of TargetingMode: 0=AGGRO_TARGET, 1=SELF, 2=AOE_SELF, 3=AOE_TARGET
-
setTargetingModeType
void setTargetingModeType(int type)
Set the targeting mode by ordinal.- Parameters:
type- ordinal of TargetingMode
-
getTelegraphActiveTicks
int getTelegraphActiveTicks()
Get how many ticks the telegraph persists during the active phase. When syncTelegraphWithDuration is true, this returns the duration ticks.- Returns:
- telegraph active ticks
-
setTelegraphActiveTicks
void setTelegraphActiveTicks(int ticks)
Set how many ticks the telegraph persists during the active phase. Only used when syncTelegraphWithDuration is false.- Parameters:
ticks- telegraph active ticks
-
isSyncTelegraphWithDuration
boolean isSyncTelegraphWithDuration()
Whether telegraph active ticks are synced to the ability duration.- Returns:
- true if synced
-
setSyncTelegraphWithDuration
void setSyncTelegraphWithDuration(boolean sync)
Set whether telegraph active ticks should sync to the ability duration.- Parameters:
sync- whether to sync
-
getTelegraphRadius
float getTelegraphRadius()
Get the telegraph radius (used by CIRCLE, RING, SQUARE shapes).- Returns:
- the telegraph radius
-
setTelegraphRadius
void setTelegraphRadius(float radius)
Set the telegraph radius.- Parameters:
radius- the telegraph radius
-
getTelegraphInnerRadius
float getTelegraphInnerRadius()
Get the telegraph inner radius (used by RING, CONE shapes).- Returns:
- the inner radius
-
setTelegraphInnerRadius
void setTelegraphInnerRadius(float innerRadius)
Set the telegraph inner radius.- Parameters:
innerRadius- the inner radius
-
getTelegraphLength
float getTelegraphLength()
Get the telegraph length (used by LINE, CONE shapes).- Returns:
- the telegraph length
-
setTelegraphLength
void setTelegraphLength(float length)
Set the telegraph length.- Parameters:
length- the telegraph length
-
getTelegraphWidth
float getTelegraphWidth()
Get the telegraph width (used by LINE shape).- Returns:
- the telegraph width
-
setTelegraphWidth
void setTelegraphWidth(float width)
Set the telegraph width.- Parameters:
width- the telegraph width
-
getTelegraphAngle
float getTelegraphAngle()
Get the telegraph angle in degrees (used by CONE shape).- Returns:
- the telegraph angle in degrees
-
setTelegraphAngle
void setTelegraphAngle(float angle)
Set the telegraph angle in degrees.- Parameters:
angle- the angle in degrees
-
-