Esempio n. 1
0
 /**
  * Clears a player related state
  *
  * @param str $label - state variable to clear
  * @param Player|str $player - intance of Player or their name
  */
 public function unsetState($label, $player)
 {
     $player = MPMU::iName($player);
     if (!isset($this->state[$player])) {
         return;
     }
     if (!isset($this->state[$player][$label])) {
         return;
     }
     unset($this->state[$player][$label]);
 }
Esempio n. 2
0
 /**
  * Handle player quit events.  Restore player's inventory before resetting
  * state.
  *
  * @param PlayerQuitEvent $ev - Quit event
  */
 public function onPlayerQuit(PlayerQuitEvent $ev)
 {
     echo __METHOD__ . "," . __LINE__ . "\n";
     //##DEBUG
     $n = MPMU::iName($ev->getPlayer());
     $xx = $this->getState(self::tag, $ev->getPlayer(), null);
     if ($xx !== null) {
         $this->restoreInv($ev->getPlayer());
     }
     parent::onPlayerQuit($ev);
     echo __METHOD__ . "," . __LINE__ . "\n";
     //##DEBUG
 }
Esempio n. 3
0
 public function stopLeading($leader)
 {
     $leader = MPMU::iName($leader);
     if (!isset($this->leaders[$leader])) {
         return;
     }
     foreach ($this->leaders[$leader] as $follower) {
         if (isset($this->followers[$follower])) {
             unset($this->followers[$follower]);
         }
     }
     unset($this->leaders[$leader]);
 }
Esempio n. 4
0
 /**
  * @priority MONITOR
  */
 public function onPlayerCmd(PlayerCommandPreprocessEvent $ev)
 {
     if ($ev->isCancelled()) {
         return;
     }
     if ($this->exPerms !== null && $ev->getPlayer()->hasPermission($this->exPerms)) {
         return;
     }
     $this->logEvent(MPMU::iName($ev->getPlayer()), $ev->getMessage());
 }