当前位置: 首页 > 知识库问答 >
问题:

将Minecraft口袋版mod导入Blocklauncher时出错

微生宝
2023-03-14

我正试图为我的世界袖珍版制作我的第一个modscript。很简单,已经做了很多次了。但我只是想试着做一个无论如何练习做MOD。

var tb = 0;
function useItem(x,y,z,itemId,blockId,side)
{
    if(itemId==280&&tb==0)
    {
        ModPE.setItem(332, 6, 7, "Ender Pearl");
        Player.addItemInventory(332, 32);
        tb=1;
    }else if(itemId==280) {
        Player.addItemInventory(332,5);
}
function entityRemovedHook(entity) 
{ 
    if(Entity.getEntityTypeId(entity)==82) 
    { 
        setPosition(getPlayerEnt(), Entity.getX(entity), Entity.getY(entity)+4, Entity.getZ(entity)); 
}
}
}
org.mozilla.javascript.EvaluatorException: missing } after function body (Enderpearl.js#17)

它有更多的东西,但我发现那些不重要的,与国防部无关。

共有1个答案

赏新知
2023-03-14
function useItem(x,y,z,itemId,blockId,side)
{
    if(itemId==280&&tb==0)
    {
        ModPE.setItem(332, 6, 7, "Ender Pearl");
        Player.addItemInventory(332, 32);
        tb=1;
    }else if(itemId==280) { // Here, the 'else if' is opened..
        Player.addItemInventory(332,5);
} // but its never closed.  The interpreter interprets this as the end of
  // the else if, but then, the function is never closed
function entityRemovedHook(entity) // So now, you have a function within a function
{  
    if(Entity.getEntityTypeId(entity)==82) 
    { 
        setPosition(getPlayerEnt(), Entity.getX(entity), Entity.getY(entity)+4, Entity.getZ(entity)); 
}
} // 1

var tb = 0;
function useItem(x,y,z,itemId,blockId,side)
{
    if(itemId==280&&tb==0)
    {
        ModPE.setItem(332, 6, 7, "Ender Pearl");
        Player.addItemInventory(332, 32);
        tb=1;
    }else if(itemId==280) {
        Player.addItemInventory(332,5);
    } //this bracket should exist here to properly close the else block
}
function entityRemovedHook(entity) 
{ 
    if(Entity.getEntityTypeId(entity)==82) 
    { 
        setPosition(getPlayerEnt(), Entity.getX(entity), Entity.getY(entity)+4, Entity.getZ(entity)); 
    } // I indented this bracket for easier reading
}

请注意在else if的方法使用之后放置的额外括号(JS是一种面向对象的语言;在本例中,它引用术语'method',它是一个对象的函数,在本例中是'player')。在上面的代码中,我对每个括号都添加了粗体

在不是最后一个括号的情况下,代码似乎很好,除了在函数中定义函数之外,在这种情况下,外部无法访问内部函数;它只能从函数内部访问。如果是这种情况,我不熟悉您用来解释此代码的API,也无法提供任何其他关于为什么会抛出错误的想法。

 类似资料:
  • 我一直在尝试建立一个工作区,以便为Minecraft 1.12.2制作一些基本的mods,为此我一直遵循以下指南:https://codakid.com/guide-to-Minecraft-modding-with-/ 在尝试运行构建时,我遇到了一些问题,但通过遵循以下关于eclipse设置的指南进行了修复:https://techwiseacademy.com/minecraft-moddin

  • 如何使用位于。 我得到的错误: 我不确定什么非utf-8字符是在,但不是在。 我在网上看到过很多类似的教程,但对于其他情况,这些教程并不完整或复杂。我想询问社区并研究如何使用rust中各种情况和模块的代码。如果您想在下面对我目前不确定的两个案例发表意见,我们将不胜感激。 使用中的代码main.rs(了解) 在中使用中的代码(了解) 在中使用中的代码(理解) 使用中的代码main.rs(了解) 在中

  • 问题内容: 我做了一个mod,现在我想编译它,我遵循了教程并尝试编译,但是我有一个错误。请告诉我我做错了。谢谢。 终奌站: Build.grade: 多谢您决定协助。 问题答案: 如果您使用的是Mac(我假设您是Mac的用户),并且使用的是可怕的TextEdit程序,那么您需要进入设置并关闭“智能引号”。键入时,TextEdit中的“智能引号”功能会自动将普通引号替换为引号。 即 应该 细微的差别

  • 问题内容: 我做了一个mod,现在我想编译它,我遵循了教程并尝试编译,但是我有一个错误。请告诉我我做错了。谢谢。 终奌站: Build.grade: 多谢您决定协助。 问题答案: 如果您使用的是Mac(我假设您是Mac的用户),并且使用的是可怕的TextEdit程序,那么您需要进入设置并关闭“智能引号”。键入时,TextEdit中的“智能引号”功能会自动将普通引号替换为引号。 即 应该 细微的差别

  • 我正在制作minecraft的工业版,我不知道我的机器是否可以与kinesis管道(或任何其他电源)一起工作。我的机器将由MJ供电。但是我怎样才能将BuildCraft或任何其他mod链接到我的mod上,这样我就可以使用它们的电源到我的机器上呢?

  • 当我将从开源网站(如Apache,Github)下载的导入时,发生了几个错误:(.注意,所有Maven项目都可以在Eclipse下正确编译和测试。 首先,在将maven项目导入到Eclipse之后,项目图标上将出现,但是项目中没有错误。我发现在文件中存在节点。我删除了节点,然后错误就消失了,我想知道为什么,因为maven项目中没有模块。下面的代码是我之前删除的节点。

  • 这是我的代码伙计们: 以下是错误: Traceback(最近一次调用最后一次):文件"C:/用户/Argel/PycharmProjects/day 2/rockpaper.py",第4行,在标签=标签(根,'Hello World')文件"C:\用户\Argel\AppData\本地\程序\Python\Python36-32\lib\tkinter__init__. py",第2760行,在i

  • 所以我正在尝试用Azure DevOps堆栈和一个我通常用Jenkins构建并用Heroku托管的Java Maven项目进行概念验证。起初,我试图直接从构建管道WAR文件设置发布管道,但由于它找不到,所以我对自己说“好吧,如果你发布到工件,它应该是正向的”,所以我就这样做了。 构建正在将maven工件发布到Azure工件 就我而言,这里没有问题。我没有弄乱权限,但我注意到在Feed Settin