Tool: cleanup durability handling, closes #379

long overdue... this isn't quite as extensible as the original api3/blocks system was, but this is primarily intended to replace Item->useOn(). If plugins want to use it it can be extended later on.
This commit is contained in:
Dylan K. Taylor
2018-05-10 19:48:51 +01:00
parent b8523cb304
commit b21572774a
13 changed files with 103 additions and 56 deletions

View File

@ -2527,14 +2527,12 @@ class Player extends Human implements CommandSender, ChunkLoader, IPlayer{
}
}
if($this->isSurvival()){
if($heldItem->useOn($target)){
$this->inventory->setItemInHand($heldItem);
}
$this->exhaust(0.3, PlayerExhaustEvent::CAUSE_ATTACK);
if($heldItem->onAttackEntity($target) and $this->isSurvival()){ //always fire the hook, even if we are survival
$this->inventory->setItemInHand($heldItem);
}
$this->exhaust(0.3, PlayerExhaustEvent::CAUSE_ATTACK);
return true;
default:
break; //unknown