《我的世界》汉字输入法原理详解

时间:2016/01/27 11:11:30 编辑:小丽人
页面导航:

候选字模块

《我的世界》汉字输入法原理详解

如图所示,我们有十个候选字。

每个候选字的处理方式如下

/setblock ~ ~ ~1 air

/execute @e[name=print] ~ ~ ~ kill @e[r=0,name=!print]

/tp @e[0,4,1,r=0] @e[name=print]

kill @e[0,4,-1000,dz=2000,dx=0,dy=0,type=ArmorStand]

/execute @e[name=print] ~ ~ ~ detect ~ ~-1 ~1 planks -1 /tp @e[name=print] ~ ~ ~1

/kill @e[-10,4,0,dz=10,name=!check]

/tp @e[name=check] ~ ~ 1

差不多意思就是汉字指针清除本格内容防止bug,将现有的候选字传送至指针位置,清除剩余候选字,移动指针。清除拼音。

字库

《我的世界》汉字输入法原理详解

字库是个非常浩大的工程,本输入法支持20811个字,其中不同多音字视为各音节不同的字,累计103个多音字。

那么这个大的字库我总得有个调用的好办法吧?否则实在是难以使用。

上文对拼音的详解已经说明了调用办法。

下文以音“中”为例。

中= ZHONG

={26,8,15,14,7,0}

以这样一个变幻方式我们可以将任何一个音变为一组6个的数组。

汉语一共有406种音,所以我们会有406排命令方块

这是读取zhong音的命令。

/execute @e[-11,4,1,r=0,name=set,score_end=26,score_end_min=26] ~ ~ ~ /execute @e[-11,4,2,r=0,name=set,score_end=8,score_end_min=8] ~ ~ ~ /execute @e[-11,4,3,r=0,name=set,score_end=15,score_end_min=15] ~ ~ ~ /execute @e[-11,4,4,r=0,name=set,score_end=14,score_end_min=14] ~ ~ ~ /execute @e[-11,4,5,r=0,name=set,score_end=7,score_end_min=7] ~ ~ ~ /testfor @e[-11,4,6,r=0,name=set,score_end=0,score_end_min=0]

我们可以很清楚的看到6个数字所代表的位置。

kill @e[0,4,-1000,dz=2000,dx=0,dy=0,type=ArmorStand]

然后我们会激活一串清理现在的候选字的指令。

summon ArmorStand 0 ~ ~ {CustomName:"中",Invisible:1,NoGravity:1,Marker:1}

然后会在x=0的位置召唤出一条候选字纸带。

故此我们才能够完整的使用汉字输入法,那么就是这样,希望大家喜欢。

《我的世界》汉字输入法原理详解

本文导航
第1页:第1页 第2页:第2页 第3页:第3页
游戏聚合
9.2
  • 好玩

    32104+1
  • 不好玩

    5491+1
相关攻略
相关游戏