-
-
Notifications
You must be signed in to change notification settings - Fork 87
/
SentinelHealth.java
43 lines (38 loc) · 1.3 KB
/
SentinelHealth.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
package org.mcmonkey.sentinel.integration;
import org.bukkit.entity.LivingEntity;
import org.mcmonkey.sentinel.SentinelIntegration;
public class SentinelHealth extends SentinelIntegration {
@Override
public String getTargetHelp() {
return "healthabove:PERCENTAGE, healthbelow:PERCENTAGE";
}
@Override
public String[] getTargetPrefixes() {
return new String[] { "healthabove", "healthbelow" };
}
@Override
public boolean isTarget(LivingEntity ent, String prefix, String value) {
try {
if (prefix.equals("healthabove")) {
double haVal = Double.parseDouble(value);
if (ent.getHealth() / ent.getMaxHealth() > haVal * 0.01) {
return true;
}
}
else if (prefix.equals("healthbelow")) {
double haVal = Double.parseDouble(value);
if (ent.getHealth() / ent.getMaxHealth() < haVal * 0.01) {
return true;
}
}
}
catch (NumberFormatException ex) {
// Do nothing.
// TODO: Maybe show a one-time warning?
}
catch (Exception ex) {
ex.printStackTrace();
}
return false;
}
}