Project1

标题: 新手求指教,如何把这段脚本移到脚本页里面去? [打印本页]

作者: 一瞬间的幻觉    时间: 2011-9-11 04:55
标题: 新手求指教,如何把这段脚本移到脚本页里面去?
n = ["士兵:","魔法师:","佣兵:","海员:","市民:","神官:","旅行家:","商人:","流浪者:",
"作家:","乞丐:","贵族:","罪犯:","学者:","艺术家:","厨师:","医生:","骑士:","学徒:"]
a = ["最近真是有点热啊,","今天天气真好哦,", "无聊死了哟,","我喜欢吃巧克力,","钓鱼很好玩,",
"你要做我的朋友吗?","我真的很想完成这个任务,","我刚刚遇到一个奇怪的人,","我不喜欢外来者!",
"据说公海上有大风暴,","听说某个岛屿存在宝藏,","很想吃水果,","真高兴啊,","生活真艰难啊~",
"很难形容现在岛上的情况,","你知道么岛主是我亲戚,","海盗们真讨厌!","吃得好饱!","好痛苦,",
"跟你我无话可说,","我们这儿不欢迎你","我第一眼就喜欢你,","去酒馆喝一杯?","你是来干什么的?"]
b = ["是不是这样啊?","难道不是这样的吗?","可惜没有时间了。", "可是我没钱了啊。","真的不行么",
"你觉得呢?","你呢?","既然这样,一起来吧!","我要呆在家里。","谁能帮帮我啊?","跟你开玩笑啦!",
"可是岛主说不可以这样。","希望如此吧!","我的想法很天真吧~","真没办法!","无论如何与我无关。",
"奇怪不?","感人至深啊!","真叫人无语啊。","我真可怜。","就算这样也不坏。","无所谓了。"]
$game_message.texts.push(n[rand(19)] + a[rand(24)] + b[rand(22)])

我写了这段简单的脚本,准备放到NPC的随机对话中
但是这段脚本是放在事件页里面的那个“插入脚本”里面的,最多只能放12行脚本代码

有什么办法能够把这段脚本移去脚本页里面呢?
新开一页,然后在要对话的npc事件里面插入一句“$scene = Scene_随机对话.new”

请教脚本高手,怎么改?
作者: fux2    时间: 2011-9-11 07:21
写在分割定义里作为一个方法,再调用
例如
class Interpreter
  def talkrand
    p 1
  end
end

事件脚本就写
talkrand
最好不要直接复制,单词可能拼错
作者: IamI    时间: 2011-9-11 10:51
卖个触手…
可以先用 here document 转成 string
split掉
然后丢进事件列表,第一行 code 记得是 365 还是多少...后面每行都是600多
作者: 一瞬间的幻觉    时间: 2011-9-11 13:11
俺试试哦,谢谢各位
作者: fux2    时间: 2011-9-11 13:21
一瞬间的幻觉 发表于 2011-9-11 13:11
俺试试哦,谢谢各位

你随机数考虑不太周全,如果改成
n[rand(n.size)],a[rand(a.size)]
修改整理起来就不麻烦了
作者: 一瞬间的幻觉    时间: 2011-9-11 15:25
fux2 发表于 2011-9-11 13:21
你随机数考虑不太周全,如果改成
n[rand(n.size)],a[rand(a.size)]
修改整理起来就不麻烦了 ...

具体怎么改?什么是size?
作者: Margay    时间: 2011-9-11 15:46
本帖最后由 Margay 于 2011-9-11 16:35 编辑

新建工程,用这个覆盖Data里的Map001.rvdata,然后把地图里的事件指令复制出来

Map001.rvdata

4.22 KB, 下载次数: 43


作者: 一瞬间的幻觉    时间: 2011-9-11 17:12
Margay 发表于 2011-9-11 15:46
新建工程,用这个覆盖Data里的Map001.rvdata,然后把地图里的事件指令复制出来

...

汗。。。。脚本页最多12行,。。看起来你比我还新手啊。。。
作者: 黄亦天    时间: 2011-9-11 17:53
话说……
  1. $n = ["士兵:","魔法师:","佣兵:","海员:","市民:","神官:","旅行家:","商人:","流浪者:",
  2. "作家:","乞丐:","贵族:","罪犯:","学者:","艺术家:","厨师:","医生:","骑士:","学徒:"]
复制代码
  1. $a = ["最近真是有点热啊,","今天天气真好哦,", "无聊死了哟,","我喜欢吃巧克力,","钓鱼很好玩,",
  2. "你要做我的朋友吗?","我真的很想完成这个任务,","我刚刚遇到一个奇怪的人,","我不喜欢外来者!",
  3. "据说公海上有大风暴,","听说某个岛屿存在宝藏,","很想吃水果,","真高兴啊,","生活真艰难啊~",
  4. "很难形容现在岛上的情况,","你知道么岛主是我亲戚,","海盗们真讨厌!","吃得好饱!","好痛苦,",
  5. "跟你我无话可说,","我们这儿不欢迎你","我第一眼就喜欢你,","去酒馆喝一杯?","你是来干什么的?"]
复制代码
  1. $b = ["是不是这样啊?","难道不是这样的吗?","可惜没有时间了。", "可是我没钱了啊。","真的不行么",
  2. "你觉得呢?","你呢?","既然这样,一起来吧!","我要呆在家里。","谁能帮帮我啊?","跟你开玩笑啦!",
  3. "可是岛主说不可以这样。","希望如此吧!","我的想法很天真吧~","真没办法!","无论如何与我无关。",
  4. "奇怪不?","感人至深啊!","真叫人无语啊。","我真可怜。","就算这样也不坏。","无所谓了。"]
复制代码

  1. $game_message.texts.push($n[rand(19)] + $a[rand(24)] + $b[rand(22)])
复制代码

用全局变量的话,到哪都能用
相对于局部变量我个人没事就用一堆全局变量 = =

作者: fux2    时间: 2011-9-11 18:08
一瞬间的幻觉 发表于 2011-9-11 17:12
汗。。。。脚本页最多12行,。。看起来你比我还新手啊。。。

比如你那个rand(24)就可以换成rand(a.size)
作者: Margay    时间: 2011-9-11 20:12
诸多测试后负责的告诉你可以,如果真的不想用就算了= =
作者: 彼岸海棠    时间: 2011-9-11 23:00
为啥这帖子发在水区?
作者: 一瞬间的幻觉    时间: 2011-9-11 23:07
彼岸海棠 发表于 2011-9-11 23:00
为啥这帖子发在水区?

因为。。。因为我不想去技术区。。。
作者: 心中有爱    时间: 2015-8-19 17:02
写在脚本编辑器里面不就行了 定义成全局变量
作者: 上贺茂润    时间: 2015-8-19 18:16
楼上挖了远古老坟




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