player killing things, level change
This commit is contained in:
		
							
								
								
									
										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; | ||||||
|  |     } | ||||||
|  | } | ||||||
		Reference in New Issue
	
	Block a user