Inheritance: extends PlayerEvent, implements pocketmine\event\Cancellable
 public function onPlayerAchievementAwardedEvent(PlayerAchievementAwardedEvent $event)
 {
     $message = new TranslationContainer("chat.type.achievement", [$event->getPlayer()->getDisplayName(), TextFormat::GREEN . Achievement::$list[$event->getAchievement()]["name"]]);
     if ($message instanceof TranslationContainer) {
         $message = $this->getServer()->getLanguage()->translateString($message->getText(), $message->getParameters());
     }
     AnnounceSystem::getInstance()->pushBroadCastPopup($message, 2);
 }
Example #2
0
 /**
  * @param string $achievementId
  *
  * @return bool
  */
 public function awardAchievement($achievementId)
 {
     if (isset(Achievement::$list[$achievementId]) and !$this->hasAchievement($achievementId)) {
         foreach (Achievement::$list[$achievementId]["requires"] as $requerimentId) {
             if (!$this->hasAchievement($requerimentId)) {
                 return false;
             }
         }
         $this->server->getPluginManager()->callEvent($ev = new PlayerAchievementAwardedEvent($this, $achievementId));
         if (!$ev->isCancelled()) {
             $this->achievements[$achievementId] = true;
             Achievement::broadcast($this, $achievementId);
             return true;
         } else {
             return false;
         }
     }
     return false;
 }
Example #3
0
 public function onAchievement(PlayerAchievementAwardedEvent $event)
 {
     $player = $event->getPlayer();
     $fizz = new BlazeShootSound($player);
     $player->getLevel()->addSound($fizz);
 }
 public function onAwardAchievement(PlayerAchievementAwardedEvent $event)
 {
     if ($this->plugin->getConfig()->getAll()["block-all-events"]) {
         if (!ServerAuth::getAPI()->isPlayerRegistered($event->getPlayer()->getName()) || !ServerAuth::getAPI()->isPlayerAuthenticated($event->getPlayer())) {
             $event->setCancelled(true);
         }
     }
 }
Example #5
0
 public function PlayerAchievementAwardedEvent(PlayerAchievementAwardedEvent $event)
 {
     $player = $event->getPlayer();
     $achievement = $event->getAchievement();
     if ($this->config->get("PlayerAchievementAwardedEvent", true)) {
         if ($player instanceof Player) {
             $event->setCancelled(true);
             $player->sendTip($this->prefix . "§5§lYou have {$achievement} awarded!");
             $player->getLevel()->addSound(new PopSound($player));
         }
     }
 }