Project1

标题: 烛光脚本 以变量控制黑暗度报错 [打印本页]

作者: 89444640    时间: 2017-8-3 10:44
标题: 烛光脚本 以变量控制黑暗度报错
@RyanBern版主移植的烛光系统
https://rpg.blue/forum.php?mod=v ... p;extra=&page=1
其中在第二页 11楼主提到了

可以用变量控制黑暗程度0~255
提到的修改脚本内容如下:

全局搜索HN_Light::DARK_OPACITY,把它改成$game_variables[X]。其中X为你想使用的变量ID。使用时调节改变量的值(0~255)即可。
还需要改一个地方,就是原脚本的266~269行,要加一句:

def update
  super
  @@base_color = Color.new(255, 255, 255, $game_variables[X])
  refresh
end

X的含义同上。

全局搜索后 189行为   @@base_color = Color.new(255,255,255,HN_Light::DARK_OPACITY)
改为                           @@base_color = Color.new(255,255,255,$game_variables[7])

266行后粘贴
def update
  super
  @@base_color = Color.new(255, 255, 255, $game_variables[X])
  refresh
end

运行后提示
NOmethod error
undefined method [] for nil: nilclass

求修正。非常感谢。
作者: guoxiaomi    时间: 2017-8-3 11:03
本帖最后由 guoxiaomi 于 2017-8-3 11:04 编辑

$game_variables是在scene title结束后定义的,你在定义类变量@@base_color的时候引用全局变量肯定报错,把类变量的定义放在initialize方法里应该就行?

其实我从来没用过类变量
作者: RyanBern    时间: 2017-8-3 21:33
189 行保持不变,只在266-269行加入原回复的脚本试试。
当时回答可能比较脑抽所以我也不确定那方案到底对不对。
作者: 920586066    时间: 2019-1-30 12:49
能麻烦楼主发下改完的范例么?谢谢。
作者: 89444640    时间: 2019-1-31 10:30
920586066 发表于 2019-1-30 12:49
能麻烦楼主发下改完的范例么?谢谢。

范例
变量控制烛光.rar (442.78 KB, 下载次数: 140)

其实应该很容易调节,不过放一段时间我也忘,当给自己强化记忆吧。
《烛光系统》脚本中  

# 玩家的烛光类型使用的变量号码
  PLAYER_LIGHT_TYPE = 4
这里的编号4,表示用4号变量的数值来控制玩家手里的烛光效果,需要多少种做多少种,比如******(以上为不好的形容词,自己脑补,不知道爽横线划掉代码怎么写ORZ)的恐怖解密游戏,可以用来表示手电筒/蜡烛/生命值的剩余量,越少越暗。

#以为5号变量控制黑暗程度0~255
    @@base_color = Color.new(255, 255, 255, $game_variables[5])
  end
这里是5号变量编号是控制黑暗程度。

想要调节诸如血红之夜出“逢魔”然后贝姐变狂战什么的……自己调节RGB 255,0,0 可以再加个变量去分歧,比如用菜刀流变量编号10086控制,当变量等于0时候白天 1时候纯黑的 2时候血红夜 3时候沙尘暴夜什么什么的……
不过我脚本不知道怎么写程序能认出来,别问我ORZ。
作者: 920586066    时间: 2019-2-1 12:29
89444640 发表于 2019-1-31 10:30
范例

嗯,如果改一改的话应该可以做到变量控制烛光色调。谢谢!




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