查看: 2031|回复: 7

[已经解决] 关于Game_Screen的问题

[复制链接]
梦石
0
星屑
15080
在线时间
1581 小时
注册时间
2012-7-24
回帖
1246
发表于 2014-2-17 18:49:54 | 显示全部楼层 |阅读模式

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

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

×
本帖最后由 化螺耕 于 2014-2-20 18:07 编辑

RT,屁颠颠地又跑来请教了
1.
  1.     for i in 1..100
  2.       @pictures.push(Game_Picture.new(i))
  3.     end
复制代码
能介绍一下push方法吗,帮助上只有例子,不知道具体意思0.0
2.
  1.    @weather_max = 0.0
复制代码
这个是什么意思呢,为什么要用浮点数来表示
3.
  1. #--------------------------------------------------------------------------
  2.   # ● 刷新画面
  3.   #--------------------------------------------------------------------------
  4.   def update
  5.     if @tone_duration >= 1
  6.       d = @tone_duration
  7.       @tone.red = (@tone.red * (d - 1) + @tone_target.red) / d
  8.       @tone.green = (@tone.green * (d - 1) + @tone_target.green) / d
  9.       @tone.blue = (@tone.blue * (d - 1) + @tone_target.blue) / d
  10.       @tone.gray = (@tone.gray * (d - 1) + @tone_target.gray) / d
  11.       @tone_duration -= 1
  12.     end
  13.     if @flash_duration >= 1
  14.       d = @flash_duration
  15.       @flash_color.alpha = @flash_color.alpha * (d - 1) / d
  16.       @flash_duration -= 1
  17.     end
  18.     if @shake_duration >= 1 or @shake != 0
  19.       delta = (@shake_power * @shake_speed * @shake_direction) / 10.0
  20.       if @shake_duration <= 1 and @shake * (@shake + delta) < 0
  21.         @shake = 0
  22.       else
  23.         @shake += delta
  24.       end
  25.       if @shake > @shake_power * 2
  26.         @shake_direction = -1
  27.       end
  28.       if @shake < - @shake_power * 2
  29.         @shake_direction = 1
  30.       end
  31.       if @shake_duration >= 1
  32.         @shake_duration -= 1
  33.       end
  34.     end
  35.     if @weather_duration >= 1
  36.       d = @weather_duration
  37.       @weather_max = (@weather_max * (d - 1) + @weather_max_target) / d
  38.       @weather_duration -= 1
  39.       if @weather_duration == 0
  40.         @weather_type = @weather_type_target
  41.       end
  42.     end
  43.     if $game_temp.in_battle
  44.       for i in 51..100
  45.         @pictures[i].update
  46.       end
  47.     else
  48.       for i in 1..50
  49.         @pictures[i].update
  50.       end
  51.     end
  52.   end
复制代码
呃……最后麻烦简单解释一下这个更新可以吗,自己看不大懂思路额

欢迎大家加我

○赛

梦石
0
星屑
1254
在线时间
1276 小时
注册时间
2013-1-22
回帖
2078

贵宾

发表于 2014-2-17 19:13:31 | 显示全部楼层
先说一个吧,push是在数组中添加单元。。。
其他的开电脑在看。。。

评分

参与人数 1星屑 +10 收起 理由
化螺耕 + 10 感谢你的回答哈~~

查看全部评分

回复

使用道具 举报

梦石
0
星屑
1788
在线时间
1313 小时
注册时间
2012-8-4
回帖
724
发表于 2014-2-17 23:44:31 | 显示全部楼层
系统自带的F1看通了?里面的数组那些掌握了吧

点评

呃……应该算基本懂了吧,那请问第2个和第三个呢…………  发表于 2014-2-18 13:38
回复

使用道具 举报

梦石
0
星屑
15080
在线时间
1581 小时
注册时间
2012-7-24
回帖
1246
 楼主| 发表于 2014-2-18 13:38:41 | 显示全部楼层
天地有正气 发表于 2014-2-17 19:13
先说一个吧,push是在数组中添加单元。。。
其他的开电脑在看。。。

SOGA,我第一个明白了,那请问第二个和第三个呢,麻烦你啦{:2_275:}

欢迎大家加我
回复

使用道具 举报

梦石
0
星屑
1788
在线时间
1313 小时
注册时间
2012-8-4
回帖
724
发表于 2014-2-18 18:08:43 | 显示全部楼层
第三个如果是为什么显示的是浮点数的话,你可以看delta = (@shake_power * @shake_speed * @shake_direction) / 10.0
这里面就有一个10.0带小数点的数,如果其他数字也带有,就显示浮点数,如果你要计算一个伤害。比如100*0.25的结果和100/4的结果显示方式就应该不一样。

评分

参与人数 1星屑 +10 收起 理由
化螺耕 + 10 哈,你的解释很详细哈,我明白啦!.

查看全部评分

回复

使用道具 举报

梦石
0
星屑
122
在线时间
552 小时
注册时间
2012-8-18
回帖
1392
发表于 2014-2-19 12:35:00 | 显示全部楼层
1.向数组的末端添加元素
2.浮点数与整数的运算和显示方法都是有所不同的,既然初始化为0.0那就说明他要按照浮点数的操作进行,如果初始化为0很有可能会出现整数除法去掉余数的问题
3.这是色调那方面的么……好吧我不懂图形学Orz

评分

参与人数 1星屑 +10 收起 理由
化螺耕 + 10 Thank you!

查看全部评分

我要填坑!我要背单词!我要学日语!我要每天锻炼!
好吧呵呵= =
回复

使用道具 举报

梦石
0
星屑
15080
在线时间
1581 小时
注册时间
2012-7-24
回帖
1246
 楼主| 发表于 2014-2-20 16:45:27 | 显示全部楼层
懂得差不多了,虽然第三点没人解决感觉那才是精华所在

欢迎大家加我
回复

使用道具 举报

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

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部