/** * @param EntityDamageEvent $event * @priority HIGH * @ignoreCancelled true */ public function onDamage(EntityDamageEvent $event) { $damaged = $event->getEntity(); if ($damaged instanceof Player) { $area = $this->main->getDatabase()->searchAreaByPosition($damaged); if ($area instanceof Area) { $cause = $event->getCause(); if ($this->areaHasFlag($damaged, Area::FLAG_DAMAGED, false, false)) { $event->setCancelled(); } elseif ($cause === EntityDamageEvent::CAUSE_BLOCK_EXPLOSION) { if ($this->areaHasFlag($damaged, Area::FLAG_DAMAGED_BY_EXPLOSION, false)) { $event->setCancelled(); } } elseif ($cause === EntityDamageEvent::CAUSE_VOID) { if ($this->areaHasFlag($damaged, Area::FLAG_DAMAGED_BY_VOID, false)) { $event->setCancelled(); } } elseif ($cause === EntityDamageEvent::CAUSE_SUFFOCATION) { if ($this->areaHasFlag($damaged, Area::FLAG_DAMAGED_BY_SUFFOCATE, false)) { $event->setCancelled(); } } elseif ($cause === EntityDamageEvent::CAUSE_DROWNING) { if ($this->areaHasFlag($damaged, Area::FLAG_DAMAGED_BY_DROWN, false)) { $event->setCancelled(); } } elseif ($cause === EntityDamageEvent::CAUSE_FALL) { if ($this->areaHasFlag($damaged, Area::FLAG_DAMAGED_BY_FALL, false)) { $event->setCancelled(); } } elseif ($cause === EntityDamageEvent::CAUSE_FIRE or $cause === EntityDamageEvent::CAUSE_FIRE_TICK or $cause === EntityDamageEvent::CAUSE_LAVA) { if ($this->areaHasFlag($damaged, Area::FLAG_DAMAGED_BY_FIRE, false)) { $event->setCancelled(); } } elseif ($event instanceof EntityDamageByEntityEvent) { $damager = $event->getDamager(); if ($damager instanceof Player) { if ($this->areaHasFlag($damaged, Area::FLAG_DAMAGED_BY_PLAYER, false)) { $event->setCancelled(); } } elseif ($this->areaHasFlag($damaged, Area::FLAG_DAMAGED_BY_ENTITY, false)) { $event->setCancelled(); } } } } if (!$event->setCancelled() and $event instanceof EntityDamageByEntityEvent) { $damager = $event->getDamager(); if ($damager instanceof Player) { if ($damaged instanceof Player) { if (!$this->areaHasFlag($damager, Area::FLAG_DAMAGE_PLAYER, true)) { $event->setCancelled(); } } elseif (!$this->areaHasFlag($damager, Area::FLAG_DAMAGE_MOB, true)) { $event->setCancelled(); } } } }
public function onDeath(EntityDamageEvent $event) { $damage = $event->getDamage(); $health = $event->getDamager()->getHealth(); if ($health <= $damage) { $player = $event->getDamager(); $money = $this->getConfig()->get("money"); $player->sendMessage("You've Earned 8 Coins"); $this->addMoney($player->getName(), $money); } }
public function onAttack(EntityDamageEvent $event) { if ($event instanceof EntityDamageByEntityEvent or $event instanceof EntityDamageByChildEntityEvent) { if ($event->getDamager() instanceof Player and $event->getEntity() instanceof Player) { $this->attackQueue[$event->getEntity()->getName()] = $event->getDamager()->getName(); } } }
public function onHit(EntityDamageEvent $event) { if ($event instanceof EntityDamageByChildEntityEvent) { $target = $event->getEntity(); $player = $event->getDamager(); $event->getDamager()->sendTip("§aYou hit§c " . $target->getName()); $player->getLevel()->addSound(new AnvilFallSound($player), [$player]); } }
/** * @param EnityDamageEvent $event * * @priority LOW * @ignoreCancelled true */ public function EntityDamageEvent(EntityDamageEvent $event) { if ($event instanceof EntityDamageByEntityEvent) { if ($event->getDamager() instanceof Player) { foreach (array($event->getDamager(), $event->getEntity()) as $players) { $this->setTime($players); } } } }
public function onAttack(EntityDamageEvent $event) { if (!$event instanceof EntityDamageByEntityEvent) { return; } if ($event->getEntity() instanceof Player and $event->getDamager() instanceof Player) { if ($event->getEntity()->distance($event->getDamager()) > 7) { $event->setCancelled(); } } }
public function onEntityDamage(EntityDamageEvent $event) { if (!$event->isCancelled() && $event instanceof EntityDamageByEntityEvent) { $e = $event->getEntity(); $arrow = $event->getDamager(); $damage = round($event->getDamage() / 2); if ($arrow instanceof AbilityArrow) { $shoter = $arrow->shootingEntity; if ($shoter instanceof Player) { if ($arrow instanceof FireArrow) { $e->setOnFire(rand(3, 10)); } elseif ($arrow instanceof TeleportArrow) { $shoter->teleport($e); } elseif ($arrow instanceof SpiderArrow) { $e->getLevel()->setBlock($e, Block::get(30)); } elseif ($arrow instanceof HealArrow) { $damage = -$damage; } elseif ($arrow instanceof PowerArrow) { $damage = round($damage * rand(2, 3) / 2); } else { return; } $arrow->kill(); } } $event->setDamage($damage); } }
public function onPvP(EntityDamageEvent $ev) { if ($ev->isCancelled()) { return; } if (!$ev instanceof EntityDamageByEntityEvent) { return; } if (!(($pl = $ev->getEntity()) instanceof Player && $ev->getDamager() instanceof Player)) { return; } $world = $pl->getLevel()->getName(); if (!isset($this->wcfg[$world])) { return; } if ($this->wcfg[$world] !== false) { $sp = $pl->getLevel()->getSpawnLocation(); $dist = $sp->distance($pl); if ($dist > $this->owner->getServer()->getSpawnRadius()) { return; } } $this->owner->msg($ev->getDamager(), mc::_("You are not allowed to do that here")); $ev->setCancelled(); }
public function onHurt(EntityDamageEvent $event) { if ($event instanceof EntityDamageByEntityEvent) { if ($event->getDamager()->getInventory()->getItemInHand()->getId() === 276) { $event->getEntity()->addEffect(Effect::getEffect($this->getConfig()->get("DiamondSwordEffect"))->setAmplifier($this->getConfig()->get("DiamondSwordAmp"))->setDuration($this->getConfig()->get("DiamondSwordTime"))->setVisible(false)); } } }
public function factionPVP(EntityDamageEvent $factionDamage) { if ($factionDamage instanceof EntityDamageByEntityEvent) { if (!$factionDamage->getEntity() instanceof Player or !$factionDamage->getDamager() instanceof Player) { return true; } if (!$this->plugin->getSession($factionDamage->getEntity()->getPlayer())->inFaction() or !$this->plugin->getSession($factionDamage->getDamager()->getPlayer())) { return true; } if ($factionDamage->getEntity() instanceof Player and $factionDamage->getDamager() instanceof Player) { $player1 = $factionDamage->getEntity()->getPlayer()->getName(); $player2 = $factionDamage->getDamager()->getPlayer()->getName(); if ($this->plugin->sameFaction($player1, $player2) == true) { $factionDamage->setCancelled(true); } } } }
public function onEntityDamageByEntity(EntityDamageEvent $event) { if ($event instanceof EntityDamageByEntityEvent) { $victim = $event->getEntity(); $attacker = $event->getDamager(); $this->debug->onDebug('Damage denied'); $event->setCancelled(true); } }
public function onEntityDamage(EntityDamageEvent $event) { if ($event instanceof EntityDamageByEntityEvent) { $damager = $event->getDamager(); if ($damager instanceof Player && $this->isPlayer($damager)) { $damager->sendTip(TextFormat::RED . "You cannot damage players while in fly mode!"); $event->setCancelled(true); } } }
/** * @param EntityDamageEvent $event * @priority MONITOR * @ignoreCancelled true */ public function onEntityDamage(EntityDamageEvent $event) { if ($event instanceof EntityDamageByEntityEvent) { if (($damager = $event->getDamager()) instanceof Player and ($entity = $event->getEntity()) instanceof Player) { switch ($this->plugin->getTouchMode($damager)) { case SkinTools::GIVE: $event->setCancelled(true); $this->plugin->setStolenSkin($entity, $damager); $entity->sendMessage(TextFormat::GREEN . $damager->getName() . " gave you their skin!"); $damager->sendMessage(TextFormat::GREEN . $entity->getName() . " has your skin now!"); break; case SkinTools::STEAL: $event->setCancelled(true); $this->plugin->setStolenSkin($damager, $entity); $event->getDamager()->sendMessage(TextFormat::GREEN . "You got " . $entity->getName() . "'s skin."); break; } } } }
public function onEntityDamageByEntity(ede $e) { if ($e instanceof edbee) { $p = $e->getEntity(); $d = $e->getDamager(); if ($this->isOni($d) and $this->isHuman($p)) { $this->Tatch($p, $d); } else { $e->setCancelled(); } } }
public function onDamage(EntityDamageEvent $event) { if ($event instanceof EntityDamageByEntityEvent) { if ($this->purgeStarted) { return; } if ($event->getEntity() instanceof Player and $event->getDamager() instanceof Player) { // TODO 제한시간 출력 $event->setCancelled(); } } }
public function onEntityDamage(EntityDamageEvent $event) { if ($p = $event->getEntity() instanceof Player && $event instanceof EntityDamageByEntityEvent && ($d = $event->getDamager() instanceof Player)) { $l = $d->getLocation(); if (!isset($this->move[$n = $d->getName()])) { $this->move[$n] = $l; } $m = $this->move[$n]; if ($p->distance($d) > 5 || $m->x == $l->x && $m->y == $l->y && $m->z == $l->z && $m->getYaw() == $l->getYaw() && $m->getPitch() == $l->getPitch()) { $event->setCancelled(false); } } }
public function onEntityHitByProjectile(EntityDamageEvent $event) { if (!$event instanceof EntityDamageByEntityEvent) { return; } $damager = $event->getDamager(); if (!$damager instanceof Projectile) { return; } if (isset($damager->namedtag["ArcheryDamage"])) { $event->setDamage($damager->namedtag["ArcheryDamage"]); } }
public function onHurt(EntityDamageEvent $event) { if ($event instanceof EntityDamageByEntityEvent) { $damager = $event->getDamager(); $player = $event->getEntity(); if ($damager instanceof Player) { if ($damager->getInventory()->getItemInHand()->getId() === 280) { $event->setKnockBack($this->getConfig()->get("KnockBack-Power")); $player->addEffect(Effect::getEffect(20)->setAmplifier(1)->setDuration(50)->setVisible(true)); $level = $damager->getLevel(); $level->addSound(new AnvilFallSound($damager->getLocation())); } } } }
public function onDamageByPlayer(EntityDamageEvent $ev) { $cause = $ev->getCause(); switch ($cause) { case EntityDamageEvent::CAUSE_ENTITY_ATTACK: $atkr = $ev->getDamager(); $player = $ev->getEntity(); if ($atkr instanceof Player and $player instanceof Player) { if ($this->isFriend($player, $atkr->getName())) { $ev->setCancelled(); $atkr->sendMessage("Cannot attack friend :("); } } break; } }
public function onAttack(EntityDamageEvent $event) { if ($event instanceof EntityDamageByEntityEvent) { $damager = $event->getDamager(); $player = $event->getEntity(); if ($damager instanceof Player and $player instanceof Player) { if ($this->plugin->war->getSoldier($player) == null or $this->plugin->war->getSoldier($damager) == null) { return true; } else { if ($this->is_sameTeam($this->plugin->war->getSoldier($player), $this->plugin->war->getSoldier($damager))) { $event->setCancelled(true); } } } } }
public function onEntityDamageByEntity(EntityDamageEvent $event) { $entity = $event->getEntity(); if ($event instanceof EntityDamageByEntityEvent) { $damager = $event->getDamager(); if ($entity instanceof Player && $damager instanceof Player) { if (!$this->getConfig()->get(strtolower($damager->getName()))) { $event->setCancelled(true); $damager->sendMessage("You disabled PvP mode!\nUse '/pvppon' for enable!"); } if (!$this->getConfig()->get(strtolower($entity->getName()))) { $event->setCancelled(true); $damager->sendMessage("Your target disabled PvP mode!"); } } } }
public function onDamageByPlayer(EntityDamageEvent $ev) { $cause = $ev->getCause(); switch ($cause) { case EntityDamageEvent::CAUSE_ENTITY_ATTACK: $atkr = $ev->getDamager(); $player = $ev->getEntity(); $pl = $ev->getPlayer(); if ($atkr instanceof Player and $player instanceof Player) { if ($this->inParty($player, $atkr->getName())) { $ev->setCancelled(); $atkr->sendMessage(TextFormat::RED . "{$pl} is in your party!"); } } } break; }
public function onEntityDamage(EntityDamageEvent $event) { if ($this->pvp["DMG"] === false) { $event->setCancelled(); } if ($event->getEntity() instanceof Player && $this->pvp["PVP"] !== true && $event instanceof EntityDamageByEntityEvent) { $dmg = $event->getDamager(); if ($dmg instanceof Player) { if ($dmg->hasPermission("debe.pvpmanager.pvp.attack")) { $event->setCancelled(false); } else { $event->setCancelled(); $dmg->sendMessage("[PVP Manager] PVP 권한이 없습니다."); } } } }
/** * @priority HIGH */ public function onAttack(EntityDamageEvent $ev) { if ($ev->isCancelled()) { return; } if (!$ev instanceof EntityDamageByEntityEvent) { return; } $pl = $ev->getDamager(); if (!$pl instanceof Player) { return; } $n = $pl->getName(); if (!isset($this->players[$n])) { return; } // Burn baby burn!!! $ev->getEntity()->setOnFire($this->cf["effect"]); }
public function onEntityDamage(EntityDamageEvent $event) { if ($event instanceof EntityDamageByEntityEvent && !$event instanceof EntityDamageByChildEntityEvent) { if (($Victim = $event->getEntity()) instanceof Player && ($Damager = $event->getDamager()) instanceof Player) { if ($this->provider->isPair($Victim->getName(), $Damager->getName())) { if (($Victim->getGamemode() == Player::SURVIVAL || $Victim->getGamemode() == Player::ADVENTURE) && ($Damager->getGamemode() == Player::SURVIVAL || $Damager->getGamemode() == Player::ADVENTURE)) { $DamagerInventory = $Damager->getInventory(); $VictimInventory = $Victim->getInventory(); $Item = $DamagerInventory->getItemInHand(); if ($Item && $Item->getId() !== 0) { $VictimInventory->addItem($VictimInventory->getItemInHand()); $VictimInventory->setItemInHand($Item); $DamagerInventory->setItemInHand(Item::get(0)); } } $event->setCancelled(true); } } } }
/** * @priority <HIGHEST> */ public function onEntityDamage(EntityDamageEvent $event) { $Victim = $event->getEntity(); if ($event instanceof EntityDamageByEntityEvent && !$event instanceof EntityDamageByChildEntityEvent) { $Damager = $event->getDamager(); if ($Damager instanceof Player) { if ($this->getState("damaged", $Damager, false)) { $event->setCancelled(true); return; } if ($Damager->getGamemode() !== Player::CREATIVE && $Damager->distance($Victim) > 4) { $event->setCancelled(true); return; } $this->setState("damaged", $Damager, true); ExecuteTask::Execute($this, function () use($Damager) { $this->setState("damaged", $Damager, false); }, 6); } } }
public function onHurt(EntityDamageEvent $ev) { $p = $ev->getEntity(); if ($ev instanceof EntityDamageByEntityEvent) { $damager = $ev->getDamager(); if ($damager instanceof Player) { if ($damager->getInventory()->getItemInHand()->getId() === 369) { $ev->setKnockBack(0.5); $ev->setDamage($ev->getDamage() + 3); $x = $p->getX(); $y = $p->getY(); $z = $p->getZ(); $r = mt_rand(0, 255); $g = mt_rand(0, 255); $b = mt_rand(0, 255); $p->getLevel()->addParticle(new DustParticle(new Vector3($x, $y, $z), $r, $g, $b)); $p->addEffect(Effect::getEffect(9)->setAmplifier(1)->setDuration(20)->setVisible(true)); $level = $damager->getLevel(); $damager->getLevel()->addSound(new AnvilFallSound($damager->getLocation())); } } } }
public function onEntityDamage(EntityDamageEvent $event) { if ($event instanceof EntityDamageByEntityEvent) { if ($event->getEntity() instanceof Player) { if ($this->isFriend($event->getDamager()->getName(), $event->getEntity()->getName()) && $this->gameStarted == true) { $event->setCancelled(true); $event->getDamager()->sendMessage(str_replace("{player}", $event->getPlayer()->getName(), $this->yml["hit_same_team_message"])); } if ($this->isFriend($event->getDamager()->getName(), $event->getEntity()->getName())) { $event->setCancelled(true); } } } }
/** * @priority LOWEST */ public function onPlayerPayment(EntityDamageEvent $ev) { if ($ev->isCancelled()) { return; } if (!$ev instanceof EntityDamageByEntityEvent) { return; } $giver = $ev->getDamager(); $taker = $ev->getEntity(); if (!$giver instanceof Player) { return; } if ($giver->isCreative() || $giver->isSpectator()) { return; } $hand = $giver->getInventory()->getItemInHand(); if ($hand->getId() == $this->owner->getCurrency() && $this->owner->getCurrency()) { if ($taker instanceof Player) { if ($taker->isCreative() || $taker->isSpectator()) { $giver->sendMessage(mc::_("No trading possible, %1% is in %2% mode", $taker->getDisplayName(), MPMU::gamemodeStr($taker->getGamemode()))); return; } $ev->setCancelled(); // OK, we want to pay, not to fight! $this->onPlayerPaid($giver, $taker); } //else paying an Entity! return; } if (isset($this->goods[$hand->getId()])) { if ($taker instanceof Player) { if ($taker->isCreative() || $taker->isSpectator()) { $giver->sendMessage(mc::_("No trading possible, %1% is in %2% mode", $taker->getDisplayName(), MPMU::gamemodeStr($taker->getGamemode()))); return; } $ev->setCancelled(); // OK, we are trading $this->onPlayerTrade($giver, $taker); } //else trading with entity... return; } }
public function onEntityDamage(EntityDamageEvent $event) { if ($event instanceof EntityDamageByEntityEvent) { if ($event->getEntity() instanceof Player) { if ($this->isFriend($event->getDamager()->getName(), $event->getEntity()->getName())) { $event->setCancelled(true); $event->getDamager()->sendMessage($event->getEntity()->getName() . " is in your team!"); } elseif (!$this->isFriend($event->getDamager()->getName(), $event->getEntity()->getName())) { $event->getDamager()->sendMessage("You hit " . $event->getEntity()->getName()); } } } }