player killing things, level change
This commit is contained in:
parent
b4a2d626d3
commit
e9edd30acc
16
pom.xml
16
pom.xml
@ -6,7 +6,7 @@
|
|||||||
|
|
||||||
<groupId>org.mc</groupId>
|
<groupId>org.mc</groupId>
|
||||||
<artifactId>webhooks</artifactId>
|
<artifactId>webhooks</artifactId>
|
||||||
<version>0.1</version>
|
<version>0.2</version>
|
||||||
|
|
||||||
<name>mcwebhooks</name>
|
<name>mcwebhooks</name>
|
||||||
<!-- FIXME change it to the project's website -->
|
<!-- FIXME change it to the project's website -->
|
||||||
@ -61,6 +61,18 @@
|
|||||||
<artifactId>httpclient</artifactId>
|
<artifactId>httpclient</artifactId>
|
||||||
<version>4.3.6</version>
|
<version>4.3.6</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.apache.httpcomponents</groupId>
|
||||||
|
<artifactId>httpasyncclient</artifactId>
|
||||||
|
<version>4.1.4</version>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.apache.httpcomponents</groupId>
|
||||||
|
<artifactId>httpcore-nio</artifactId>
|
||||||
|
<version>4.4.11</version>
|
||||||
|
</dependency>
|
||||||
</dependencies>
|
</dependencies>
|
||||||
|
|
||||||
<build>
|
<build>
|
||||||
@ -110,7 +122,7 @@
|
|||||||
<version>3.0.0</version>
|
<version>3.0.0</version>
|
||||||
<configuration>
|
<configuration>
|
||||||
<descriptorRefs>
|
<descriptorRefs>
|
||||||
<descriptorRef>jar-with-dependencies</descriptorRef>
|
<descriptorRef>full</descriptorRef>
|
||||||
</descriptorRefs>
|
</descriptorRefs>
|
||||||
<archive>
|
<archive>
|
||||||
<manifest>
|
<manifest>
|
||||||
|
@ -2,11 +2,14 @@ package mcwebhooks;
|
|||||||
|
|
||||||
import org.bukkit.plugin.java.JavaPlugin;
|
import org.bukkit.plugin.java.JavaPlugin;
|
||||||
import org.bukkit.entity.Entity;
|
import org.bukkit.entity.Entity;
|
||||||
|
import org.bukkit.entity.LivingEntity;
|
||||||
import org.bukkit.entity.Player;
|
import org.bukkit.entity.Player;
|
||||||
import org.bukkit.event.EventHandler;
|
import org.bukkit.event.EventHandler;
|
||||||
import org.bukkit.event.Listener;
|
import org.bukkit.event.Listener;
|
||||||
import org.bukkit.event.player.PlayerJoinEvent;
|
import org.bukkit.event.player.PlayerJoinEvent;
|
||||||
import org.bukkit.event.player.PlayerQuitEvent;
|
import org.bukkit.event.player.PlayerQuitEvent;
|
||||||
|
import org.bukkit.event.player.PlayerKickEvent;
|
||||||
|
import org.bukkit.event.player.PlayerLevelChangeEvent;
|
||||||
import org.bukkit.event.entity.EntityDamageEvent;
|
import org.bukkit.event.entity.EntityDamageEvent;
|
||||||
import org.bukkit.event.entity.EntityDeathEvent;
|
import org.bukkit.event.entity.EntityDeathEvent;
|
||||||
import org.bukkit.event.entity.EntityDamageEvent.DamageCause;
|
import org.bukkit.event.entity.EntityDamageEvent.DamageCause;
|
||||||
@ -59,16 +62,40 @@ public final class MCWebHooks extends JavaPlugin implements Listener {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@EventHandler
|
@EventHandler
|
||||||
public void onEntityDeath(EntityDeathEvent event) {
|
public void onKick(PlayerKickEvent event) {
|
||||||
Entity ent = event.getEntity();
|
QuitHookEvent hookEvent = new QuitHookEvent(event.getPlayer().getDisplayName());
|
||||||
|
|
||||||
EntityDamageEvent entDamageEvent = ent.getLastDamageCause();
|
|
||||||
if (ent instanceof Player) {
|
|
||||||
DamageCause damageCause = entDamageEvent.getCause();
|
|
||||||
Player p = (Player)ent;
|
|
||||||
DeathHookEvent hookEvent = new DeathHookEvent(p.getDisplayName(), damageCause.toString());
|
|
||||||
this.sendHookedEvent(hookEvent);
|
this.sendHookedEvent(hookEvent);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@EventHandler
|
||||||
|
public void onEntityDeath(EntityDeathEvent event) {
|
||||||
|
Entity ent = event.getEntity();
|
||||||
|
EntityDamageEvent entDamageEvent = ent.getLastDamageCause();
|
||||||
|
if (ent instanceof Player) {
|
||||||
|
Player p = (Player)ent;
|
||||||
|
DamageCause damageCause = entDamageEvent.getCause();
|
||||||
|
DeathHookEvent hookEvent = new DeathHookEvent(p.getDisplayName(), damageCause.toString());
|
||||||
|
this.sendHookedEvent(hookEvent);
|
||||||
|
} else if (ent instanceof LivingEntity) {
|
||||||
|
LivingEntity e = (LivingEntity)ent;
|
||||||
|
if (e.getKiller() == null) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
PlayerKilledEntityEvent hookEvent = new PlayerKilledEntityEvent(
|
||||||
|
e.getKiller().getDisplayName(),
|
||||||
|
e.getName()
|
||||||
|
);
|
||||||
|
this.sendHookedEvent(hookEvent);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@EventHandler
|
||||||
|
public void onPlayerLevelChange(PlayerLevelChangeEvent event) {
|
||||||
|
PlayerLevelChangeHookEvent hookEvent = new PlayerLevelChangeHookEvent(
|
||||||
|
event.getPlayer().getDisplayName(),
|
||||||
|
event.getNewLevel()
|
||||||
|
);
|
||||||
|
this.sendHookedEvent(hookEvent);
|
||||||
}
|
}
|
||||||
|
|
||||||
private final void sendHookedEvent(HookEvent event) {
|
private final void sendHookedEvent(HookEvent event) {
|
||||||
|
12
src/main/java/mcwebhooks/PlayerKilledEntityEvent.java
Normal file
12
src/main/java/mcwebhooks/PlayerKilledEntityEvent.java
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
package mcwebhooks;
|
||||||
|
|
||||||
|
final class PlayerKilledEntityEvent extends PlayerHookEvent
|
||||||
|
{
|
||||||
|
public String entityName;
|
||||||
|
|
||||||
|
public PlayerKilledEntityEvent(String displayName, String entityName) {
|
||||||
|
super(displayName);
|
||||||
|
this.type = "playerKilledEntity";
|
||||||
|
this.entityName = entityName;
|
||||||
|
}
|
||||||
|
}
|
12
src/main/java/mcwebhooks/PlayerLevelChangeHookEvent.java
Normal file
12
src/main/java/mcwebhooks/PlayerLevelChangeHookEvent.java
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
package mcwebhooks;
|
||||||
|
|
||||||
|
final class PlayerLevelChangeHookEvent extends PlayerHookEvent
|
||||||
|
{
|
||||||
|
public int newLevel;
|
||||||
|
|
||||||
|
public PlayerLevelChangeHookEvent(String displayName, int newLevel) {
|
||||||
|
super(displayName);
|
||||||
|
this.type = "playerLevelChange";
|
||||||
|
this.newLevel = newLevel;
|
||||||
|
}
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user