PocketMine-MP  1.4 - API 1.10.0
 All Classes Namespaces Functions Variables Pages
DoubleSlab.php
1 <?php
2 
3 /*
4  *
5  * ____ _ _ __ __ _ __ __ ____
6  * | _ \ ___ ___| | _____| |_| \/ (_)_ __ ___ | \/ | _ \
7  * | |_) / _ \ / __| |/ / _ \ __| |\/| | | '_ \ / _ \_____| |\/| | |_) |
8  * | __/ (_) | (__| < __/ |_| | | | | | | | __/_____| | | | __/
9  * |_| \___/ \___|_|\_\___|\__|_| |_|_|_| |_|\___| |_| |_|_|
10  *
11  * This program is free software: you can redistribute it and/or modify
12  * it under the terms of the GNU Lesser General Public License as published by
13  * the Free Software Foundation, either version 3 of the License, or
14  * (at your option) any later version.
15  *
16  * @author PocketMine Team
17  * @link http://www.pocketmine.net/
18  *
19  *
20 */
21 
22 namespace pocketmine\block;
23 
25 
26 class DoubleSlab extends Solid{
27 
28  protected $id = self::DOUBLE_SLAB;
29 
30  public function __construct($meta = 0){
31  $this->meta = $meta;
32  }
33 
34  public function getHardness(){
35  return 30;
36  }
37 
38  public function getName(){
39  static $names = [
40  0 => "Stone",
41  1 => "Sandstone",
42  2 => "Wooden",
43  3 => "Cobblestone",
44  4 => "Brick",
45  5 => "Stone Brick",
46  6 => "Quartz",
47  7 => "",
48  ];
49  return "Double " . $names[$this->meta & 0x07] . " Slab";
50  }
51 
52  public function getBreakTime(Item $item){
53  switch($item->isPickaxe()){
54  case 5:
55  return 0.4;
56  case 4:
57  return 0.5;
58  case 3:
59  return 0.75;
60  case 2:
61  return 0.25;
62  case 1:
63  return 1.5;
64  default:
65  return 10;
66  }
67  }
68 
69  public function getDrops(Item $item){
70  if($item->isPickaxe() >= 1){
71  return [
72  [Item::SLAB, $this->meta & 0x07, 2],
73  ];
74  }else{
75  return [];
76  }
77  }
78 
79 }