设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 2807|回复: 10
打印 上一主题 下一主题

[已经解决] 烛光脚本 以变量控制黑暗度报错

[复制链接]

Lv5.捕梦者

梦石
0
星屑
34870
在线时间
4148 小时
注册时间
2007-12-15
帖子
9981
跳转到指定楼层
1
发表于 2017-8-3 10:44:08 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
@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

求修正。非常感谢。

Lv4.逐梦者 (版主)

梦石
0
星屑
9497
在线时间
5073 小时
注册时间
2013-6-21
帖子
3580

开拓者贵宾剧作品鉴家

来自 3楼
发表于 2017-8-3 21:33:22 | 只看该作者
189 行保持不变,只在266-269行加入原回复的脚本试试。
当时回答可能比较脑抽所以我也不确定那方案到底对不对。

点评

嗯,这回可以用变量控黑暗度了,非常感谢。  发表于 2017-8-5 09:25
改完后整个脚本里只出现一次 def update,如果按照原先错误的改法脚本里会有两个 def update  发表于 2017-8-4 09:13
可能是表述有问题。266-269行里面只添加一句话@@base_color = Color.new(255, 255, 255, $game_variables[X])。不是整段复制然后粘贴到前面。  发表于 2017-8-4 09:13
无效,变量x等于任何数值,都是程序25行 DARK_OPACITY = 的数值 似乎要另寻他法?  发表于 2017-8-3 23:32

评分

参与人数 1星屑 +140 收起 理由
89444640 + 140

查看全部评分

回复 支持 反对

使用道具 举报

Lv5.捕梦者 (版主)

梦石
1
星屑
23963
在线时间
3338 小时
注册时间
2011-7-8
帖子
3925

开拓者

2
发表于 2017-8-3 11:03:21 | 只看该作者
本帖最后由 guoxiaomi 于 2017-8-3 11:04 编辑

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

其实我从来没用过类变量

点评

听……听不懂,initialize方法是啥--b  发表于 2017-8-3 11:24

评分

参与人数 1星屑 +1 收起 理由
RyanBern + 1 这猫叔

查看全部评分

熟悉rgss和ruby,xp区版主~
正在填坑:《膜拜组传奇》讲述膜拜组和学霸们的故事。
已上steam:与TXBD合作的Reformers《变革者》
* 战斗调用公共事件 *
* RGSOS 网络脚本 *
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
222
在线时间
63 小时
注册时间
2016-7-28
帖子
13
4
发表于 2019-1-30 12:49:37 | 只看该作者
能麻烦楼主发下改完的范例么?谢谢。
回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
34870
在线时间
4148 小时
注册时间
2007-12-15
帖子
9981
5
 楼主| 发表于 2019-1-31 10:30:35 | 只看该作者
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。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
222
在线时间
63 小时
注册时间
2016-7-28
帖子
13
6
发表于 2019-2-1 12:29:21 | 只看该作者

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

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-4-30 00:50

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表