Compare commits

...

6 commits
1.0 ... master

Author SHA1 Message Date
1000644d98
Update README.md 2018-07-15 17:52:54 +00:00
0203f6e9a0
Merge pull request #3 from robske110/master
Fix not creating plugin data folder; Round position broadcast; add icon
2017-10-31 23:10:52 +01:00
Tim (robske_110)
57dbbe2f6c Fix not creating plugin data folder; Round position broadcast; add icon
Bump version to 1.0.1
2017-10-31 19:07:23 +01:00
dd4c3d95e8
Removing some useless left from before. 2017-10-31 18:22:11 +01:00
b7367eb4fd Merge branch 'master' of https://github.com/Ad5001/Spooky 2017-10-31 17:35:11 +01:00
1f8bb46d84 Updating for github release, removing useless code. 2017-10-31 17:35:09 +01:00
7 changed files with 24 additions and 60 deletions

View file

@ -4,4 +4,5 @@ branches:
projects:
Spooky:
path: ""
icon: "icon.png"
...

View file

@ -1,3 +1,4 @@
## This repository was moved to [git.ad5001.eu](https://git.ad5001.eu/Ad5001/Spooky)
# Spooky
Halloween plugin.
A new bossfight's waiting for you and your players. <b>The Ghost is <i>here</i></b>.

BIN
icon.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 240 B

View file

@ -1,7 +1,7 @@
---
name: Spooky
author: Ad5001
version: 1.0
version: 1.0.1
api: [3.0.0-ALPHA9]
main: Ad5001\Spooky\Main
commands: []

View file

@ -44,32 +44,33 @@ class Main extends PluginBase implements Listener{
$this->getServer()->getScheduler()->scheduleRepeatingTask(new TickTask($this), 2);
$this->getServer()->getPluginManager()->registerEvents($this, $this);
// Resource pack
if(!file_exists($this->getDataFolder())){
mkdir($this->getDataFolder());
}
$downRP = false;
if(!file_exists($this->getDataFolder() . "Spooky.mcpack")) {
$downRP = true;
echo TextFormat::toANSI("§f[Spooky] ⚪ Downloading resource pack...");
file_put_contents($this->getDataFolder() . "Spooky.mcpack", Utils::getURL("https://download.ad5001.eu/other/Spooky/Spooky.mcpack"));
file_put_contents($this->getDataFolder() . "Spooky.mcpack", Utils::getURL("https://github.com/Ad5001/Spooky/releases/download/1.0/Spooky.mcpack"));
}
echo str_repeat("\010", $downRP ? strlen(TextFormat::toANSI("§f[Spooky] ⚪ Downloading resource pack...")) : 0) . TextFormat::toANSI("§f[Spooky] ⚪ Applying resource pack... "); // Replacing latest message
$pack = new ZippedResourcePack($this->getDataFolder() . "Spooky.mcpack");
$r = new \ReflectionClass("pocketmine\\resourcepacks\\ResourcePackManager");
if($pack instanceof \pocketmine\resourcepacks\ResourcePack){
// Reflection because devs thought it was a great idea to not let plugins manage resource packs :/
$resourcePacks = $r->getProperty("resourcePacks");
$resourcePacks->setAccessible(true);
$rps = $resourcePacks->getValue($this->getServer()->getResourceManager());
$rps[] = $pack;
$resourcePacks->setValue($this->getServer()->getResourceManager(), $rps);
$resourceUuids = $r->getProperty("uuidList");
$resourceUuids->setAccessible(true);
$uuids = $resourceUuids->getValue($this->getServer()->getResourceManager());
$uuids[$pack->getPackId()] = $pack;
$resourceUuids->setValue($this->getServer()->getResourceManager(), $uuids);
// Forcing resource packs. We want the client to hear the music!
$forceResources = $r->getProperty("serverForceResources");
$forceResources->setAccessible(true);
$forceResources->setValue($this->getServer()->getResourceManager(), true);
}
// Reflection because devs thought it was a great idea to not let plugins manage resource packs :/
$resourcePacks = $r->getProperty("resourcePacks");
$resourcePacks->setAccessible(true);
$rps = $resourcePacks->getValue($this->getServer()->getResourceManager());
$rps[] = $pack;
$resourcePacks->setValue($this->getServer()->getResourceManager(), $rps);
$resourceUuids = $r->getProperty("uuidList");
$resourceUuids->setAccessible(true);
$uuids = $resourceUuids->getValue($this->getServer()->getResourceManager());
$uuids[$pack->getPackId()] = $pack;
$resourceUuids->setValue($this->getServer()->getResourceManager(), $uuids);
// Forcing resource packs. We want the client to hear the music!
$forceResources = $r->getProperty("serverForceResources");
$forceResources->setAccessible(true);
$forceResources->setValue($this->getServer()->getResourceManager(), true);
echo str_repeat("\010", strlen("⚪ Applying resource pack... ")) . TextFormat::toANSI("§a✔ Done! Spooky enabled! \n");
}
@ -197,4 +198,4 @@ class Main extends PluginBase implements Listener{
}
}
}
}
}

