Skip to content

Commit

Permalink
clean 31 events for compat with new core
Browse files Browse the repository at this point in the history
  • Loading branch information
mcmonkey4eva committed Feb 29, 2020
1 parent d65e0db commit bc21d6d
Show file tree
Hide file tree
Showing 31 changed files with 156 additions and 168 deletions.
Expand Up @@ -148,6 +148,7 @@ public void cancellationChanged() {
if (currentEvent instanceof Cancellable) {
((Cancellable) currentEvent).setCancelled(cancelled);
}
super.cancellationChanged();
}

public Event currentEvent = null;
Expand Down
Expand Up @@ -93,6 +93,7 @@ public boolean applyDetermination(ScriptPath path, ObjectTag determinationObj) {
@Override
public void cancellationChanged() {
event.setBuildable(!cancelled);
super.cancellationChanged();
}

@Override
Expand Down
Expand Up @@ -146,6 +146,7 @@ public void cancellationChanged() {
if (cancelled && serverEvent != null) {
serverEvent.setCommand("denizen do_nothing");
}
super.cancellationChanged();
}

@EventHandler
Expand Down
Expand Up @@ -7,7 +7,6 @@
import com.denizenscript.denizencore.objects.core.ListTag;
import com.denizenscript.denizencore.objects.ObjectTag;
import com.denizenscript.denizencore.scripts.ScriptEntryData;
import org.bukkit.command.CommandSender;
import org.bukkit.command.ConsoleCommandSender;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
Expand Down
Expand Up @@ -44,7 +44,6 @@ public EntityAirLevelChangeScriptEvent() {

public static EntityAirLevelChangeScriptEvent instance;
public EntityTag entity;
public Integer air;
public EntityAirChangeEvent event;

@Override
Expand Down Expand Up @@ -75,7 +74,7 @@ public String getName() {
@Override
public boolean applyDetermination(ScriptPath path, ObjectTag determinationObj) {
if (determinationObj instanceof ElementTag && ((ElementTag) determinationObj).isInt()) {
air = ((ElementTag) determinationObj).asInt();
event.setAmount(((ElementTag) determinationObj).asInt());
return true;
}
return super.applyDetermination(path, determinationObj);
Expand All @@ -92,17 +91,15 @@ public ObjectTag getContext(String name) {
return entity.getDenizenObject();
}
else if (name.equals("air")) {
return new ElementTag(air);
return new ElementTag(event.getAmount());
}
return super.getContext(name);
}

@EventHandler
public void onEntityAirLevelChanged(EntityAirChangeEvent event) {
entity = new EntityTag(event.getEntity());
air = event.getAmount();
this.event = event;
fire(event);
event.setAmount(air);
}
}
Expand Up @@ -82,6 +82,7 @@ public String getName() {
public boolean applyDetermination(ScriptPath path, ObjectTag determinationObj) {
if (determinationObj instanceof ElementTag && ((ElementTag) determinationObj).isInt()) {
experience = ((ElementTag) determinationObj).asInt();
event.setExperience(experience);
return true;
}
return super.applyDetermination(path, determinationObj);
Expand Down Expand Up @@ -115,6 +116,16 @@ else if (name.equals("experience")) {
return super.getContext(name);
}

@Override
public void cancellationChanged() {
// Prevent entities from continuing to breed with each other
if (cancelled) {
NMSHandler.getEntityHelper().setBreeding((Animals) father.getLivingEntity(), false);
NMSHandler.getEntityHelper().setBreeding((Animals) mother.getLivingEntity(), false);
}
super.cancellationChanged();
}

@EventHandler
public void onEntityBreeds(EntityBreedEvent event) {
Entity entity = event.getEntity();
Expand All @@ -124,17 +135,9 @@ public void onEntityBreeds(EntityBreedEvent event) {
mother = new EntityTag(event.getMother());
item = new ItemTag(event.getBredWith());
experience = event.getExperience();
boolean wasCancelled = event.isCancelled();
this.event = event;
EntityTag.rememberEntity(entity);
fire(event);
EntityTag.forgetEntity(entity);
event.setExperience(experience);

// Prevent entities from continuing to breed with each other
if (cancelled && !wasCancelled) {
NMSHandler.getEntityHelper().setBreeding((Animals) father.getLivingEntity(), false);
NMSHandler.getEntityHelper().setBreeding((Animals) mother.getLivingEntity(), false);
}
}
}
Expand Up @@ -51,7 +51,6 @@ public EntityCombustsScriptEvent() {

public static EntityCombustsScriptEvent instance;
public EntityTag entity;
private int burntime;
public EntityCombustEvent event;

@Override
Expand Down Expand Up @@ -81,7 +80,7 @@ public String getName() {
@Override
public boolean applyDetermination(ScriptPath path, ObjectTag determinationObj) {
if (determinationObj instanceof ElementTag && ((ElementTag) determinationObj).isInt()) {
burntime = ((ElementTag) determinationObj).asInt();
event.setDuration(((ElementTag) determinationObj).asInt());
return true;
}
return super.applyDetermination(path, determinationObj);
Expand All @@ -98,7 +97,7 @@ public ObjectTag getContext(String name) {
return entity;
}
else if (name.equals("duration")) {
return new DurationTag(burntime);
return new DurationTag(event.getDuration());
}
else if (name.equals("source")) {
if (event instanceof EntityCombustByEntityEvent) {
Expand Down Expand Up @@ -126,9 +125,7 @@ else if (event instanceof EntityCombustByBlockEvent) {
@EventHandler
public void onEntityCombusts(EntityCombustEvent event) {
entity = new EntityTag(event.getEntity());
burntime = event.getDuration();
this.event = event;
fire(event);
event.setDuration(burntime);
}
}
Expand Up @@ -72,7 +72,6 @@ public EntityDamagedScriptEvent() {

public EntityTag entity;
public ElementTag cause;
public ElementTag damage;
public ElementTag final_damage;
public EntityTag damager;
public EntityTag projectile;
Expand Down Expand Up @@ -128,7 +127,7 @@ public String getName() {
@Override
public boolean applyDetermination(ScriptPath path, ObjectTag determinationObj) {
if (determinationObj instanceof ElementTag && ((ElementTag) determinationObj).isDouble()) {
damage = new ElementTag(((ElementTag) determinationObj).asDouble());
event.setDamage(((ElementTag) determinationObj).asDouble());
return true;
}
return super.applyDetermination(path, determinationObj);
Expand All @@ -146,7 +145,7 @@ public ObjectTag getContext(String name) {
return entity.getDenizenObject();
}
else if (name.equals("damage")) {
return damage;
return new ElementTag(event.getDamage());
}
else if (name.equals("final_damage")) {
return final_damage;
Expand All @@ -173,7 +172,6 @@ else if (name.startsWith("damage_")) {
@EventHandler
public void onEntityDamaged(EntityDamageEvent event) {
entity = new EntityTag(event.getEntity());
damage = new ElementTag(event.getDamage());
final_damage = new ElementTag(event.getFinalDamage());
cause = new ElementTag(CoreUtilities.toLowerCase(event.getCause().name()));
damager = null;
Expand All @@ -196,6 +194,5 @@ public void onEntityDamaged(EntityDamageEvent event) {
}
this.event = event;
fire(event);
event.setDamage(damage.asDouble());
}
}
Expand Up @@ -189,6 +189,14 @@ else if (name.equals("xp")) {
return super.getContext(name);
}

@Override
public void cancellationChanged() {
if (cancelled && event instanceof PlayerDeathEvent) {
((PlayerDeathEvent) event).setDeathMessage(null); // Historical no_message was by cancelling.
}
super.cancellationChanged();
}

@EventHandler
public void onEntityDeath(EntityDeathEvent event) {
LivingEntity livingEntity = event.getEntity();
Expand Down Expand Up @@ -217,9 +225,6 @@ else if (livingEntity.getKiller() != null) {
cancelled = false;
this.event = event;
fire(event);
if (cancelled && event instanceof PlayerDeathEvent) {
((PlayerDeathEvent) event).setDeathMessage(null); // Historical no_message was by cancelling.
}
EntityTag.forgetEntity(livingEntity);
}
}
Expand Up @@ -48,10 +48,7 @@ public EntityExplodesScriptEvent() {

public static EntityExplodesScriptEvent instance;
public EntityTag entity;
public ListTag blocks;
public LocationTag location;
public float strength;
private Boolean blockSet;
public EntityExplodeEvent event;

@Override
Expand Down Expand Up @@ -83,19 +80,18 @@ public String getName() {
public boolean applyDetermination(ScriptPath path, ObjectTag determinationObj) {
String determination = determinationObj.toString();
if (ArgumentHelper.matchesDouble(determination)) {
strength = Float.parseFloat(determination);
event.setYield(Float.parseFloat(determination));
return true;
}
if (ListTag.matches(determination)) {
blocks = new ListTag();
blockSet = true;
event.blockList().clear();
for (String loc : ListTag.valueOf(determination, getTagContext(path))) {
LocationTag location = LocationTag.valueOf(loc);
if (location == null) {
Debug.echoError("Invalid location '" + loc + "' check [" + getName() + "]: ' for " + path.container.getName());
}
else {
blocks.addObject(location);
event.blockList().add(location.getWorld().getBlockAt(location));
}
}
return true;
Expand All @@ -117,10 +113,14 @@ else if (name.equals("location")) {
return location;
}
else if (name.equals("blocks")) {
ListTag blocks = new ListTag();
for (Block block : event.blockList()) {
blocks.addObject(new LocationTag(block.getLocation()));
}
return blocks;
}
else if (name.equals("strength")) {
return new ElementTag(strength);
return new ElementTag(event.getYield());
}
return super.getContext(name);
}
Expand All @@ -129,24 +129,7 @@ else if (name.equals("strength")) {
public void onEntityExplodes(EntityExplodeEvent event) {
entity = new EntityTag(event.getEntity());
location = new LocationTag(event.getLocation());
strength = event.getYield();
blocks = new ListTag();
blockSet = false;
for (Block block : event.blockList()) {
blocks.addObject(new LocationTag(block.getLocation()));
}
this.event = event;
fire(event);
if (blockSet) {
event.blockList().clear();
if (blocks.size() > 0) {
event.blockList().clear();
for (String loc : blocks) {
LocationTag location = LocationTag.valueOf(loc);
event.blockList().add(location.getWorld().getBlockAt(location));
}
}
}
event.setYield(strength);
}
}
Expand Up @@ -37,8 +37,6 @@ public EntityExplosionPrimesScriptEvent() {

public static EntityExplosionPrimesScriptEvent instance;
public EntityTag entity;
public Float radius;
public Boolean fire;
public ExplosionPrimeEvent event;

@Override
Expand Down Expand Up @@ -70,12 +68,11 @@ public String getName() {
public boolean applyDetermination(ScriptPath path, ObjectTag determinationObj) {
String determination = determinationObj.toString();
if (ArgumentHelper.matchesDouble(determination)) {
radius = Float.parseFloat(determination);
event.setRadius(Float.parseFloat(determination));
return true;
}
if (Argument.valueOf(determination)
.matchesBoolean()) {
fire = determination.equalsIgnoreCase("true");
if (Argument.valueOf(determination).matchesBoolean()) {
event.setFire(determination.equalsIgnoreCase("true"));
return true;
}
return super.applyDetermination(path, determinationObj);
Expand All @@ -87,22 +84,18 @@ public ObjectTag getContext(String name) {
return entity;
}
else if (name.equals("radius")) {
return new ElementTag(radius);
return new ElementTag(event.getRadius());
}
else if (name.equals("fire")) {
return new ElementTag(fire);
return new ElementTag(event.getFire());
}
return super.getContext(name);
}

@EventHandler
public void onEntityExplosionPrimes(ExplosionPrimeEvent event) {
entity = new EntityTag(event.getEntity());
radius = event.getRadius();
fire = event.getFire();
this.event = event;
fire(event);
event.setFire(fire);
event.setRadius(radius);
}
}
Expand Up @@ -44,7 +44,6 @@ public EntityFoodLevelChangeScriptEvent() {

public static EntityFoodLevelChangeScriptEvent instance;
public EntityTag entity;
public Integer food;
public FoodLevelChangeEvent event;

@Override
Expand Down Expand Up @@ -75,7 +74,7 @@ public String getName() {
@Override
public boolean applyDetermination(ScriptPath path, ObjectTag determinationObj) {
if (determinationObj instanceof ElementTag && ((ElementTag) determinationObj).isInt()) {
food = ((ElementTag) determinationObj).asInt();
event.setFoodLevel(((ElementTag) determinationObj).asInt());
return true;
}
return super.applyDetermination(path, determinationObj);
Expand All @@ -92,17 +91,15 @@ public ObjectTag getContext(String name) {
return entity.getDenizenObject();
}
else if (name.equals("food")) {
return new ElementTag(food);
return new ElementTag(event.getFoodLevel());
}
return super.getContext(name);
}

@EventHandler
public void onEntityFoodLevelChanged(FoodLevelChangeEvent event) {
entity = new EntityTag(event.getEntity());
food = event.getFoodLevel();
this.event = event;
fire(event);
event.setFoodLevel(food);
}
}
Expand Up @@ -42,7 +42,7 @@ public EntityGlideScriptEvent() {

public static EntityGlideScriptEvent instance;
public EntityTag entity;
public Boolean state;
public boolean state;

@Override
public boolean couldMatch(ScriptPath path) {
Expand Down

0 comments on commit bc21d6d

Please sign in to comment.