Project1
标题: 脚本contents框x轴长度显示不正常 [打印本页]
作者: 774204155 时间: 2021-4-26 08:40
标题: 脚本contents框x轴长度显示不正常
本帖最后由 774204155 于 2021-4-26 09:27 编辑
想通过控制contents的X轴大小来呈现出血量减少时的血条变化效果
@X = @hp_a
self.contents.blt(110,5 , bitmap5, Rect.new(0, 0, @X, 21))
@X = @hp_a
self.contents.blt(110,5 , bitmap5, Rect.new(0, 0, @X, 21))
这是把它的X轴大小设置为角色血量,这种状况下血条会如实地减少
血槽的长度我设置为300,角色的血量是100,此时如果角色受伤血条是会减少的
但是血条在满血的时候并没有填满血槽 于是
@X = @hp_a / @maxhp_a
self.contents.blt(110,5 , bitmap5, Rect.new(0, 0, @X*300, 21))
@X = @hp_a / @maxhp_a
self.contents.blt(110,5 , bitmap5, Rect.new(0, 0, @X*300, 21))
写成了以上这样
X是角色的生命百分比
contents的x长度就是300乘以这个百分比
结果满血的时候血条正常地充满血槽
但一旦扣血血条直接消失
琢磨了半天,实在是百思不得其解
还请大佬们不吝赐教
======221/4/26/9:25======
摸索着自己解决了。。。写成这样就正常运行了
- self.contents.blt(110,5 , bitmap5, Rect.new(0, 0, 300*@hp_a/@maxhp_a, 21))
复制代码
但还是想知道之前为什么不能正常运行
-
未标题-4.jpg
(35.58 KB, 下载次数: 41)
作者: 灯笼菜刀王 时间: 2021-4-26 08:40
本帖最后由 灯笼菜刀王 于 2021-4-26 09:33 编辑
因为 整数相除只能得到整数 100 / 100 #=> 1 ; 50 / 100 #=> 0
改成浮点数就没问题了 @X = @hp_a.to_f / @maxhp_a
欢迎光临 Project1 (https://rpg.blue/) |
Powered by Discuz! X3.1 |