Project1

标题: 如何在自主移动路线中使用脚本 [打印本页]

作者: harice    时间: 2019-7-13 12:59
标题: 如何在自主移动路线中使用脚本
有求各位大大教学 ,我是脚本新手,事件自主移动中怎样用脚本来操作事件呢?

比如说我要让他往上走10步:
n=10;n.times do move_up;end
但我光输入这个并没反应,是不是缺少了什么要素?
作者: Zeldashu    时间: 2019-7-13 13:13
虽然我不懂脚本,但是你这个脚本似乎就是错的吧……话说能用默认的移动为什么要用脚本呢。
具体的脚本你可以看看论坛里的相关分享
作者: harice    时间: 2019-7-13 14:35
本帖最后由 harice 于 2019-7-13 14:37 编辑
Zeldashu 发表于 2019-7-13 13:13
虽然我不懂脚本,但是你这个脚本似乎就是错的吧……话说能用默认的移动为什么要用脚本呢。
具体的脚本你可 ...


我的意思是比如像这样如果自主移动

要走几十步什至上百部的步骤
应该用不到要点击几百次按钮吧

脚本上应该可以怎样设置呢


作者: yang1zhi    时间: 2019-7-13 15:01
本帖最后由 yang1zhi 于 2019-7-13 15:03 编辑

首先你要学会MV的脚本
你这语句不是JS语

这种要写很多内容的。
在脚本里先写个函数。
把要执行的内容写在函数里
这里写个函数名就行。


Game_Character.prototype.自定义移动= function() {
    //执行10次
    for (var i=0;i<10;i++) {
    //向左移动
    this.moveStraight(4);
    //向右移动
    this.moveStraight(6);
    //向上移动
    this.moveStraight(8);
    //向下移动
    this.moveStraight(2);
    }
};

具体相关指令参考这个函数
Game_Character.prototype.processMoveCommand = function(command) {


然后在路线的脚本里输入
this.自定义移动()

但是要注意,脚本都是单帧数执行完的。不会像路径编辑里面一样一行一行等待
要等待的情况下,要自己思考怎么写了
作者: 梦想家大魔王    时间: 2019-7-13 15:12
想法是对的,但实现的方式不对。如果你一定要用脚本实现你的想法,建议你先去看看Javascript脚本该怎么写。
作者: harice    时间: 2019-7-13 15:14
yang1zhi 发表于 2019-7-13 15:01
首先你要学会MV的脚本
你这语句不是JS语

谢谢大大!我再研究一下这部份
作者: harice    时间: 2019-7-13 17:57
梦想家大魔王 发表于 2019-7-13 15:12
想法是对的,但实现的方式不对。如果你一定要用脚本实现你的想法,建议你先去看看Javascript脚本该怎么写。 ...

所以有可能使用【移动路线】里的【脚本】来实现这个吗
MV的确不熟 那行代码在XP可像能行
作者: 梦想家大魔王    时间: 2019-7-13 20:07
harice 发表于 2019-7-13 17:57
所以有可能使用【移动路线】里的【脚本】来实现这个吗
MV的确不熟 那行代码在XP可像能行 ...

事件页里所有的指令都可以用脚本来扩展、修改,只看你有没有那个需求,有没有精力来写了。
像你前面说的有很多重复性的移动动作,完全可以把重复的部分做成一个单独的指令集,其他部分按需做成一个或多个指令集,按需调用就是了,没必要动脚本。
作者: wabcmcc    时间: 2019-7-13 20:26
本帖最后由 wabcmcc 于 2019-7-13 20:51 编辑

找到條合適樓主移動擴展插件,
作者:Yana
插件名稱:MoveRoutePlus.js
好好學習腳本.

移動ルート

作者: harice    时间: 2019-7-13 20:28
梦想家大魔王 发表于 2019-7-13 20:07
事件页里所有的指令都可以用脚本来扩展、修改,只看你有没有那个需求,有没有精力来写了。
像你前面说的 ...

噢噢我懂你的意思!
作者: harice    时间: 2019-7-13 20:30
wabcmcc 发表于 2019-7-13 20:26
找到條合適樓主移動擴展插件,
作者:Yana
好好學習腳本.

天这个好像就是那个意思的插件
要好好学习脚本了!
作者: xjzsq    时间: 2019-7-13 21:14
harice 发表于 2019-7-13 17:57
所以有可能使用【移动路线】里的【脚本】来实现这个吗
MV的确不熟 那行代码在XP可像能行 ...

你的脚本很明显是Ruby
而MV中采用的是JavaScript
试了很多次,但我一直没有成功
其实你大可不必用脚本的方法来解决这个问题,目前我想到的办法是,如果你想让他往上走100步,珂以使用倍增的方法通过复制粘贴命令来实现效果,比如你先手动点5次,然后按住shift,选择这连续的5次,复制后粘贴,就是10次,再复制这10次,然后继续粘贴,如此往复最多5次就可以得到100次向上。
也算是一种另类的办法

作者: harice    时间: 2019-7-14 00:11
xjzsq 发表于 2019-7-13 21:14
你的脚本很明显是Ruby
而MV中采用的是JavaScript
试了很多次,但我一直没有成功


哈哈哈我懂你的意思这未尝也是种方法啦
目前在参考Yana的脚本看能不能实现更多可能性
作者: fux2    时间: 2019-7-14 04:29
这里的脚本指的是单次移动的指令,不能直接指定多次
另外你贴的是rgss脚本,不是js的,并且语法也是错误的。

看起来楼主是完全没入门脚本的,其实没必要强求这样的功能,做游戏讲究的是量力而行,
99%的弃坑作者都是因为目标定得过分高,还是一步步来吧,先把事件用利索了
作者: harice    时间: 2019-7-14 04:44
fux2 发表于 2019-7-14 04:29
这里的脚本指的是单次移动的指令,不能直接指定多次
另外你贴的是rgss脚本,不是js的,并且语法也是错误的 ...

收到收到!俺会好好学习天天向上
在VX的时候有稍为看过一下RGSS后来困了
JS看来是条漫长路鸭




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1