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

Project1

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

[已经解决] 请教判断变量$game_variables[2]的值是否有过一次小于0的时候

[复制链接]

Lv4.逐梦者

梦石
0
星屑
9163
在线时间
466 小时
注册时间
2015-5-8
帖子
866
跳转到指定楼层
1
发表于 2022-7-11 06:38:29 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 taeckle 于 2022-7-11 06:41 编辑

大家好,

我想在游戏进行到一定时候时在大地图上设置一个NPC, 这个NPC可以用来判断公共变量$game_variables[2]的值从游戏开始到现在是否有过小于0的时候
如果有的话则打开开关$game_switches[666],如果没有的话打开开关$game_switches[444],请问下这个判断又该怎么写呢?

if 公共变量$game_variables[2]的值从游戏开始到现在至少有过一次小于0的时候
$game_switches[666]=true
else
$game_switches[444]=true
end

还请大家多多指教,多谢啦!

Lv4.逐梦者 (版主)

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

开拓者贵宾剧作品鉴家

2
发表于 2022-7-11 10:25:33 | 只看该作者
本帖最后由 RyanBern 于 2022-7-11 10:28 编辑

随手写的,未测试。插入到 main 前。

RUBY 代码复制
  1. class Game_Variables
  2.   alias :rb_array_set_20220711 :[]=
  3.   def []=(variable_id, value)
  4.     @aux = true if variable_id == 2 && value < 0
  5.     rb_array_set_20220711(variable_id, value)
  6.   end
  7.   def v2_is_negative_since_game_start
  8.     @aux || false
  9.   end
  10. end


使用:
RUBY 代码复制
  1. if $game_variables.v2_is_negative_since_game_start
  2.   # do this
  3. else
  4.   # do that
  5. end

点评

同求这个内部函数介绍  发表于 2022-7-14 06:36
其实我很好奇这些内部函数哪里有介绍  发表于 2022-7-12 19:13

评分

参与人数 2+2 收起 理由
taeckle + 1 多谢大神指点!
alexncf125 + 1 我很赞同

查看全部评分

回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
9163
在线时间
466 小时
注册时间
2015-5-8
帖子
866
3
 楼主| 发表于 2022-7-14 07:00:27 | 只看该作者
RyanBern 发表于 2022-7-11 10:25
随手写的,未测试。插入到 main 前。

大神请问下这个@aux || false的意思就是吗:
  1. if @aux==false
  2. @aux=false
  3. else
  4. @aux=true
  5. end
复制代码

点评

如果 @aux 未被定义就返回 false,否则返回其本身  发表于 2022-7-21 20:56
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-24 13:20

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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