Project1
标题:
如何不显示伤害?
[打印本页]
作者:
andyho777
时间:
2008-8-23 08:08
标题:
如何不显示伤害?
如题……
怎样才可以在战斗中不显示伤害?
我尝试过把这个放进去:
self.damage_pop = true
但只是攻击动画给跳过而已,
请问我应该怎办? {/ll} [LINE]1,#dddddd[/LINE]
此贴于 2008-8-24 23:44:24 被版主darkten提醒,请楼主看到后对本贴做出回应。
[LINE]1,#dddddd[/LINE]
本贴由论坛斑竹havealook结贴,如楼主认为问题未解决,请重新将此贴编辑为“有事请教”,并回帖叙述疑点即可~ ^-^
作者:
灯笼菜刀王
时间:
2008-8-23 09:22
不显示伤害是什么意思?不要显示砍人后出现的数字?
Sprite_Battler下
if @battler.damage_pop
damage(@battler.damage, @battler.critical)
@battler.damage = nil
@battler.critical = false
@battler.damage_pop = false
end
红色的那段删了。
作者:
andyho777
时间:
2008-8-23 19:33
那么如果我想做到当角色附上某状态时
攻击对方不会显示伤害数字,
并出现 “Death!”字样时,应该怎么做? {/bz}
我已经做到该效果,只差伤害数字那里不懂怎么设置……
if attacker.states.include?(3)
add_state(1)
end
请问要怎样把上面这段脚本修改一下? {/ll}
作者:
andyho777
时间:
2008-8-28 06:52
是不是要在Sprite_Battler修改? {/jy}
作者:
光郎
时间:
2008-8-28 08:50
似乎直接判定角色是否中这个状态会很好,把文字弄成图片,有这个状态时攻击给敌人追加不可抵抗的状态即死。
作者:
andyho777
时间:
2008-8-29 01:52
把文字弄成图片,之后要怎样?{/fd}
作者:
andyho777
时间:
2008-8-29 02:06
我尝试把脚本修改成这样,在Battler3内:
if attacker.states.include?(23)
add_state(1)
self.damage = "Death!"
self.damage_pop = true
end
但随后便弹出错误,甚么NoMethodError,
undefined method 'abs 'for "Death!":String
请问那即是甚么意思?
{/dk}{/dk}{/dk}
作者:
dbshy
时间:
2008-8-29 02:28
module RPG
class Sprite < ::Sprite
def damage(value, critical)
dispose_damage
if $game_switches[100] then
damage_string = "Death!"
end
if !$game_switches[100] then
if value.is_a?(Numeric)
damage_string = value.abs.to_s
else
damage_string = value.to_s
end
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
插入到MAIN前
当100号开关为ON 显示"Death!"
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1