问题标签 [pocketmine]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
653 浏览

php - 将多维数组显示为项目符号

我需要帮助设计一个递归函数:

  1. 递归显示多维数组
  2. 必须使用要点,例如<ul><li>
  3. 文本必须链接到文档。例如文本“1. Hi”将被重定向并保持其目录结构(数组结构)。但是文本必须递归显示。

将作为输入的数组将是目录层次结构的多维数组。输入:

第一个的输出将是

  • 掌上矿
    • 教程
      • 一、简介

但是“1. Introduction”必须链接到“whateverURL/pocketmine/tutorial/1.Introduction”

我需要将其显示为(例如)

提前感谢您的帮助。

0 投票
3 回答
1665 浏览

ubuntu - Pocketmine 的 Ubuntu 服务器上未打开端口

我正在尝试运行PHP服务器,用于Minecraft PE. 服务器被调用Pocketmine。此特定服务器的端口不会为我打开。我正在尝试在 port 上运行服务器19132,但它始终处于关闭状态。为了确保端口在我的路由器中打开,我在该端口上运行了一个 Rails 服务器,一切正常。当我切换回 Pocketmine 服务器时,它会正常启动并说它正在侦听19132,但我的端口仍然关闭。这是控制台输出。

在此处输入图像描述

0 投票
3 回答
733 浏览

python - 可以用 Python 制作 PocketMine 插件吗?

是否可以使用 Python 在 PocketMine 上创建插件?如果没有,有什么办法可以吗?

0 投票
1 回答
179 浏览

php - php - 存储包含对象的数组

我正在使用 PocketMine API(不适用于 Web),并且我运行了一个返回数组的函数,存储多个pocketmine\item\Item数组。

这可以被认为是一个存储对象的数组。

基本上,我需要做的是存储这个数组,但不是按原样存储。(一个包含对象的数组。)我试过serialize()json_encode(). 在我的情况下,这些都不起作用。

有什么办法我可以做到这一点?谢谢。

0 投票
1 回答
278 浏览

php - 如何在 PocketMine 插件中创建具有本地化描述的命令?

如何使用插件中的 PocketMine API 创建带有翻译描述或用法的命令?

%pocketmine.command.help.description在 vanilla 命令中,传递了翻译代码的字符串,例如。它们是对原始 PocketMine 中 lang 文件的引用,插件无法修改它们。

当播放器执行/help时,HelpCommand该类将结果Command::getDescription()与帮助客户端输出格式连接起来。然后,它被传递给Player::sendMessage,将字符串传递给BaseLang::translateString,然后BaseLang::parseTranslation,然后在内部查找 出现的翻译/%[a-zA-Z0-9\.\-]+/。在整个过程中,不可能添加任何东西,除非BaseLang更换服务器。

0 投票
1 回答
110 浏览

php - 是否有可能真正限制对该私有财产的访问?

我在尝试中使用了三个技巧:

  • 反射不能与动态类属性一起使用
  • 访问动态类属性时必须调用 __get() 或 __set()
  • debug_backtrace() 可以用来模拟类似的东西private

对于Foo具有私有非静态属性的类$bar,我想禁止外部$this的任何范围修改其值。因此我这样做:

这应该(未经测试)不受三种访问的影响:

  • 直接访问
    • debug_backtrace() 检查调用上下文是否来自 $this。$this 之外的直接访问将被禁止。
  • 反射属性
    • PHP 致命错误:未捕获的 ReflectionException:属性栏不存在
    • 反射不适用于动态属性。它甚至没有通过ReflectionClass::hasProperty():-)检测到它的存在
  • Closure::bind
    • 未经测试,但我相信 debug_backtrace() 应该返回与FILE不同的“文件” ,而是定义闭包的文件。我只有正确的用法Foo,所以我不在乎只要加载了正确的代码。

假设没有写任何文件的权限,也没有重新定义类方法的扩展名,但是可以加载任意PHP代码,有没有办法改变这个Foo->bar属性?

0 投票
1 回答
9149 浏览

docker - 如何授予 docker 容器对映射卷的写入/chmod 权限?

我有一个支持 docker 的 Synology NAS,想在上面运行一些 docker 容器(我对 Docker 很陌生)。例如 pocketmine-pm (但我相信我也有其他容器的写入问题)。

我在主机上创建了一个卷并将其映射到容器设置中。(并且在卷映射的 Synology docker 设置中,我没有单击“只读”)。

根据 Dockerfile,在容器内创建了一个新用户“pocketmine”,该用户用于启动服务器。该用户的用户 ID 似乎为 1000(新 linux 用户的第一个 UID)。该容器还使用一个 Entrypoint.sh 脚本来启动服务器。

最初,容器无法将文件写入映射目录。我不得不通过 SSH 连接到主机“chown”UID 1000 的目录:

之后,可以下载和提取档案。

不幸的是,我无法从我的 iOS 设备连接到服务器。服务器被列为“在线”,但连接失败,没有任何特定消息。然后我检查了容器的日志并看到了以下条目(不确定这是否真的阻止了连接,但我会试一试):

显然,容器不能 chown 以前能够下载的文件。

有谁知道可以做些什么来解决这个问题?我需要chmod映射卷吗?为什么我需要chownUID 1000 的目录(主机上不存在的用户) - 没有更优雅的方法来修复权限吗?

0 投票
1 回答
1256 浏览

php - 如何检查MySQL中是否设置了位

我在 MySQL 数据库中有一个表BIT(64),其中一行是 64 个标志的位掩码。

使用 PHP 和 mysqli,我有一个整数$n,它在范围内[0, 64)。我已经编写了一个函数(见附录 I)来设置字节数组的第 n(即 PHP 中的字符串)。

将上述字节数组(字符串)传递给 MySQL 时,似乎bitmask & ?, where ?is mysqli::bind_paramed 作为字节数组(参数类型为"s"),并没有按预期比较位。

例如,使用此查询:

在这张桌子上:

如何解决这个问题?

我想通过 abin2hexUNHEX()它,但这似乎并不能解决问题。

附录一

0 投票
1 回答
645 浏览

php - 如何获取scandir()的完整路径

当我 scandir() 它像这样在数组中返回

所以我希望它得到这样的文件的完整路径

我尝试使用但没有用的代码

0 投票
1 回答
5269 浏览

docker - 如何修复 Docker 中的“standard_init_linux.go:187:exec 用户进程导致“exec 格式错误””?

我刚刚制作了我的第一个 Docker 映像,可以在 Docker 内部运行 pmmp/PocketMine-MP。当我尝试使用容器时,出现以下错误:

我也有一个 Dockerfile 设置:

我怎样才能解决这个问题?我很新,如果我已经让自己陷入失败的困境,请告诉我。