| 赞 | 353 |
| VIP | |
| 好人卡 | |
| 积分 | 392 |
| 经验 | |
| 最后登录 | 2026-8-25 |
| 在线时间 | 11155 小时 |
- 梦石
- 0
- 星屑
- 39236
- 在线时间
- 11155 小时
- 注册时间
- 2009-3-15
- 回帖
- 4768
|
发表于 2023-8-7 18:58:41
|
显示全部楼层
本帖最后由 soulsaga 于 2023-8-7 19:10 编辑
先定义个全局变量
class Game_Battler
def skill_effect(user, skill)
里面找个位置加个判断
if elements_correct(user.element_set) >= 100#克制
if elements_correct(user.element_set) < 100#被抵抗
这里把结果保存到变量里
然后在MAIN上插入
[pre lang="ruby"]
module RPG
class Sprite < ::Sprite
def damage(value, critical)
dispose_damage
if value.is_a?(Numeric)
damage_string = value.abs.to_s
else
damage_string = value.to_s
end
bitmap = Bitmap.new(160, 48)
bitmap.font.name = "Arial Black"
bitmap.font.size = 32
bitmap.font.color.set(0, 0, 0)
bitmap.draw_text(-1, 12-1, 160, 36, damage_string, 1)
bitmap.draw_text(+1, 12-1, 160, 36, damage_string, 1)
bitmap.draw_text(-1, 12+1, 160, 36, damage_string, 1)
bitmap.draw_text(+1, 12+1, 160, 36, damage_string, 1)
if value.is_a?(Numeric) and value < 0
bitmap.font.color.set(176, 255, 144)
else
bitmap.font.color.set(255, 255, 255)
end
bitmap.draw_text(0, 12, 160, 36, damage_string, 1)
if critical
bitmap.font.size = 20
bitmap.font.color.set(0, 0, 0)
bitmap.draw_text(-1, -1, 160, 20, "CRITICAL", 1)
bitmap.draw_text(+1, -1, 160, 20, "CRITICAL", 1)
bitmap.draw_text(-1, +1, 160, 20, "CRITICAL", 1)
bitmap.draw_text(+1, +1, 160, 20, "CRITICAL", 1)
bitmap.font.color.set(255, 255, 255)
bitmap.draw_text(0, 0, 160, 20, "CRITICAL", 1)
end
@_damage_sprite = ::Sprite.new(self.viewport)
@_damage_sprite.bitmap = bitmap
@_damage_sprite.ox = 80
@_damage_sprite.oy = 20
@_damage_sprite.x = self.x
@_damage_sprite.y = self.y - self.oy / 2
@_damage_sprite.z = 3000
@_damage_duration = 40
end
end
end[/pre]
之后你可以自行改字体色了..
这部份的脚本是内部脚本可在F1中搜RPG::Sprite找到 |
|