minecraftpe吧 关注:638,477贴子:15,078,496

【JS科普】2020年JS钩子函数还有哪些可以用

只看楼主收藏回复

大家好,****13同学
大概几年没来贴吧了,
如今已经2020年了
再回来看看minecraftpe吧,
看了看谷歌市场,
呦,
启动器还在更新呢,
正好寒假不知道玩啥好,
更新了一下我的世界和启动器,
测试了一下js函数的各个功能是否正常,
出乎意料的是,貌似除了红石更新的函数无法触发以外,好像功能都能正常运行。
于是趁贴吧没人科普,赶紧水...赶紧发一个帖子科普一下js有哪些函数还可以用,
希望这个寒假能做点东西娱乐娱乐,
充实一下这枯燥无味的寒假,嘿嘿!
————————————分割线——————————————
目前我使用的是
minecraft版本为1.14.1.5
blocklauncher版本为1.27与1.14配套
目前钩子函数一共有21个
我只介绍其中20个,还有一个是红石更新钩子,目前不知道它怎么触发或者是否有用,之后再补上吧。


IP属地:重庆来自Android客户端1楼2020-01-11 02:38回复
    emmm.....我的名字叫bb13,居然会被和谐


    IP属地:重庆来自Android客户端2楼2020-01-11 02:41
    收起回复
      2026-02-09 02:02:25
      广告
      不感兴趣
      开通SVIP免广告
      首先是可阻止动作的钩子函数,即可以通过使用preventDefault()函数来阻止本次动作的钩子函数


      IP属地:重庆来自Android客户端3楼2020-01-11 02:42
      回复
        第一个
        function useItem(x, y, z, itemid, blockid, side, itemDamage, blockDamage)
        这个函数老js玩家应该特别熟悉了,
        每当玩家点击一个方块时触发
        里面的每个单词都是一个变量
        x y z分别表示被点击方块的坐标
        itemid为点击方块时玩家手里的物品的id
        blockid为点击的方块的id
        side为点击方块的方向
        (0为从方块下方点击 1为从方块上方点击 2 3 4 5均为从方块的侧面点击)
        itemDamage为点击方块时玩家手里的物品的特殊值(耐久值之类的)
        blockDamage为点击的方块的特殊值
        如果使用preventDefault()则可以做到让玩家无法点击方块


        IP属地:重庆来自Android客户端5楼2020-01-11 02:45
        收起回复
          利用这个原理,可以做一个非常简单的阻止点击事件js


          IP属地:重庆来自Android客户端6楼2020-01-11 02:49
          回复
            第二个
            function attackHook(attacker, victim)
            也是老函数,
            当有生物攻击另一个生物的时候触发
            attacker为攻击者
            victim为受攻击者
            如果使用preventDefault()则可以做到停止攻击,比如玩家攻击生物或者生物攻击玩家的动作


            IP属地:重庆来自Android客户端7楼2020-01-11 02:51
            收起回复
              第三个
              破坏方块三件套
              function startDestroyBlock(x, y, z, side)
              function continueDestroyBlock(x, y, z, side, progress)
              function destroyBlock(x, y, z, side)
              以前只有destroyBlock现在居然拓展成了三个,妙哇~
              startDestroyBlock为开始破坏方块的时候触发
              continueDestroyBlock为正在破坏方块的时候触发
              destroyBlock为破坏完一个方块后触发
              其中x y z为被破坏方块的坐标
              side为你破坏方块的方向,与上面点击方块方向值类似
              (0为从方块下方破坏 1为从方块上方破坏 2 3 4 5均为从方块的侧面破坏)
              progress为破坏方块的进度,为0到1之间的小数
              可以精确你破坏到方块的0.3啦还是0.4啦
              如果使用preventDefault()则可以做到停止你当前破坏方块的行为


              IP属地:重庆来自Android客户端8楼2020-01-11 02:54
              回复
                第四个
                也是个老函数了
                function deathHook(attacker, victim)
                死亡检测钩子函数
                当有生物死亡时触发
                attacker为攻击者(可以判断死因)
                victim为死者
                有趣的是官方说这个函数也可以用preventDefault()
                但是本人实测并没有什么效果
                所以希望大家如果测出来了什么效果能补充一下,感激不尽



                IP属地:重庆来自Android客户端9楼2020-01-11 02:58
                回复
                  2026-02-09 01:56:25
                  广告
                  不感兴趣
                  开通SVIP免广告
                  第五个
                  爆炸钩子函数
                  function explodeHook(entity, x, y, z, power, onFire)
                  艺术就是...咳咳
                  entity为爆炸物(话说用爆炸函数爆炸出来的话爆炸物是什么???)
                  x y z 分别为爆炸的坐标
                  power为爆炸等级
                  onFire为是否附带火焰
                  这个值为布尔值,返回true或者false



                  IP属地:重庆来自Android客户端10楼2020-01-11 03:00
                  回复
                    第六个
                    对话框钩子两件套
                    都是当有人在对话框打字发言的时候触发
                    function chatHook(str)
                    当有人发言时str是发言内容
                    function serverMessageReceiveHook(str)
                    当有人发言时str是发言人的名字
                    这两个函数均可被preventDefault()阻止
                    所以可以根据选择性的阻止发言内容或者不同发言人的发言


                    IP属地:重庆来自Android客户端11楼2020-01-11 03:03
                    回复
                      第七个
                      经验等级检测两件套
                      function playerAddExpHook(player, experienceAdded)
                      当获得经验球的时候触发
                      player为获得经验的玩家
                      experienceAdded貌似是获得经验球的数量(大概)
                      function playerExpLevelChangeHook(player, levelsAdded)
                      当玩家等级变化的时候触发
                      player为变化等级的玩家
                      levelsAdded为变化的级数
                      这两个也可以通过preventDefault()阻止


                      IP属地:重庆来自Android客户端12楼2020-01-11 03:05
                      回复
                        第八个
                        受伤检测
                        function entityHurtHook(attacker, victim, halfhearts)
                        当有生物受到伤害时触发
                        attacker为伤害原因,或者叫攻击者
                        victim为受到伤害的对象
                        halfhearts为伤害值
                        同样该伤害也可被preventDefault()阻止


                        IP属地:重庆来自Android客户端13楼2020-01-11 03:06
                        回复
                          好了,明天再更,后面几个钩子函数挺有意思的


                          IP属地:重庆来自Android客户端14楼2020-01-11 03:17
                          回复
                            dd


                            IP属地:重庆来自Android客户端15楼2020-01-11 07:17
                            收起回复
                              2026-02-09 01:50:25
                              广告
                              不感兴趣
                              开通SVIP免广告
                              失踪人口回归


                              IP属地:福建来自Android客户端16楼2020-01-11 09:27
                              收起回复