Project1
标题:
如何定义伤害的颜色呢
[打印本页]
作者:
兔毛鹿
时间:
2008-12-23 00:21
标题:
如何定义伤害的颜色呢
我在Scene_Battle 4 的刷新画面 (主回合步骤 5 : 显示伤害) 下面添加以下脚本,效果为当角色的武器带有80号属性,吸取敌人数量为伤害值20%的SP,我希望角色吸收到敌人的SP伤害数字显示为蓝色,脚本应该怎么修改呢?
if (wqpd(80) and @active_battler.current_action.basic == 0 and @active_battler.current_action.kind == 0)
@active_battler.animation_id = 98
for target in @target_battlers
if target.damage != nil and target.damage != "Miss"
@active_battler.sp += (target.damage*0.2).to_i
@active_battler.damage = 0 - (target.damage*0.2).to_i
@active_battler.damage_pop = true
end
end [LINE]1,#dddddd[/LINE]
此贴于 2008-12-25 11:58:59 被版主darkten提醒,请楼主看到后对本贴做出回应。
[LINE]1,#dddddd[/LINE]
本贴由论坛斑竹redant结贴,如楼主认为问题未解决,请重新将此贴编辑为“有事请教”,并回帖叙述疑点即可~ ^-^
作者:
兔毛鹿
时间:
2008-12-24 04:20
顶
作者:
dbshy
时间:
2008-12-24 19:46
并不是在Scene_Battle中
应该是在这改
RPG::Sprite damage
作者:
兔毛鹿
时间:
2008-12-24 20:04
我用了下面这个脚本,但是想把描写critical的彩色部分更换成SP的吸收,效果为:if sp_absorb ,敌人伤害除了数字显示掉血之外还有"SP吸收"的显示,同时攻击者身上显示蓝色的SP吸收数字,应该在哪里定义这个 sp_absorb 呢?
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 = "黑体"
bitmap.font.size = 28
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(255, 255, 255)
else
bitmap.font.color.set(255, 0, 0)
end
bitmap.draw_text(0, 12, 160, 36, damage_string, 1)
if critical
bitmap.font.size = 28
bitmap.font.color.set(0, 0, 0)
bitmap.draw_text(-1, -1, 160, 20, "超重击", 1)
bitmap.draw_text(+1, -1, 160, 20, "超重击", 1)
bitmap.draw_text(-1, +1, 160, 20, "超重击", 1)
bitmap.draw_text(+1, +1, 160, 20, "超重击", 1)
bitmap.font.color.set(255, 255, 255)
bitmap.draw_text(0, 0, 160, 20, "超重击", 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
作者:
dbshy
时间:
2008-12-24 20:14
= =呃,好久没动RGSS,都忘记了,不好意思,好像不在damage中
等高手吧
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1