Skip to content

Commit 3f3f566

Browse files
committed
Add SkillDowngrade trigger
1 parent f8dd0dd commit 3f3f566

3 files changed

Lines changed: 49 additions & 18 deletions

File tree

src/main/java/studio/magemonkey/fabled/dynamic/ComponentRegistry.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,7 @@ public class ComponentRegistry {
7979
register(new ShearTrigger());
8080
register(new ShieldTrigger());
8181
register(new SkillUpgradeTrigger());
82+
register(new SkillDowngradeTrigger());
8283
register(new SignalTrigger());
8384
register(new SprintTrigger());
8485
register(new SkillCastTrigger());
Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
package studio.magemonkey.fabled.dynamic.trigger;
2+
3+
import org.bukkit.entity.LivingEntity;
4+
import studio.magemonkey.fabled.api.CastData;
5+
import studio.magemonkey.fabled.api.Settings;
6+
import studio.magemonkey.fabled.api.event.PlayerSkillDowngradeEvent;
7+
8+
/**
9+
* A trigger for when a player levels up a skill.
10+
*/
11+
public class SkillDowngradeTrigger implements Trigger<PlayerSkillDowngradeEvent> {
12+
13+
/**
14+
* {@inheritDoc}
15+
*/
16+
@Override
17+
public String getKey() {
18+
return "SKILL_UPGRADE";
19+
}
20+
21+
@Override
22+
public Class<PlayerSkillDowngradeEvent> getEvent() {
23+
return PlayerSkillDowngradeEvent.class;
24+
}
25+
26+
@Override
27+
public boolean shouldTrigger(final PlayerSkillDowngradeEvent event, final int level, final Settings settings) {
28+
// Always trigger when a skill is downgraded
29+
return true;
30+
}
31+
32+
@Override
33+
public LivingEntity getCaster(final PlayerSkillDowngradeEvent event) {
34+
return event.getPlayerData().getPlayer();
35+
}
36+
37+
@Override
38+
public LivingEntity getTarget(final PlayerSkillDowngradeEvent event, final Settings settings) {
39+
return event.getPlayerData().getPlayer();
40+
}
41+
42+
@Override
43+
public void setValues(final PlayerSkillDowngradeEvent event, final CastData data) {
44+
data.put("api-refund", event.getRefund());
45+
data.put("api-skill", event.getDowngradedSkill().getData().getName());
46+
data.put("api-level", event.getDowngradedSkill().getLevel());
47+
}
48+
}

src/main/java/studio/magemonkey/fabled/dynamic/trigger/SkillUpgradeTrigger.java

Lines changed: 0 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -10,50 +10,32 @@
1010
*/
1111
public class SkillUpgradeTrigger implements Trigger<PlayerSkillUpgradeEvent> {
1212

13-
/**
14-
* {@inheritDoc}
15-
*/
1613
@Override
1714
public String getKey() {
1815
return "SKILL_UPGRADE";
1916
}
2017

21-
/**
22-
* {@inheritDoc}
23-
*/
2418
@Override
2519
public Class<PlayerSkillUpgradeEvent> getEvent() {
2620
return PlayerSkillUpgradeEvent.class;
2721
}
2822

29-
/**
30-
* {@inheritDoc}
31-
*/
3223
@Override
3324
public boolean shouldTrigger(final PlayerSkillUpgradeEvent event, final int level, final Settings settings) {
3425
// Always trigger when a skill is upgraded
3526
return true;
3627
}
3728

38-
/**
39-
* {@inheritDoc}
40-
*/
4129
@Override
4230
public LivingEntity getCaster(final PlayerSkillUpgradeEvent event) {
4331
return event.getPlayerData().getPlayer();
4432
}
4533

46-
/**
47-
* {@inheritDoc}
48-
*/
4934
@Override
5035
public LivingEntity getTarget(final PlayerSkillUpgradeEvent event, final Settings settings) {
5136
return event.getPlayerData().getPlayer();
5237
}
5338

54-
/**
55-
* {@inheritDoc}
56-
*/
5739
@Override
5840
public void setValues(final PlayerSkillUpgradeEvent event, final CastData data) {
5941
data.put("api-cost", event.getCost());

0 commit comments

Comments
 (0)