广场
工具/教程/素材
超评测活动结果
第29届极短篇游戏制作比赛
优秀游戏推荐
非官方运行时(20250730)
登录
RPGMaker工具集[20250416]
基础教程
授权素材推广
优秀原创游戏区
精品推荐贴
【RGD】DirectX驱动的RMVA
RGSS3 - runtime by Lanza
【RGM】RGModern - RMXP新runtime
【URGE】兼容 XP/VX/Ace 三系通用跨平台游戏引擎
Project1
»
广场
›
技术讨论
›
RPG Maker XP 讨论区
›
角色死后,战斗图怎样不消失
返回列表
发新帖
查看:
1272
|
回复:
4
角色死后,战斗图怎样不消失
[复制链接]
七仙女
七仙女
当前离线
赞
0
VIP
好人卡
积分
1
经验
最后登录
2009-12-6
在线时间
0 小时
写轮眼
头像被屏蔽
七仙女
梦石
0
星屑
50
在线时间
0 小时
注册时间
2008-1-15
回帖
342
发消息
发表于 2009-3-13 19:17:48
|
显示全部楼层
|
阅读模式
提示:
作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复
使用道具
举报
提升卡
沉默号角
喧嚣号角
变色卡
升龙剑
步兵中尉
步兵中尉
当前离线
赞
11
VIP
好人卡
积分
39
经验
最后登录
2026-1-30
在线时间
1591 小时
写轮眼
梦石
0
星屑
3947
在线时间
1591 小时
注册时间
2006-5-5
回帖
2564
发消息
发表于 2009-3-17 04:40:20
|
显示全部楼层
我知道个方法,可以把死亡后角色替换成别的(例如死亡要的后变成黑白图或横版就是倒下图),看是不是你要的。
步兵中尉
回复
使用道具
举报
新月の道化师
新月の道化师
当前离线
赞
0
VIP
好人卡
积分
1
经验
最后登录
2012-4-6
在线时间
2 小时
写轮眼
梦石
0
星屑
50
在线时间
2 小时
注册时间
2007-9-4
回帖
230
发消息
发表于 2009-3-17 05:27:20
|
显示全部楼层
opacity值为0时才是透明
如果还有问题就不是从你给出的脚本中能看的出的
[fly]
[/fly]
回复
使用道具
举报
七仙女
七仙女
当前离线
赞
0
VIP
好人卡
积分
1
经验
最后登录
2009-12-6
在线时间
0 小时
写轮眼
头像被屏蔽
七仙女
梦石
0
星屑
50
在线时间
0 小时
注册时间
2008-1-15
回帖
342
发消息
楼主
|
发表于 2009-3-17 21:27:39
|
显示全部楼层
提示:
作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复
使用道具
举报
步兵中尉
步兵中尉
当前离线
赞
11
VIP
好人卡
积分
39
经验
最后登录
2026-1-30
在线时间
1591 小时
写轮眼
梦石
0
星屑
3947
在线时间
1591 小时
注册时间
2006-5-5
回帖
2564
发消息
发表于 2009-3-17 22:14:43
|
显示全部楼层
要高级的就用这个:http://rpg.blue/web/htm/news453.htm
我说的方法是下面的,直接替换“Sprite_Battler”就可以了。
替换脚本后在文件夹“Battlers”中放入角色的死亡图,文件名为“*Dead”,*代表数据库中角色的编号。
#==============================================================================
# ■ Sprite_Battler
#------------------------------------------------------------------------------
# 战斗显示用活动块。Game_Battler 类的实例监视、
# 活动块的状态的监视。
#==============================================================================
class Sprite_Battler < RPG::Sprite
#--------------------------------------------------------------------------
# ● 定义实例变量
#--------------------------------------------------------------------------
attr_accessor :battler # 战斗者
#--------------------------------------------------------------------------
# ● 初始化对像
# viewport : 显示端口
# battler : 战斗者 (Game_Battler)
#--------------------------------------------------------------------------
def initialize(viewport, battler = nil)
super(viewport)
@battler = battler
@battler_visible = false
end
#--------------------------------------------------------------------------
# ● 释放
#--------------------------------------------------------------------------
def dispose
if self.bitmap != nil
self.bitmap.dispose
end
super
end
#--------------------------------------------------------------------------
# ● 刷新画面
#--------------------------------------------------------------------------
def update
super
# 战斗者为 nil 的情况下
if @battler == nil
self.bitmap = nil
loop_animation(nil)
return
end
# 文件名和色相与当前情况有差异的情况下
if (@battler.battler_name != @battler_name or
@battler.battler_hue != @battler_hue)
# 获取、设置位图
@battler_name = @battler.battler_name
@battler_hue = @battler.battler_hue
self.bitmap = RPG::Cache.battler(@battler_name, @battler_hue)
@width = bitmap.width
@height = bitmap.height
self.ox = @width / 2
self.oy = @height
if @battler.dead?
self.bitmap = RPG::Cache.battler(@battler.id.to_s + "Dead", @battler_hue)
@width = bitmap.width
@height = bitmap.height
self.ox = @width / 2
self.oy = @height
end
# 如果是战斗不能或者是隐藏状态就把透明度设置成 0
if (@battler.dead? or @battler.hidden) and @battler.is_a?(Game_Enemy)
self.opacity = 0
end
end
# 动画 ID 与当前的情况有差异的情况下
if @battler.damage == nil and
@battler.state_animation_id != @state_animation_id
@state_animation_id = @battler.state_animation_id
loop_animation($data_animations[@state_animation_id])
end
# 应该被显示的角色的情况下
if @battler.is_a?(Game_Actor) and @battler_visible
# 不是主状态的时候稍稍降低点透明度
if $game_temp.battle_main_phase
self.opacity += 3 if self.opacity < 255
else
self.opacity -= 3 if self.opacity > 207
end
end
# 明灭
if @battler.blink
blink_on
else
blink_off
end
# 不可见的情况下
unless @battler_visible
# 出现
if not @battler.hidden and not @battler.dead? and
(@battler.damage == nil or @battler.damage_pop)
if @battler.is_a?(Game_Enemy)
appear
else
self.bitmap = RPG::Cache.battler(@battler_name, @battler_hue)
@width = bitmap.width
@height = bitmap.height
self.ox = @width / 2
self.oy = @height
end
@battler_visible = true
end
end
# 可见的情况下
if @battler_visible
# 逃跑
if @battler.hidden
$game_system.se_play($data_system.escape_se)
escape
@battler_visible = false
end
# 白色闪烁
if @battler.white_flash
whiten
@battler.white_flash = false
end
# 动画
if @battler.animation_id != 0
animation = $data_animations[@battler.animation_id]
animation(animation, @battler.animation_hit)
@battler.animation_id = 0
end
# 伤害
if @battler.damage_pop
damage(@battler.damage, @battler.critical)
@battler.damage = nil
@battler.critical = false
@battler.damage_pop = false
end
# korapusu
if @battler.damage == nil and @battler.dead?
if @battler.is_a?(Game_Enemy)
$game_system.se_play($data_system.enemy_collapse_se)
collapse
else
$game_system.se_play($data_system.actor_collapse_se)
# 角色战斗图变为角色ID+"Dead"的名字的战斗图
self.bitmap = RPG::Cache.battler(@battler.id.to_s + "Dead", @battler_hue)
@width = bitmap.width
@height = bitmap.height
self.ox = @width / 2
self.oy = @height
end
@battler_visible = false
end
end
# 设置活动块的坐标
self.x = @battler.screen_x
self.y = @battler.screen_y
self.z = @battler.screen_z
end
end
复制代码
系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~
步兵中尉
回复
使用道具
举报
返回列表
发新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
注册会员
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
浏览过的版块
水世界
Archiver
|
手机版
|
小黑屋
|
Project1游戏制作
Powered by
Discuz!
X5.0
© 2001-2026
Discuz! Team
.
在本版发帖
返回顶部
快速回复
返回顶部
返回列表