Advertisement
Guest User

Untitled

a guest
Nov 19th, 2018
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.90 KB | None | 0 0
  1. <?php
  2.  
  3. namespace EIXHOOKAH;
  4.  
  5. use pocketmine\Player;
  6. use pocketmine\Server;
  7. use pocketmine\plugin\PluginBase;
  8. use pocketmine\event\Listener;
  9. use pocketmine\inventory\Inventory;
  10. use pocketmine\item\Item;
  11. use pocketmine\event\player\PlayerJoinEvent;
  12. use pocketmine\event\block\BlockBreakEvent;
  13. use pocketmine\utils\Config;
  14. use pocketmine\event\player\PlayerChatEvent;
  15. use pocketmine\command\Command;
  16. use pocketmine\command\CommandSender;
  17. use pocketmine\block\Grass;
  18. use pocketmine\level\Level;
  19. use pocketmine\scheduler\PluginTask;
  20. use pocketmine\math\Vector3;
  21. use pocketmine\event\player\PlayerDeathEvent;
  22. use pocketmine\event\player\PlayerInteractEvent;
  23. use pocketmine\event\inventory\CraftItemEvent;
  24. use pocketmine\block\Chest;
  25. use pocketmine\tile\Tile;
  26. use pocketmine\level\Explosion;
  27. use pocketmine\level\Position;
  28. use pocketmine\block\Block;
  29. use pocketmine\nbt\tag\ByteTag;
  30. use pocketmine\nbt\tag\CompoundTag;
  31. use pocketmine\nbt\tag\DoubleTag;
  32. use pocketmine\nbt\tag\FloatTag;
  33. use pocketmine\nbt\tag\IntTag;
  34. use pocketmine\nbt\tag\ListTag;
  35. use pocketmine\nbt\tag\StringTag;
  36. use pocketmine\level\particle\ExplodeParticle;
  37. use pocketmine\entity\Effect;
  38. use pocketmine\entity\EffectInstance;
  39.  
  40. class Main extends PluginBase implements Listener {
  41.  
  42. public $EconomyAPI;
  43. public function onEnable(){
  44.  
  45. $this->getServer()->getPluginManager()->registerEvents($this, $this);
  46.  
  47. $this->EconomyAPI = $this->getServer()->getPluginManager()->getPlugin("EconomyAPI");
  48. $this->getLogger()->info('§eПлагин§b §lEIXhookah§r §eот §aEIX Studio §eуспешно запущен!');
  49.  
  50. }
  51.  
  52.  
  53. public function onCommand(CommandSender $p, Command $cmd, string $label,array $args): bool{
  54. if(!$p instanceof Player) {
  55. $p->sendMessage('§4Данная команда доступна только для игроков!');
  56. return true;
  57. }
  58. $p = $p->getPlayer();
  59.  
  60. switch($cmd->getName()){
  61.  
  62. case 'bd':
  63. $money = $this->EconomyAPI->myMoney($p);
  64. if($money >= 10000){
  65. $this->EconomyAPI->reduceMoney($p, 10000);
  66. $p->sendMessage("§8[§f+§8] §cDenCraft §8> §fВы успешно купили набор §cкальяна ");
  67. $items = ['117:0', '35:7'];
  68. foreach ($items as $item) {
  69. if($p->getInventory()->canAddItem($item)){
  70. $data = explode(":", $item);
  71. $p->getInventory()->addItem(Item::get($data[0], $data[1], 1));
  72. }else{
  73. $p->sendMessage("§8[§f+§8] §cDenCraft §8> §fУ Вас недостаточно места в инвентаре");
  74. }
  75. }
  76. } else {
  77. $p->sendMessage("§8[§f+§8] §cDenCraft §8> §fУ Вас недостаточно денег");
  78. }
  79. break;
  80. }
  81. return true;
  82. }
  83. public function interact(PlayerInteractEvent $e){
  84.  
  85. $block = $e->getBlock();
  86. if($block->getId() === 117) {
  87. $p = $e->getPlayer();
  88. $c_position = new Vector3($block->getX(),$block->getY()-1, $block->getZ());
  89. $level = $this->getServer()->getDefaultLevel();
  90.  
  91. if($level->getBlock($c_position)->getId() === 35 && $level->getBlock($c_position)->getDamage() === 7) {
  92. $e->setCancelled(true);
  93. $time = time();
  94. $name = $p->getName();
  95. if(!isset($this->kit[$name])) $this->kit[$name] = 0;
  96. if($this->kit[$name] <= $time){
  97. $this->kit[$name] = $time +600; // - это время в секундах
  98. $particle = new ExplodeParticle($p->getPosition());
  99.  
  100. for($i = 0; $i < 100; ++$i){
  101. $x = $p->getX()+ 0.5;
  102. $y = $p->getY() + 1;
  103. $z = $p->getZ() + 0.5;
  104. $particle->setComponents($x, $y, $z);
  105. $level->addParticle($particle);
  106. }
  107.  
  108.  
  109. $p->sendMessage("§8[§f+§8] §cDenCraft §8> §fВы успешно покурили§c кальян");
  110. } else {
  111. $ost = $this->kit[$name] - $time;
  112. $p->sendMessage("§8[§f+§8] §cDenCraft §8> §fКальян можно курнуть через §c".round($ost/60)." минут!");
  113. }
  114. }
  115. }
  116. }
  117. }
  118. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement