Merge branch 'master' of ssh://184.154.0.242:7999/min/Mineplex

This commit is contained in:
Jonathan Williams 2015-07-09 18:34:20 -05:00
commit 581d58c313
5 changed files with 28 additions and 28 deletions

View File

@ -8,11 +8,9 @@
namespace mineplex\plugin\gameengine\game\components\feature; namespace mineplex\plugin\gameengine\game\components\feature;
use mineplex\plugin\gameengine\arenas\Arena; use mineplex\plugin\gameengine\arenas\Arena;
use pocketmine\event\HandlerList; use pocketmine\event\HandlerList;
use pocketmine\event\Listener; use pocketmine\event\Listener;
use pocketmine\plugin\Plugin;
use pocketmine\Server; use pocketmine\Server;
class ListenerFeature implements Feature, Listener { class ListenerFeature implements Feature, Listener {

View File

@ -10,9 +10,7 @@ namespace mineplex\plugin\gameengine\game\components\feature\features;
use mineplex\plugin\gameengine\arenas\Arena; use mineplex\plugin\gameengine\arenas\Arena;
use mineplex\plugin\gameengine\arenas\events\ArenaJoinEvent;
use mineplex\plugin\gameengine\game\components\feature\ListenerFeature; use mineplex\plugin\gameengine\game\components\feature\ListenerFeature;
use mineplex\plugin\gameengine\game\components\spectate\SpectateComponent;
use pocketmine\event\entity\EntityDamageEvent; use pocketmine\event\entity\EntityDamageEvent;
use pocketmine\Server; use pocketmine\Server;
@ -23,24 +21,11 @@ class NoDamage extends ListenerFeature {
parent::__construct($arena); parent::__construct($arena);
} }
function onJoin(EntityDamageEvent $event) function onDamage(EntityDamageEvent $event)
{ {
if (!$this->getArena()->hasPlayer($event->getEntity())) if (!$this->getArena()->hasPlayer($event->getEntity()))
return; return;
Server::getInstance()->broadcastMessage("Stopped!");
$event->setCancelled(); $event->setCancelled();
} }
public function enable()
{
Server::getInstance()->broadcastMessage("Death enable!");
parent::enable();
}
public function disable()
{
Server::getInstance()->broadcastMessage("Death disable!");
parent::disable();
}
} }

View File

@ -105,6 +105,8 @@ class DuringGame extends ListenerFeature implements BenchTask {
if (!$this->spectateComponent->isSpectating($event->getPlayer())) if (!$this->spectateComponent->isSpectating($event->getPlayer()))
array_push($this->rank, $event->getPlayer()); array_push($this->rank, $event->getPlayer());
$this->checkEndGame();
} }
@ -115,7 +117,8 @@ class DuringGame extends ListenerFeature implements BenchTask {
array_push($this->rank, $event->getPlayer()); array_push($this->rank, $event->getPlayer());
$this->checkEndGame(true); //Meh, don't like doing things this way, but I need it to call sendWinners after the player is added to spectating from spectating.
BenchSchedule::runTaskLater($this, 0);
} }
public function checkEndGame($subtract = false) public function checkEndGame($subtract = false)

View File

@ -20,10 +20,12 @@ use mineplex\plugin\gameengine\game\components\feature\features\NoPickUpItem;
use mineplex\plugin\gameengine\game\components\feature\managers\GameStateFeatureManager; use mineplex\plugin\gameengine\game\components\feature\managers\GameStateFeatureManager;
use mineplex\plugin\gameengine\game\components\gamestate\GameState; use mineplex\plugin\gameengine\game\components\gamestate\GameState;
use mineplex\plugin\gameengine\game\components\gamestate\GameStateComponent; use mineplex\plugin\gameengine\game\components\gamestate\GameStateComponent;
use mineplex\plugin\gameengine\game\components\lobby\LobbyComponent;
use mineplex\plugin\gameengine\game\components\spectate\GameModeSpectateComponent; use mineplex\plugin\gameengine\game\components\spectate\GameModeSpectateComponent;
use mineplex\plugin\gameengine\game\Game; use mineplex\plugin\gameengine\game\Game;
use mineplex\plugin\gameengine\game\components\countdown\LobbyCountdown;
use mineplex\plugin\gameengine\game\components\feature\Feature;
use mineplex\plugin\gameengine\game\components\victorytype\LMSVictoryType;
class SurvivalGames implements Game { class SurvivalGames implements Game {
function start(Arena $arena) function start(Arena $arena)
@ -42,7 +44,7 @@ class SurvivalGames implements Game {
$features = array( $features = array(
//Just here cause I'm not using LobbyComponent atm //Just here cause I'm not using LobbyComponent atm
GameState::LOBBY => array( $stopEveryThing, $noDamage, ), //GameState::LOBBY => array( $stopEveryThing, $noDamage, ),
GameState::PRE_GAME => array( $stopEveryThing, $noDamage, $joinSpectate), GameState::PRE_GAME => array( $stopEveryThing, $noDamage, $joinSpectate),
@ -52,16 +54,18 @@ class SurvivalGames implements Game {
); );
new LobbyComponent($arena);
new GameStateFeatureManager($arena, $features); new GameStateFeatureManager($arena, $features);
//new LobbyCountdown( $arena, $gameStateComponent, null, GameState::LOBBY, GameState::PRE_GAME, 10, 2); new LobbyCountdown( $arena, $gameStateComponent, null, GameState::LOBBY, GameState::PRE_GAME, 10, 2);
new GameStateCountdown($arena, $gameStateComponent, 5, GameState::LOBBY, GameState::PRE_GAME); //new GameStateCountdown($arena, $gameStateComponent, 5, GameState::LOBBY, GameState::PRE_GAME);
new GameStateCountdown($arena, $gameStateComponent, 5, GameState::PRE_GAME, GameState::GAME); new GameStateCountdown($arena, $gameStateComponent, 5, GameState::PRE_GAME, GameState::GAME);
new GameStateCountdown($arena, $gameStateComponent, 5, GameState::GAME, GameState::POST_GAME); //new GameStateCountdown($arena, $gameStateComponent, 5, GameState::GAME, GameState::POST_GAME);
//new LMSVictoryType( $arena, $spectateComponent, $gameStateComponent); new LMSVictoryType( $arena, $spectateComponent, $gameStateComponent);
new GameStateCountdown($arena, $gameStateComponent, 5, GameState::POST_GAME, GameState::RESTARTING); new GameStateCountdown($arena, $gameStateComponent, 5, GameState::POST_GAME, GameState::RESTARTING);

View File

@ -18,7 +18,17 @@ class UtilArray {
public static function arrayDiff(array $array, array $subtract) public static function arrayDiff(array $array, array $subtract)
{ {
return array_udiff($array, $subtract, ['mineplex\plugin\util\UtilArray', 'comp']); //THIS IS TEMP FIX LATER!!
$return = [];
foreach ($array as $value)
{
if (!in_array($value, $subtract))
array_push($return, $value);
}
return $return;
//return array_udiff($array, $subtract, ['mineplex\plugin\util\UtilArray', 'comp']);
} }