Custom boss plugin for PocketMine-MP.

Related tags

Miscellaneous Bosses
Overview

Bosses

Custom boss plugin for PocketMine-MP.

What is this plugin?

This plugin adds entities that they have so much things to configure!

How to create boss?

Type /boss and select Create new Boss

Select Spawn now?

Select boss's attributes and press Create at the bottom of the menu

How to make a boss auto spawn?

Simply type /boss and if you are creating new boss press Create new Boss and type the second amount to Auto spawn countdown(seconds).

Example: 10

If you are not creating new boss click to Manage existing Boss and select your boss.

Type the second amount to Auto spawn countdown(seconds)

API

How to get most damager(s) of boss?

/** @var BossEntity $boss */
$killers = $boss->mostDamages;
/*
 * [
 *   firstPlayerName => damage
 *   secondPlayerName => damage
 *   .....
 *   lastPlayerName => damage
 * ]
 * */
$firstPlayerName = array_keys($killers)[0];
$firstPlayer = $killers[$firstPlayerName];

$secondPlayerName = array_keys($killers)[1];
$secondPlayer = $killers[$secondPlayerName];

How to get online most damager(s) of boss?

/** @var BossEntity $boss */
$killers = $boss->getOnlineDamagePlayers();
/*
 * [
 *   firstPlayerName => damage
 *   secondPlayerName => damage
 *   .....
 *   lastPlayerName => damage
 * ]
 * */
$firstPlayerName = array_keys($killers)[0];
$firstPlayer = $killers[$firstPlayerName];

$secondPlayerName = array_keys($killers)[1];
$secondPlayer = $killers[$secondPlayerName];

How to add death listener for a single boss?

use pocketmine\Server;
use OguzhanUmutlu\Bosses\entities\BossEntity;
/** @var BossEntity $boss */
$boss->onDie[] = function() {
    $onlineDamagers = $boss->getOnlineDamagePlayers();
    $firstPlayerName = array_keys($onlineDamagers)[0];
    Server::getInstance()->broadcastMessage(
        "Boss's most damager is $firstPlayerName!"
    );
};

How to add death listener for a single boss?

use pocketmine\Server;
use OguzhanUmutlu\Bosses\entities\BossEntity;
/** @var BossEntity $boss */
$boss->onDie[] = function() {
    $onlineDamagers = $boss->getOnlineDamagePlayers();
    $firstPlayerName = array_keys($onlineDamagers)[0];
    Server::getInstance()->broadcastMessage(
        "Boss's most damager is $firstPlayerName!"
    );
};

How to add death listener for a single boss?

use pocketmine\Server;
use OguzhanUmutlu\Bosses\entities\BossEntity;
/** @var BossEntity $boss */
$boss->onDie[] = function() {
    $onlineDamagers = $boss->getOnlineDamagePlayers();
    $firstPlayerName = array_keys($onlineDamagers)[0];
    Server::getInstance()->broadcastMessage(
        "Boss's most damager is $firstPlayerName!"
    );
};

Events:

use OguzhanUmutlu\Bosses\events\boss\BossDeathEvent;
use OguzhanUmutlu\Bosses\events\boss\BossShootEvent;
use OguzhanUmutlu\Bosses\events\boss\BossDamageEvent;
use OguzhanUmutlu\Bosses\events\minion\MinionDeathEvent;
use OguzhanUmutlu\Bosses\events\minion\MinionShootEvent;
use OguzhanUmutlu\Bosses\events\minion\MinionDamageEvent;
use pocketmine\event\entity\EntityDamageByEntityEvent;
/** @var BossDeathEvent|BossShootEvent|BossDamageEvent $event */
$boss = $event->getBoss();

/** @var MinionDeathEvent|MinionShootEvent|MinionDamageEvent $event */
$minion = $event->getMinion();

/** @var BossDeathEvent|MinionDeathEvent $event */
$drops = $event->getDrops();

/** @var BossDeathEvent|MinionDeathEvent $event */
$event->setDrops($drops);

/** @var BossShootEvent|MinionShootEvent $event */
$projectile = $event->getProjectile();

/** @var BossShootEvent|MinionShootEvent $event */
$event->setProjectile($projectile);

/** @var EntityDamageByEntityEvent $damage */
/** @var BossDamageEvent $event */
$damage = $event->getDamage();

TODO

  • more attributes
  • add Fly AI

Reporting bugs

You may open an issue on the Bosses GitHub repository for report bugs https://github.com/OguzhanUmutlu/Bosses/issues

You might also like...
A composer plugin, to install differenty types of composer packages in custom directories outside the default composer default installation path which is in the vendor folder.

composer-custom-directory-installer A composer plugin, to install differenty types of composer packages in custom directories outside the default comp

OctoberCMS BlogHub Plugin - Extends RainLab's Blog extension with custom meta details, additional archives and more.

