赶回宿舍的过程中,李维斯顺便买了点食物充饥。
昨晚到现在都没吃过东西,他已经饥肠辘辘了。
他一边吃一边回宿舍,东西吃完刚才也差不多到宿舍了。
这里的宿舍都是单人间。
因为科赫城东边靠近郊区,学校坐落其中,地多人少。
李维斯进入宿舍后锁上门,坐下来唤出脑中的魔法纸。
把新得到的三个魔法都解码后,复制粘贴到备忘录魔法纸。
他先认真地看测谎魔法的代码:
选定目标对象,检测目标对象的灵魂波动。
十分简单的代码,李维斯一分钟都不用就看懂了。
人类的灵魂波动是主角的属性之一。
情绪稳定时这个属性值在-0.1到0.1之间波动,负面情绪应该会跌破-0.1,而正面情绪则反之。
李维斯试了下直接修改灵魂波动的属性值。
看看修改后会不会对自己的情绪产生影响。
他把波动值改成1,感觉自己有点开心和亢奋的样子。
改成2.5,呃,程序崩溃了。
“应该是修改的值大小超出了可修改范围吧。”
李维斯猜测道。
他在修改值那一段代码里加了个异常捕捉。
他让发生异常时程序不再崩溃,而是弹出一个带有崩溃原因的消息框。
再次运行,一个消息框弹了出来,阻塞了整个程序。
只有李维斯点击确定,程序才会继续运行。
消息框显示的错误信息是“无法通过代码大幅度修改灵魂波动属性”。
“果然如此。”
李维斯喃喃自语,他猜对了。
但是这样问题就来了,说谎后的波动值算不算大呢?
要是太大岂不是无法修改?
李维斯立刻对自己使用测谎魔法。
他说了几个谎,发现波动值从0.1255上升到了0.4245。
“还好不算大,在可以修改的范围。”
李维斯松了口气。
之前看到兑换书里描述的是“较大波动”,看来增加了0.3就算是较大了。
不过还有一个问题:
到时候一直运行魔法修改波动值,会不会被高阶魔法师感知出来呢?
先看看修改完波动值后,改动过的值能持续多久吧。
李维斯把自己的波动值改成0.1,然后用个定时器每隔一秒就输出一次到窗体的文本控件中。
与此同时,他又说了几个谎,让自己的灵魂波动起来。
结果让他有些失望,改动后的值根本没有持续时间。
他一说谎波动值就随着变动了。
李维斯苦思冥想也没什么解决办法。
除非把隐身魔法买了,看看有没有思路。
他在兑换之书看到隐身可以隐得相当彻底。
上面写着身体和灵魂层面都消失了,有点夸张。
弊端是不能动,一旦动了就需要再次释放。
但即便如此价格也相当高,要50金币,现在哪里买得起啊。
于是李维斯只能安慰自己不凝聚魔力,应该是感知不到魔力的流动。
而事实也的确如此,在人体内凝聚与消散的魔力,是很难很难被感知的。
除非是有特殊天赋的人。
“不管这个了,先看看我的后门计划吧。”
想到这,李维斯心情好了不少。
在自己写的魔法上留个后门,多爽的事。
别人和李维斯战斗,用他写的魔法,结果打着打着,突然魔法就失效了。
想想就觉得有趣。
但是不能用得太明目张胆,除非是不死不休的战斗。
不然迟早会有细心的人发现,只有使用李维斯贡献的魔法与他战斗,才会出现各种各样离奇的效果。
这样很可能会怀疑到他身上。
李维斯开始认真看起了剩下的两个魔法。
首先是随机诅咒魔法里面的检测活物函数。
又是一个MagicUtil里的静态函数——GetLivingThingsRange。
这个方法可以在输入的参数范围内获取所有活物(包括主角)。
默认参数范围是主角等级乘以10米。
获取到活物后,用一个foreach循环,有多少个活物构造多少个新的诅咒类。
诅咒类的构造函数有两个参数,一个是活物的ID,一个是是否随机的诅咒。
构造函数可以理解为创建或生产一样新的事物时,必须执行的一些操作。
以诅咒类为例,要将其构造出来,起码要告诉它诅咒的对象是谁,是不是随机诅咒。
当然诅咒类肯定还有其他构造函数。
因为不是随机诅咒的话,就得指定诅咒的类型,不然发出一个空的诅咒吗?
构造完诅咒类后,执行RunMagic方法,发出诅咒。
这也是一个很容易看懂的魔法。
最后是粗口矫正魔法,这个魔法涉及到了李维斯的知识盲区——语音识别。
里面的代码其实也很简单,就是调用了一个语音识别的包。
作为一名合格的程序员,李维斯很快就知道这个包的基本用法了。
专业人士写的包,用起来就是简单易懂。
短短几行代码,调用两三个函数就行了。
好了,三个魔法的代码都看完了。
里面所需的函数也都知道怎么用了,接下来就是将这些组合起来。
组合的思路大概如下:
魔法启动时,判断李维斯是否在附近。
如果不在继续往下执行魔法,直到魔法结束。
如果在,就用一个后台线程启动http服务端,再用另一个后台线程启动语音识别。
两种办法,不论是哪一个办法收到了李维斯的信息,都会执行对应的操作。
哪一个接收得早,哪一个就先执行,后一个不再执行,确保只执行一次。
思路清晰,代码写起来就没太大难度。
只是写得有点磕磕碰碰,原因还是不习惯没有智能提示。
智能提示已经快成为李维斯心中的执念了!
写了约半个小时,终于写完了。
接下来开始测试,一运行程序崩溃了,明显有bug。
这很正常,没有bug才奇怪。
根据错误提示,李维斯开始修复问题。
改完又有bug,继续改。
就这样改了半个小时的bug,终于没问题了!
但不能掉以轻心,还需要从各种角度对其进行测试才行。
又继续测试了半个小时,确认完全没问题后,李维斯才放下心来。
把这段后门的代码复制到控爆术和加速术中,转换成魔法符号。
到此,后门计划完成了。

