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

Project1

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

[已经解决] state的脚本作用求解释

[复制链接]

Lv4.逐梦者

梦石
0
星屑
9280
在线时间
2504 小时
注册时间
2011-5-20
帖子
15389

开拓者

跳转到指定楼层
1
发表于 2015-7-22 22:10:28 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
RUBY 代码复制
  1. #--------------------------------------------------------------------------
  2.   # new method: state_change_turns
  3.   #--------------------------------------------------------------------------
  4.   def state_change_turns(state_id, value)
  5.     state_id = state_id.id if state_id.is_a?(RPG::State)
  6.     @state_turns[state_id] = 0 if @state_turns[state_id].nil?
  7.     @state_turns[state_id] = [value, 0].max
  8.   end
  1. if state_id.is_a?(RPG::State)
复制代码
是判断实例?
  1. if @state_turns[state_id].nil?
复制代码
是什么?
@VIPArcher  
[img]http://service.t.sina.com.cn/widget/qmd/5339802982/c02e16bd/7.png

Lv2.观梦者

梦石
2
星屑
2091
在线时间
10 小时
注册时间
2015-6-27
帖子
3
2
发表于 2015-7-22 22:38:36 | 只看该作者
if state_id.is_a?(RPG::State)

判断 state_id 是否是 RPG::State 的一个实例

if @state_turns[state_id].nil?

判断哈希 @state_turns 中键为 state_id 的值是否存在

点评

出现当状态减到负以后再次增加状态持续回合不能的情况  发表于 2015-7-22 22:44
如果我要把这个脚本改成单纯的增减一个状态的持续回合要做哪些修改呢?直接用+、-的话不会获得状态和失去状态···如果手动添加获得和失去就会  发表于 2015-7-22 22:44
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
9280
在线时间
2504 小时
注册时间
2011-5-20
帖子
15389

开拓者

3
 楼主| 发表于 2015-7-22 22:42:43 | 只看该作者
短10今天出了吗 发表于 2015-7-22 05:38
if state_id.is_a?(RPG::State)

判断 state_id 是否是 RPG::State 的一个实例

if @state_turns[state_id].nil?和if @state_turns[state_id]==nil的区别是?
[img]http://service.t.sina.com.cn/widget/qmd/5339802982/c02e16bd/7.png
回复 支持 反对

使用道具 举报

Lv5.捕梦者 (暗夜天使)

只有笨蛋才会看到

梦石
1
星屑
21631
在线时间
9414 小时
注册时间
2012-6-19
帖子
7118

开拓者短篇九导演组冠军

4
发表于 2015-7-22 23:02:05 | 只看该作者
本帖最后由 喵呜喵5 于 2015-7-22 23:06 编辑

未测试

2楼点评:最后一行改成

@state_turns[state_id] = [@state_turns[state_id] + value, 0].max

3楼:你当成没区别就好了

回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
9280
在线时间
2504 小时
注册时间
2011-5-20
帖子
15389

开拓者

5
 楼主| 发表于 2015-7-23 12:27:13 | 只看该作者
喵呜喵5 发表于 2015-7-22 06:02
未测试

2楼点评:最后一行改成

@state_turns[state_id] = [@state_turns[state_id] + value, 0].max发现两个BUG
1、如果没有事先附加状态则这个状态的持续时间不会变化
2、如果在拥有这个状态的时候把持续时间减到0则这个状态依然存在,需要下一个回合才会消失···
[img]http://service.t.sina.com.cn/widget/qmd/5339802982/c02e16bd/7.png
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-16 11:33

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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