BlogHub extends the RainLab.Blog OctoberCMS plugin with many necessary and helpful features such as Moderatable Comments, Promotable Tags, Custom Meta Fields, additional Archives, basic Statistics, Views counter and more.

Integrates the ClassicPress Plugin Directory and any plugin stored in GitHub (tagged with classicpress-plugin) in the ClassicPress Admin

ClassicPress Plugin Directory Adds a new screen in a ClassicPress Install where you can browse, install, activate, deactivate, update, delete and pagi

A PocketMine/Altay Plugin to morph yourself into a block
A PocketMine/Altay Plugin to morph yourself into a block

BlockMorph A PocketMine/Altay Plugin to morph yourself into a block Command To morph yourself into a block use this command: /blockmorph [BlockID|Bloc

A useful PocketMine-MP plugin that allows you to create crates in-game!

ComplexCrates A useful PocketMine-MP plugin that allows you to create crates in-game! Commands Main command: /crate Sub commands: create

A plugin to add more blocks to PocketMine

This plugin aims to add all blocks not included in PocketMine. As of right now the ExtendedBlocks plugin is required to add blocks with IDs above 255.

✨An Ultimate NPC plugin made by brokiem for PocketMine-MP.
✨An Ultimate NPC plugin made by brokiem for PocketMine-MP.

SimpleNPC An Ultimate NPC plugin made by brokiem for PocketMine-MP. ✨ Features Migration from Slapper supported! ✔ Right click to interact! ✔ NPC can

Plot and protection plugin for PocketMine-MP
Plot and protection plugin for PocketMine-MP

MyPlot Create, manage, and build in protected plots. Keep your builds safe from griefers! Official MyPlot precompiled builds can be found on Poggit at

A Pocketmine-MP (PMMP) plugin to help staff members enforce the rules of the server.
A Pocketmine-MP (PMMP) plugin to help staff members enforce the rules of the server.

StaffMode is an all-in-one Pocketmine-MP (PMMP) moderation plugin made to simplify the life of staff members.

Owner
Oğuzhan
14 | PHP, Java, Node.JS and Python Developer, Discord: Oğuzhan#6561
Oğuzhan
A plugin manager for PocketMine-MP downloads plugin from PocketMine-MP official plugin repository

oh-my-pmmp A plugin manager for PocketMine-MP Getting Started Prerequisites Your server MUST RUN the latest version of PocketMine. Installation From P

thebigcrafter 6 Jan 4, 2023
This plugin adds custom pets to game for PocketMine-MP!

ComplexPets A plugin that adds pets to game made by OguzhanUmutlu for PocketMine-MP. Command Simply type /pets and summon your favorite animal! Featur

Oğuzhan 10 Aug 12, 2021
Plug-and-Play Custom Enchants Plugin For PocketMine-PMP

DEVELOPER'S NOTE: I can tell you right now this plugin hasn't been tested. I haven't even checked to see if it loads without crashing yet. Half of thi

VANIC 10 Oct 23, 2021
Plug-and-Play Custom Enchants Plugin For PocketMine-PMP

DEVELOPER'S NOTE: I can tell you right now this plugin hasn't been tested. I haven't even checked to see if it loads without crashing yet. Half of thi

VANIC 10 Oct 23, 2021
Cosmetics plugin for PocketMine-MP that adds custom and animated geometry!

WHAT IS THIS? This is a cosmetics plugin WITH ANIMATIONS that lets your players add custom geometries to their skin from a UI! Showcased here: https:/

Star 6 Jun 16, 2023
Glz custom fields - Unlimited Custom Fields for Textpattern

Unlimited custom fields for Textpattern This plugin sits under the Extensions tab in the back-end and gives your custom fields new life. You can final

Gerhard Lazu 21 Dec 1, 2019
Magento 2 custom extension to add custom attributes(longitude, latitude) to customer address

Magento 2 custom extension to add custom attributes(longitude, latitude) to customer address. Then save them to quote model and copy them from quote address to order address on bakend, frontend, rest api

MageArab 2 Jul 14, 2022
This Pocketmine-MP plugin is a plugin including a complete faction system.

SimpleFaction Simple faction plugin replacing FactionsPro which is no longer updated. Commands Command Name Command Description Available for /f help

Ayzrix 33 Dec 19, 2022
SpawnInLobby Pocketmine-MP plugin. With this plugin the player will always join the game at the default world spawn point

SpawnInLobby Pocketmine-MP plugin. With this plugin the player will always join the game at the default world spawn point

null 1 Jan 7, 2022
Formcreator is a plugin which allow creation of custom forms of easy access

Formcreator is a plugin which allow creation of custom forms of easy access. At the same time, the plugin allow the creation of one or more tickets when the form is filled.

GLPI plugins 135 Dec 22, 2022