mirror of
https://github.com/pmmp/PocketMine-MP.git
synced 2025-07-13 05:15:13 +00:00
Spawning blocks/items using its name
This commit is contained in:
parent
cdb05f0695
commit
65280d85d1
@ -110,9 +110,18 @@ class BlockAPI{
|
||||
if(!isset($b[1])){
|
||||
$meta = 0;
|
||||
}else{
|
||||
$meta = (int) $b[1];
|
||||
$meta = ((int) $b[1]) & 0xFFFF;
|
||||
}
|
||||
$block = ((int) $b[0]) & 0xFFFF;
|
||||
|
||||
if(defined(strtoupper($b[0]))){
|
||||
$item = BlockAPI::getItem(constant(strtoupper($b[0])), $meta);
|
||||
if($item->getID() === 0){
|
||||
$item = BlockAPI::getItem(((int) $b[0]) & 0xFFFF, $meta);
|
||||
}
|
||||
}else{
|
||||
$item = BlockAPI::getItem(((int) $b[0]) & 0xFFFF, $meta);
|
||||
}
|
||||
|
||||
if(!isset($params[2])){
|
||||
$amount = 64;
|
||||
}else{
|
||||
@ -122,9 +131,8 @@ class BlockAPI{
|
||||
$meta = ((int) $params[3]) & 0xFFFF;
|
||||
}
|
||||
if(($player = $this->server->api->player->get($username)) !== false){
|
||||
$this->drop($player->entity->x - 0.5, $player->entity->y, $player->entity->z - 0.5, $block, $meta, $amount);
|
||||
$b = BlockAPI::get($block, $meta);
|
||||
console("[INFO] Giving ".$amount." of ".$b->getName()." (".$block.":".$meta.") to ".$username);
|
||||
$this->drop($player->entity->x - 0.5, $player->entity->y, $player->entity->z - 0.5, $item->getID(), $item->getMetadata(), $amount);
|
||||
console("[INFO] Giving ".$amount." of ".$item->getName()." (".$item->getID().":".$item->getMetadata().") to ".$username);
|
||||
}else{
|
||||
console("[INFO] Unknown player");
|
||||
}
|
||||
|
@ -30,6 +30,8 @@ require_once("classes/material/IDs.php");
|
||||
class Item{
|
||||
public static $class = array(
|
||||
SUGARCANE => "SugarcaneItem",
|
||||
WHEAT_SEEDS => "WheatSeedsItem",
|
||||
MELON_SEEDS => "MelonSeedsItem",
|
||||
);
|
||||
protected $block;
|
||||
protected $id;
|
||||
|
@ -260,7 +260,7 @@ class Entity extends stdClass{
|
||||
if($this->speedZ != 0){
|
||||
$this->z += $this->speedZ * 5;
|
||||
}
|
||||
if(isset($blockDown->isFlowable === true){
|
||||
if($blockDown->isFlowable === true){
|
||||
$this->speedY -= 0.04 * 5;
|
||||
//$this->server->api->handle("entity.motion", $this);
|
||||
}elseif($this->speedY < 0){
|
||||
@ -271,7 +271,7 @@ class Entity extends stdClass{
|
||||
//$this->server->api->handle("entity.motion", $this);
|
||||
}
|
||||
}else{
|
||||
if(isset($blockDown->isFlowable === true){
|
||||
if($blockDown->isFlowable === true){
|
||||
if($this->fallY === false or $y > $this->fallY){
|
||||
$this->fallY = $y;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user