mirror of
https://github.com/pmmp/PocketMine-MP.git
synced 2025-10-20 07:39:42 +00:00
Minecraft: Pocket Edition 0.7.0 dev. release
* Crafting enabled, report bugs * Chat handler
This commit is contained in:
@@ -33,8 +33,6 @@ class Item{
|
||||
SIGN => "SignItem",
|
||||
WOODEN_DOOR => "WoodenDoorItem",
|
||||
BUCKET => "BucketItem",
|
||||
WATER_BUCKET => "WaterBucketItem",
|
||||
LAVA_BUCKET => "LavaBucketItem",
|
||||
IRON_DOOR => "IronDoorItem",
|
||||
CAKE => "CakeItem",
|
||||
BED => "BedItem",
|
||||
|
@@ -70,7 +70,7 @@ class BurningFurnaceBlock extends SolidBlock{
|
||||
return true;
|
||||
}
|
||||
$player->windowCnt++;
|
||||
$player->windowCnt = $id = max(1, $player->windowCnt % 255);
|
||||
$player->windowCnt = $id = max(2, $player->windowCnt % 255);
|
||||
$player->windows[$id] = $furnace;
|
||||
$player->dataPacket(MC_CONTAINER_OPEN, array(
|
||||
"windowid" => $id,
|
||||
|
@@ -88,7 +88,7 @@ class ChestBlock extends TransparentBlock{
|
||||
return true;
|
||||
}
|
||||
$player->windowCnt++;
|
||||
$player->windowCnt = $id = max(1, $player->windowCnt % 255);
|
||||
$player->windowCnt = $id = max(2, $player->windowCnt % 255);
|
||||
$player->windows[$id] = $chest;
|
||||
$player->dataPacket(MC_CONTAINER_OPEN, array(
|
||||
"windowid" => $id,
|
||||
|
@@ -30,6 +30,11 @@ class StonecutterBlock extends SolidBlock{
|
||||
parent::__construct(STONECUTTER, $meta, "Stonecutter");
|
||||
$this->isActivable = true;
|
||||
}
|
||||
|
||||
public function onActivate(Item $item, Player $player){
|
||||
$player->toCraft[-1] = 2;
|
||||
return true;
|
||||
}
|
||||
|
||||
public function getDrops(Item $item, Player $player){
|
||||
return array(
|
||||
|
@@ -30,10 +30,15 @@ class WorkbenchBlock extends SolidBlock{
|
||||
parent::__construct(WORKBENCH, $meta, "Crafting Table");
|
||||
$this->isActivable = true;
|
||||
}
|
||||
|
||||
public function onActivate(Item $item, Player $player){
|
||||
$player->toCraft[-1] = 1;
|
||||
return true;
|
||||
}
|
||||
|
||||
public function getDrops(Item $item, Player $player){
|
||||
return array(
|
||||
array($this->id, 0, 1),
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
@@ -27,17 +27,31 @@ the Free Software Foundation, either version 3 of the License, or
|
||||
|
||||
class BucketItem extends Item{
|
||||
public function __construct($meta = 0, $count = 1){
|
||||
parent::__construct(BUCKET, 0, $count, "Empty Bucket");
|
||||
parent::__construct(BUCKET, 0, $count, "Bucket");
|
||||
$this->meta = $meta;
|
||||
$this->isActivable = true;
|
||||
$this->maxStackSize = 1;
|
||||
}
|
||||
|
||||
public function onActivate(Level $level, Player $player, Block $block, Block $target, $face, $fx, $fy, $fz){
|
||||
if($target->getID() === STILL_WATER or $target->getID() === STILL_LAVA){
|
||||
$level->setBlock($target, new AirBlock());
|
||||
$player->removeItem($this->getID(), $this->getMetadata(), $this->count);
|
||||
$player->addItem(($target->getID() === STILL_LAVA ? LAVA_BUCKET:WATER_BUCKET), 0, 1);
|
||||
return true;
|
||||
if($this->meta === AIR){
|
||||
if($block->getID() === STILL_WATER or $block->getID() === STILL_LAVA){
|
||||
$level->setBlock($block, new AirBlock());
|
||||
$this->meta = $block->getID();
|
||||
return true;
|
||||
}
|
||||
}elseif($this->meta === STILL_WATER){
|
||||
if($block->getID() === AIR){
|
||||
$level->setBlock($block, new StillWaterBLock());
|
||||
$this->meta = 0;
|
||||
return true;
|
||||
}
|
||||
}elseif($this->meta === STILL_LAVA){
|
||||
if($block->getID() === AIR){
|
||||
$level->setBlock($block, new StillLavaBlock());
|
||||
$this->meta = 0;
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
@@ -28,7 +28,7 @@ the Free Software Foundation, either version 3 of the License, or
|
||||
class CoalItem extends Item{
|
||||
public function __construct($meta = 0, $count = 1){
|
||||
parent::__construct(COAL, $meta & 0x01, $count, "Coal");
|
||||
if($this->metadata === 1){
|
||||
if($this->meta === 1){
|
||||
$this->name = "Charcoal";
|
||||
}
|
||||
}
|
||||
|
@@ -1,44 +0,0 @@
|
||||
<?php
|
||||
|
||||
/*
|
||||
|
||||
-
|
||||
/ \
|
||||
/ \
|
||||
/ PocketMine \
|
||||
/ MP \
|
||||
|\ @shoghicp /|
|
||||
|. \ / .|
|
||||
| .. \ / .. |
|
||||
| .. | .. |
|
||||
| .. | .. |
|
||||
\ | /
|
||||
\ | /
|
||||
\ | /
|
||||
\ | /
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Lesser General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
|
||||
*/
|
||||
|
||||
class LavaBucketItem extends Item{
|
||||
public function __construct($meta = 0, $count = 1){
|
||||
parent::__construct(LAVA_BUCKET, 0, $count, "Lava Bucket");
|
||||
$this->isActivable = true;
|
||||
$this->maxStackSize = 1;
|
||||
}
|
||||
|
||||
public function onActivate(Level $level, Player $player, Block $block, Block $target, $face, $fx, $fy, $fz){
|
||||
if($target->getID() === AIR){
|
||||
$level->setBlock($target, new StillLavaBlock());
|
||||
$player->removeItem($this->getID(), $this->getMetadata(), $this->count);
|
||||
$player->addItem(BUCKET, 0, 1);
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
}
|
@@ -1,44 +0,0 @@
|
||||
<?php
|
||||
|
||||
/*
|
||||
|
||||
-
|
||||
/ \
|
||||
/ \
|
||||
/ PocketMine \
|
||||
/ MP \
|
||||
|\ @shoghicp /|
|
||||
|. \ / .|
|
||||
| .. \ / .. |
|
||||
| .. | .. |
|
||||
| .. | .. |
|
||||
\ | /
|
||||
\ | /
|
||||
\ | /
|
||||
\ | /
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Lesser General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
|
||||
*/
|
||||
|
||||
class WaterBucketItem extends Item{
|
||||
public function __construct($meta = 0, $count = 1){
|
||||
parent::__construct(WATER_BUCKET, 0, $count, "Water Bucket");
|
||||
$this->isActivable = true;
|
||||
$this->maxStackSize = 1;
|
||||
}
|
||||
|
||||
public function onActivate(Level $level, Player $player, Block $block, Block $target, $face, $fx, $fy, $fz){
|
||||
if($target->getID() === AIR){
|
||||
$level->setBlock($target, new StillWaterBLock());
|
||||
$player->removeItem($this->getID(), $this->getMetadata(), $this->count);
|
||||
$player->addItem(BUCKET, 0, 1);
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user