コード例 #1
0
ファイル: Boat.php プロジェクト: kniffo80/Genisys
 public function attack($damage, EntityDamageEvent $source)
 {
     parent::attack($damage, $source);
     if (!$source->isCancelled()) {
         $pk = new EntityEventPacket();
         $pk->eid = $this->id;
         $pk->event = EntityEventPacket::HURT_ANIMATION;
         foreach ($this->getLevel()->getPlayers() as $player) {
             $player->dataPacket($pk);
         }
     }
 }
コード例 #2
0
ファイル: Minecart.php プロジェクト: starterdragon/ClearSky
 public function attack($damage, EntityDamageEvent $source)
 {
     if ($source instanceof EntityDamageByChildEntityEvent) {
         if ($source instanceof ProjectileHitEvent && $source->getEntity() instanceof Arrow) {
             $this->setHealth(0);
         }
     } elseif ($source instanceof EntityDamageByBlockEvent && $source->getDamager() instanceof Cactus) {
         $this->setHealth(0);
     }
     parent::attack($damage, $source);
     if (!$source->isCancelled()) {
         $pk = new EntityEventPacket();
         $pk->eid = $this->id;
         $pk->event = $this->getHealth() <= 0 ? EntityEventPacket::DEATH_ANIMATION : EntityEventPacket::HURT_ANIMATION;
         foreach ($this->getLevel()->getPlayers() as $player) {
             $player->dataPacket($pk);
         }
     }
 }