View file

@ -104,25 +104,6 @@ class Ghost extends Human {
$p->sendPopup("Music: The Return by Niviro, www.djniviro.com");
}
/**
* Starts a sequence where the ghost is in an intense fight.
*
* @return void
*/
public function intenseFight(){
if(!$this->checkIfConnected()) return;
// TODO: Custom intense fight
}
/**
* Starts a sequence where the ghost is in an calm fight.
*
* @return void
*/
public function calmFight(){
if(!$this->checkIfConnected()) return;
}
/**
* Starts a sequence where the ghost blinds the player,
* slows him down (zooming effect w/ fov) and he appears invuulnerable
@ -449,7 +430,7 @@ class Ghost extends Human {
$pk->headYaw = $this->yaw;
$pk->pitch = $this->pitch;
$this->getPlayer()->dataPacket($pk);
$this->getPlayer()->sendPopup("He's " . ($this->x - $this->getPlayer()->x) . ", " . ($this->y - $this->getPlayer()->y) . ", " . ($this->z - $this->getPlayer()->z) . " blocks away");
$this->getPlayer()->sendPopup("He's " . round($this->x - $this->getPlayer()->x, 1) . ", " . round($this->y - $this->getPlayer()->y, 1) . ", " . round($this->z - $this->getPlayer()->z, 1) . " blocks away");
}

View file

@ -43,15 +43,11 @@ class TickTask extends PluginTask {
self::$ghosts[$i]->spawnTo(self::$ghosts[$i]->getPlayer());
self::$ghosts[$i]->scareEnterPhase();
break;
case 66: // 1m06s
self::$ghosts[$i]->intenseFight();
break;
case 82: // 1m22s
self::$ghosts[$i]->movePlayerRandomly();
self::$ghosts[$i]->repeatFunc = "move";
break;
case 88: // 1m28s
self::$ghosts[$i]->calmFight();
self::$ghosts[$i]->repeatFunc = null;
break;
case 95: // 1m35s
@ -62,18 +58,9 @@ class TickTask extends PluginTask {
self::$ghosts[$i]->repeatFunc = null;
self::$ghosts[$i]->scareEnterPhase();
break;
case 103: // 1m43s
self::$ghosts[$i]->intenseFight();
break;
case 136: // 2m16s
self::$ghosts[$i]->calmFight();
break;
case 151: // 2m31s
self::$ghosts[$i]->scareEnterPhase();
break;
case 153: // 2m33s
self::$ghosts[$i]->intenseFight();
break;
case 168: // 2m48s
self::$ghosts[$i]->movePlayerRandomly();
self::$ghosts[$i]->repeatFunc = "move";
@ -84,17 +71,10 @@ class TickTask extends PluginTask {
break;
case 183: // 3m03s
self::$ghosts[$i]->repeatFunc = null;
self::$ghosts[$i]->intenseFight();
break;
case 197: // 3m17s
self::$ghosts[$i]->scareEnterPhase();
break;
case 198: // 3m18s
self::$ghosts[$i]->intenseFight();
break;
case 227: // 3m47s
self::$ghosts[$i]->calmFight();
break;
case 262: // 4m22
self::$ghosts[$i]->getPlayer()->sendMessage("Mwahahahaha... Try being faster next time!");
self::$ghosts[$i]->close();