nglam2911/invcraft 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

nglam2911/invcraft

最新稳定版本:1.0.0

Composer 安装命令:

composer require nglam2911/invcraft

包简介

Bigger crafting table plugin for PocketMine-MP

README 文档

README

Feel free to report any bugs or suggest new features in Issues

Command & Permission

Command

  • /invcraft - Open InvCraft main menu
    • aliases: /ic
    • permission: ic.command

Permission

  • ic.command - Allow player to use /invcraft command including view and craft items
  • ic.admin - Allow player to use add, edit, remove recipes (will show additional options in menu for admin)

News in this version

  • MySQL, SQLite database support.
  • Multi-pattern matching like vanilla crafting table.
  • Work with any items, including custom items (if you have a plugin that can create custom items).
  • Languages support

Planned for future update

  • Custom ingredients, result process
    • Any meta match, EX: Any planks
    • Transfer NBT from ingredients to result
  • Custom, advanced API for developers
  • I'm too lazy.

And more...

Build from s a u c e

You can use pharynx to build this plugin, if pharynx is in your server path and you have cloned this repo into your plugins folder, you can use following cmd:

php -dphar.readonly=0 pharynx.phar -c -i plugins/InvCraft -p=plugins/InvCraft.phar

or you can find the lastest build in Poggit

This rewrite version is NOT compatible with the old version, i currently dont have any idea for converting old recipes to the new format, so you have to create them again.

For developers (API Doc)

Recipes API

use NgLam2911\InvCraft\crafting\Recipe;
use NgLam2911\InvCraft\InvCraft;

$recipeManager = InvCraft::getInstance()->getRecipeManager();
// Create a new recipe
$recipe = new Recipe(<args here>);
$recipeManager->addRecipe($recipe);
// Remove a recipe
$recipeManager->removeRecipe(<recipe name>);
// Get a recipe
$result = $recipeManager->getRecipe(<recipe name>);

Handle when a player craft an item

use NgLam2911\InvCraft\event\InvCraftItemEvent;

// EventsListener.php
public function onCraft(InvCraftItemEvent $event) {
    $player = $event->getPlayer();
    $recipe = $event->getRecipe();
    $result = $event->getResult();
    // Do something here
}

统计信息

  • 总下载量: 3
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 16
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 16
  • Watchers: 2
  • Forks: 1
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2024-04-11