commit
This commit is contained in:
		
							
								
								
									
										1
									
								
								Makefile
									
									
									
									
									
								
							
							
						
						
									
										1
									
								
								Makefile
									
									
									
									
									
								
							| @ -2,5 +2,4 @@ all: build | |||||||
|  |  | ||||||
|  |  | ||||||
| build: | build: | ||||||
| 	export JAVA_HOME=/usr/lib/jvm/default-java |  | ||||||
| 	mvn clean compile assembly:single | 	mvn clean compile assembly:single | ||||||
							
								
								
									
										4
									
								
								pom.xml
									
									
									
									
									
								
							
							
						
						
									
										4
									
								
								pom.xml
									
									
									
									
									
								
							| @ -14,8 +14,8 @@ | |||||||
|  |  | ||||||
|   <properties> |   <properties> | ||||||
|     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> |     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> | ||||||
|     <maven.compiler.source>1.7</maven.compiler.source> |     <maven.compiler.source>1.8</maven.compiler.source> | ||||||
|     <maven.compiler.target>1.7</maven.compiler.target> |     <maven.compiler.target>1.8</maven.compiler.target> | ||||||
|   </properties> |   </properties> | ||||||
|  |  | ||||||
|   <repositories> |   <repositories> | ||||||
|  | |||||||
| @ -5,10 +5,10 @@ final class DeathHookEvent extends PlayerHookEvent | |||||||
|     public String deathType; |     public String deathType; | ||||||
|     public String killerName; |     public String killerName; | ||||||
|  |  | ||||||
|     public DeathHookEvent(String displayName, String deathType) { |     public DeathHookEvent(String displayName, String deathType, String killerName) { | ||||||
|         super(displayName); |         super(displayName); | ||||||
|         this.type = "death"; |         this.type = "death"; | ||||||
|         this.deathType = deathType; |         this.deathType = deathType; | ||||||
|         this.killerName = "?"; |         this.killerName = killerName; | ||||||
|     } |     } | ||||||
| } | } | ||||||
|  | |||||||
| @ -1,5 +1,6 @@ | |||||||
| package mcwebhooks; | package mcwebhooks; | ||||||
|  |  | ||||||
|  | import org.bukkit.Bukkit; | ||||||
| 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.LivingEntity; | ||||||
| @ -13,12 +14,15 @@ 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; | ||||||
|  | import org.bukkit.event.entity.EntityDamageByEntityEvent; | ||||||
|  | import org.bukkit.event.entity.EntityDamageByBlockEvent; | ||||||
|  | import org.bukkit.event.entity.ArrowBodyCountChangeEvent; | ||||||
|  |  | ||||||
| import org.apache.http.impl.client.HttpClientBuilder; | import org.apache.http.impl.client.HttpClientBuilder; | ||||||
| import org.apache.http.client.HttpClient; | import org.apache.http.client.HttpClient; | ||||||
| import org.apache.http.client.methods.HttpPost; | import org.apache.http.client.methods.HttpPost; | ||||||
| import org.apache.http.entity.StringEntity; | import org.apache.http.entity.StringEntity; | ||||||
|  | import org.apache.http.conn.HttpHostConnectException; | ||||||
|  |  | ||||||
| import java.io.IOException; | import java.io.IOException; | ||||||
| import java.io.UnsupportedEncodingException; | import java.io.UnsupportedEncodingException; | ||||||
| @ -74,16 +78,28 @@ public final class MCWebHooks extends JavaPlugin implements Listener { | |||||||
|         if (ent instanceof Player) { |         if (ent instanceof Player) { | ||||||
|             Player p = (Player)ent; |             Player p = (Player)ent; | ||||||
|             DamageCause damageCause = entDamageEvent.getCause(); |             DamageCause damageCause = entDamageEvent.getCause(); | ||||||
|             DeathHookEvent hookEvent = new DeathHookEvent(p.getDisplayName(), damageCause.toString()); |             String killer = ""; | ||||||
|  |  | ||||||
|  |             if (entDamageEvent instanceof EntityDamageByEntityEvent) { | ||||||
|  |                 EntityDamageByEntityEvent entByEntityEvent = (EntityDamageByEntityEvent)entDamageEvent; | ||||||
|  |                 killer = entByEntityEvent.getDamager().getName(); | ||||||
|  |             } | ||||||
|  |  | ||||||
|  |             if (entDamageEvent instanceof EntityDamageByBlockEvent) { | ||||||
|  |                 EntityDamageByBlockEvent entByEntityEvent = (EntityDamageByBlockEvent)entDamageEvent; | ||||||
|  |                 killer = entByEntityEvent.getDamager().toString(); | ||||||
|  |             } | ||||||
|  |  | ||||||
|  |             DeathHookEvent hookEvent = new DeathHookEvent(p.getDisplayName(), damageCause.toString(), killer); | ||||||
|             this.sendHookedEvent(hookEvent); |             this.sendHookedEvent(hookEvent); | ||||||
|         } else if (ent instanceof LivingEntity) { |         } else if (ent instanceof LivingEntity) { | ||||||
|             LivingEntity e = (LivingEntity)ent; |             LivingEntity le = (LivingEntity)ent; | ||||||
|             if (e.getKiller() == null) { |             if (le.getKiller() == null) { | ||||||
|                 return; |                 return; | ||||||
|             } |             } | ||||||
|             PlayerKilledEntityEvent hookEvent = new PlayerKilledEntityEvent( |             PlayerKilledEntityEvent hookEvent = new PlayerKilledEntityEvent( | ||||||
|                 e.getKiller().getDisplayName(), |                 le.getKiller().getDisplayName(), | ||||||
|                 e.getName() |                 le.getName() | ||||||
|             ); |             ); | ||||||
|             this.sendHookedEvent(hookEvent); |             this.sendHookedEvent(hookEvent); | ||||||
|         } |         } | ||||||
| @ -108,17 +124,22 @@ public final class MCWebHooks extends JavaPlugin implements Listener { | |||||||
|         try { |         try { | ||||||
|             StringEntity params = new StringEntity(mapper.writeValueAsString(event)); |             StringEntity params = new StringEntity(mapper.writeValueAsString(event)); | ||||||
|             request.setEntity(params); |             request.setEntity(params); | ||||||
|         } catch (JsonProcessingException | UnsupportedEncodingException e1) { |         } catch (JsonProcessingException | UnsupportedEncodingException e) { | ||||||
|             getLogger().info("Parsing failed"); |             getLogger().info("Parsing failed"); | ||||||
|             e1.printStackTrace(); |             e.printStackTrace(); | ||||||
|             return; |             return; | ||||||
|         } |         } | ||||||
|  |  | ||||||
|  |         Bukkit.getScheduler().runTaskAsynchronously(this, () -> { | ||||||
|             try { |             try { | ||||||
|                 httpClient.execute(request); |                 httpClient.execute(request); | ||||||
|                 getLogger().info("Request sent"); |                 getLogger().info("Request sent"); | ||||||
|  |             } catch (HttpHostConnectException e) { | ||||||
|  |                 getLogger().info(String.format("Failed to connect to: [%s]", this.config.hookUrl)); | ||||||
|             } catch (IOException e) { |             } catch (IOException e) { | ||||||
|                 getLogger().info("Request failed"); |                 getLogger().info("Request failed"); | ||||||
|                 e.printStackTrace(); |                 e.printStackTrace(); | ||||||
|             } |             } | ||||||
|  |         }); | ||||||
|     } |     } | ||||||
| } | } | ||||||
|  | |||||||
		Reference in New Issue
	
	Block a user