Advertisement
Guest User

Untitled

a guest
Dec 3rd, 2016
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.01 KB | None | 0 0
  1. <?php
  2.  
  3. namespace Jelly9912;
  4.  
  5. use pocketmine\plugin\PluginBase as PluginBase;
  6. use pocketmine\event\Listener as Listener;
  7. use pocketmine\utils\TextFormat;
  8. use pocketmine\event\block\BlockBreakEvent;
  9. use pocketmine\event\block\BlockPlaceEvent;
  10. use pocketmine\utils\Config;
  11. use pocketmine\block\Block;
  12. use pocketmine\block\Air;
  13. use pocketmine\block\Stone;
  14. use pocketmine\math\Vector3;
  15. use pocketmine\item\Item;
  16. use pocketmine\level\particle\LavaParticle;
  17. use pocketmine\level\sound\BlazeShootSound;
  18.  
  19.  
  20. class Main extends PluginBase implements Listener{
  21.  
  22.  
  23. public function onEnable(){
  24. $this->getServer()->getPluginManager()->registerEvents($this,$this);
  25. $this->saveDefaultConfig();
  26. $this->getServer()->getLogger()->info(TextFormat::GREEN . "Loading");
  27. }
  28.  
  29. public function onPlace(BlockPlaceEvent $event){
  30. $blok = $event->getBlock();
  31. $gracz = $event->getPlayer();
  32. $y = $blok->getFloorY();
  33. $x = $blok->getFloorX();
  34. $z = $blok->getFloorZ();
  35.  
  36. if($blok->getId() == 121){
  37. if(!($event->isCancelled())){
  38. $gracz->getLevel()->setBlock(new Vector3($blok->getFloorX(), $blok->getFloorY()+1, $blok->getFloorZ()), new Stone());
  39. $gracz->sendMessage("• Postawiles stoniarke! •");
  40. $center = new Vector3($x, $y, $z);
  41. $particle = new LavaParticle($center);
  42. for($yaw = 0, $y = $center->y; $y < $center->y + 3; $yaw += (M_PI * 2) / 20, $y += 1 / 20) {
  43. $x = -sin($yaw) + $center->x;
  44. $z = cos($yaw) + $center->z;
  45. $particle->setComponents($x, $y, $z);
  46. }
  47. }else{
  48. $gracz->sendMessage("• Nie możesz postawić tutaj stoniarki, ten teren jest zabezpieczony •");
  49. }
  50. }
  51. }
  52.  
  53. public function onBreak(BlockBreakEvent $event){
  54. $blok = $event->getBlock();
  55. $gracz = $event->getPlayer();
  56. $y = $blok->getFloorY();
  57. $x = $blok->getFloorX();
  58. $z = $blok->getFloorZ();
  59. if($blok->getId() == 1){
  60. if($gracz->getLevel()->getBlock(new Vector3($x, $y-1, $z))->getId() == 121) {
  61. $event->setCancelled();
  62. if($this->getConfig()->get("rzeczy-do-eq") == "tak"){
  63. $gracz->getInventory()->addItem(Item::get($this->getConfig()->get("item"), 0, $this->getConfig()->get("ilosc")));
  64. }elseif($this->getConfig()->get("rzeczy-do-eq") == "nie"){
  65. $gracz->getLevel()->dropItem(new Vector3($x, $y, $z), Item::get($this->getConfig()->get("item"), 0, $this->getConfig()->get("ilosc")));
  66. }
  67. }
  68. }elseif($blok->getId() == 121){
  69. $gracz->getLevel()->setBlock(new Vector3($blok->getFloorX(), $blok->getFloorY()+1, $blok->getFloorZ()), new Air());
  70. $gracz->sendMessage(TextFormat::YELLOW . "• Stoniarka usunięta •");
  71. $center = new Vector3($x, $y, $z);
  72. $particle = new LavaParticle($center);
  73. for($yaw = 0, $y = $center->y; $y < $center->y + 5; $yaw += (M_PI * 4) / 20, $y += 3 / 20) {
  74. $x = -sin($yaw) + $center->x;
  75. $z = cos($yaw) + $center->z;
  76. $particle->setComponents($x, $y, $z);
  77. }
  78. }
  79. }
  80. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement