设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 1450|回复: 8
打印 上一主题 下一主题

如何在地图中直接显示主角的血条!!

 关闭 [复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
0 小时
注册时间
2008-8-21
帖子
118
跳转到指定楼层
1
发表于 2008-12-21 09:30:06 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
像ARPG那样直接把主角的血条显示在地图上该怎么弄???

还有就是怎么在地图上显示伤害??(这个问题无所谓,只要是上面那个血条该怎么弄?)

版务信息:本贴由楼主自主结贴~

Lv4.逐梦者

梦石
0
星屑
6875
在线时间
1666 小时
注册时间
2008-10-29
帖子
6710

贵宾

2
发表于 2008-12-21 10:56:34 | 只看该作者
新建个窗口类。描绘队伍里队员的血条
然后在Scene_Map生成这个窗口类对象











你知道得太多了

回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
0 小时
注册时间
2008-2-1
帖子
949
3
发表于 2008-12-21 11:16:42 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

Lv1.梦旅人

綾川司の姫様<

梦石
0
星屑
50
在线时间
796 小时
注册时间
2007-12-20
帖子
4520

贵宾第3届短篇游戏大赛R剧及RMTV组亚军

4
发表于 2008-12-21 14:30:06 | 只看该作者
参考LS给出的值槽绘制,将血条画在地图上显示的窗口里,如下:
http://rpg.blue/web/htm/news90.htm
系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~

生命即是责任。自己即是世界。
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
0 小时
注册时间
2007-6-24
帖子
70
5
发表于 2008-12-21 15:28:36 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
60
在线时间
9 小时
注册时间
2006-9-7
帖子
303
6
发表于 2008-12-21 16:52:23 | 只看该作者
re:主题:《如何在地图中直接显示主角的血条!!》
1. 地图上直接显示伤害脚本
  1. #==============================================================================
  2. # 本脚本来自www.66RPG.com,使用和转载请保留此信息
  3. #==============================================================================
  4. #
  5. # 使用方法:
  6. #
  7. # ★、对角色显示伤害,如下3步:
  8. #
  9. # 1、设置伤害内容:$game_player.damage = 数值
  10. #    注意:如果数值是负数,就变成补血的颜色了。
  11. #
  12. # 2、设置是否会心一击:$game_player.critical = true/false
  13. #    如果不是会心一击,就不用这一步了
  14. #
  15. # 3、释放伤害:$game_player.damage_pop = true
  16. #
  17. #
  18. # ★、对普通NPC和事件进行伤害,类似的3步:
  19. #
  20. # 1、设置伤害内容:$game_map.events[事件编号].damage = 数值
  21. #
  22. # 2、设置是否会心一击:$game_map.events[事件编号].critical = true/false
  23. #
  24. # 3、释放伤害:$game_map.events[事件编号].damage_pop = true
  25. #
  26. # 注意,事件编号是事件的ID号,如果目标是“本事件”,那么在事件编号输入@event_id
  27. #
  28. #------------------------------------------------------------------------------
  29. # 预祝有人能早日做出华丽的ARPG来,别忘了到网站发布哦~
  30. #------------------------------------------------------------------------------
  31. class Sprite_Character < RPG::Sprite
  32. alias carol3_66RPG_damage_pop_update update
  33. def update
  34.    carol3_66RPG_damage_pop_update
  35.    if @character.damage_pop
  36.      damage(@character.damage, @character.critical)
  37.      @character.damage = nil
  38.      @character.critical = false
  39.      @character.damage_pop = false
  40.    end
  41.    #------------------------------
  42.    # 动画 ID 与当前的情况有差异的情况下
  43.    if @character.damage == nil and
  44.       @character.state_animation_id != @state_animation_id
  45.      @state_animation_id = @character.state_animation_id
  46.      loop_animation($data_animations[@state_animation_id])
  47.    end
  48.    
  49.    #collapse
  50.    # 明灭
  51.    if @character.blink
  52.      blink_on
  53.    else
  54.      blink_off
  55.    end
  56.    # 白色闪烁
  57.    if @character.white_flash
  58.      whiten
  59.      @character.white_flash = false
  60.    end
  61.    # 死亡
  62.    if @character.dead
  63.      collapse
  64.      @character.dead = false
  65.    end
  66.    #------------------------------
  67. end  
  68. end
  69. class Game_Character
  70. attr_accessor :damage_pop
  71. attr_accessor :damage
  72. attr_accessor :critical
  73. attr_accessor :white_flash              # 白色屏幕闪烁标志
  74. attr_accessor :blink                    # 闪烁标志
  75. attr_accessor :dead                     # 死亡消失标志
  76. attr_accessor :state_animation_id       # 状态动画ID
  77. alias carol3_66RPG_damage_pop_initialize initialize
  78. def initialize
  79.    @damage_pop = false
  80.    @damage = nil
  81.    @critical = false
  82.    carol3_66RPG_damage_pop_initialize
  83.    @white_flash = false
  84.    @blink = false
  85.    @dead = false
  86. end
  87. def state_animation_id
  88.    return @character.state_animation_id
  89. end
  90. end

  91. #==============================================================================
  92. # 本脚本来自www.66RPG.com,使用和转载请保留此信息
  93. #==============================================================================
复制代码



地图界面中直接显示的状态显示脚本

http://rpg.blue/web/htm/news816.htm
十年磨一剑,蓦然回首,年华如水,青春如歌。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

蚂蚁卡卡

梦石
0
星屑
116
在线时间
66 小时
注册时间
2007-12-16
帖子
3081
7
发表于 2008-12-21 17:46:09 | 只看该作者
re:主题:《如何在地图中直接显示主角的血条!!》
  1. DT_SWITCH = 66
  2. #_______________________________________________________________________________
  3. # MOG_MPW HUD Elena V2.0           
  4. #_______________________________________________________________________________
  5. # By Moghunter
  6. # http://www.atelier-rgss.com
  7. #_______________________________________________________________________________
  8. module MOG
  9. #HUD Position.
  10. STMAPX = 476   # X Pos
  11. STMAPY = - 16 # Y Pos
  12. #Disable HUD Switch ID.  
  13. STMAPVIS = 1
  14. #Windowskin name.
  15. STMAPSKIN = ""
  16. #Window Opacity.
  17. STMAPOPA = 0
  18. end
  19. $mogscript = {} if $mogscript == nil
  20. $mogscript["mpstelen"] = true
  21. ###############
  22. # Window_Base #
  23. ###############
  24. class Window_Base < Window   

  25. def draw_maphp2(actor, x, y)
  26. text = RPG::Cache.picture("HP_Tx")   
  27. cw = text.width
  28. ch = text.height
  29. src_rect = Rect.new(0, 0, cw, ch)
  30. self.contents.blt( 75, 0, text, src_rect)
  31. meter = RPG::Cache.picture("HP_Meter")   
  32. cw = meter.width  * actor.hp / actor.maxhp
  33. ch = meter.height
  34. src_rect = Rect.new(0, 0, cw, ch)
  35. self.contents.blt( 94 ,16 , meter, src_rect)
  36. end  

  37. #def draw_mapsp2(actor, x, y)
  38. #meter = RPG::Cache.picture("SP_Meter")   
  39. #cw = meter.width  
  40. #ch = meter.height *  actor.sp / actor.maxsp
  41. #src_rect = Rect.new(0, 0,  cw, ch)
  42. #self.contents.blt( 81, 2, meter,  src_rect)
  43. #end

  44. def draw_mapsp2(actor, x, y)
  45. meter = RPG::Cache.picture("SP_Meter")   
  46. cw = meter.width  
  47. ch = 60 - meter.height *  actor.sp / actor.maxsp
  48. src_rect = Rect.new(0, 0,  cw, ch)
  49. self.contents.blt( 81, 2, meter,  src_rect)
  50. end


  51. def draw_mexp(actor, x, y)
  52. actor = $game_party.actors[0]
  53. if actor.next_exp != 0
  54. rate = actor.now_exp.to_f / actor.next_exp
  55. else
  56. rate = 1
  57. end
  58. bitmap = RPG::Cache.picture("Exp_Meter")
  59. #bitmap.z = 10
  60. if actor.level < 99
  61. cw = bitmap.width
  62. else
  63. cw = bitmap.width
  64. end   
  65. ch = bitmap.height - bitmap.height * rate
  66. src_rect = Rect.new(0, 0, cw, ch)
  67. self.contents.blt(88 , 6, bitmap, src_rect)

  68. end
  69. def nada
  70. face = RPG::Cache.picture("")
  71. end  
  72. def draw_heroface(actor,x,y) #"Graphics/system/menu/headp/" + actor.name + ".png"
  73. face = RPG::Cache.picture("../system/menu/HeadP/"+actor.name+"【地图】.png" ) rescue nada
  74. cw = face.width
  75. ch = face.height
  76. src_rect = Rect.new(0, 0, cw, ch)
  77. self.contents.blt(93 , 8, face, src_rect)
  78. end  

  79. end
  80. ##############
  81. # Game_Actor #
  82. ##############
  83. class Game_Actor < Game_Battler
  84. def now_exp
  85. return @exp - @exp_list[@level]
  86. end
  87. def next_exp
  88. return @exp_list[@level+1] > 0 ? @exp_list[@level+1] - @exp_list[@level] : 0
  89. end
  90. end
  91. #####################
  92. # Window_Status_Map #
  93. #####################
  94. class Window_Sthero < Window_Base
  95. def initialize
  96. super(0, 0, 310, 120)
  97. self.contents = Bitmap.new(width - 32, height - 32)
  98. self.windowskin = RPG::Cache.windowskin(MOG::STMAPSKIN)   
  99. self.contents.font.bold = true
  100. self.contents.font.size = 20
  101. self.contents.font.name = "Georgia"
  102. self.opacity = MOG::STMAPOPA

  103. refresh
  104. end  
  105. def refresh
  106.    if $game_switches[DT_SWITCH]
  107. #actor = $game_party.actors[0]

  108. #draw_maphp2(actor, 35, 35)
  109. #draw_mapsp2(actor, - 40, 60)
  110. #draw_mexp(actor, 100, 10)
  111. #draw_heroface(actor, 0, 70) 游啊游
  112.      self.contents.clear
  113. actor = $game_party.actors[0]

  114. draw_maphp2(actor, 35, 35)
  115. draw_mapsp2(actor, - 40, 60)
  116. draw_mexp(actor, 100, 10)
  117. draw_heroface(actor, 0, 70)
  118. end

  119. # draw_actor_statemap(actor, 200, 60, 70)
  120. #draw_actor_levelmap(actor, 80, 10)   

  121. end
  122. end
  123. ###############
  124. # Game_Player #
  125. ###############
  126. class Game_Player < Game_Character
  127. attr_accessor :wref
  128. end
  129. #############
  130. # Scene_Map #
  131. #############
  132. class Scene_Map
  133. alias mog11_main main
  134. def main
  135. @sthero = Window_Sthero.new
  136. @sthero.x = MOG::STMAPX
  137. @sthero.y = MOG::STMAPY
  138. if $game_switches[MOG::STMAPVIS] == false
  139. @sthero.visible = true  
  140. else
  141. @sthero.visible = false  
  142. end  
  143. mog11_main
  144. @sthero.dispose
  145. end
  146. alias mog11_update update
  147. def update
  148. mog11_update
  149. if $game_switches[MOG::STMAPVIS] == false
  150. @sthero.visible = true  
  151. else
  152. @sthero.visible = false  
  153. end
  154. if $game_switches[DT_SWITCH]
  155.     @sthero.visible = true
  156.     if $game_player.wref == true
  157. @sthero.refresh
  158. $game_player.wref = false
  159. end
  160.     else
  161.     @sthero.visible = false  
  162.      $game_player.wref = false
  163.   end
  164.   
  165. #if $game_switches[MOG::STMAPVIS] == false游啊游
  166. #@sthero.visible = true  
  167. #else
  168. #@sthero.visible = false  
  169. #end  
  170. #if $game_player.wref == true
  171. #@sthero.refresh
  172. #$game_player.wref = false
  173. #end
  174. #else
  175. # @sthero.visible = false  
  176.   #$game_player.wref = false

  177. #end

  178. end
  179. end  
  180. ##############
  181. # Game_Party #
  182. ###############
  183. class Game_Party
  184. alias mog11_check_map_slip_damage check_map_slip_damage  
  185. def check_map_slip_damage
  186. for actor in @actors
  187. if actor.hp > 0 and actor.slip_damage?
  188. $game_player.wref = true
  189. end
  190. end
  191. mog11_check_map_slip_damage  
  192. end
  193. end
  194. ###############
  195. # Interpreter #
  196. ###############
  197. class Interpreter
  198. alias mog11_command_311 command_311
  199. def command_311
  200. mog11_command_311
  201. $game_player.wref = true   
  202. end   
  203. alias mog11_command_312 command_312
  204. def command_312
  205. mog11_command_312
  206. $game_player.wref = true   
  207. end   
  208. alias mog11_command_313 command_313
  209. def command_313
  210. mog11_command_313
  211. $game_player.wref = true   
  212. end   
  213. alias mog11_command_314 command_314
  214. def command_314
  215. mog11_command_314
  216. $game_player.wref = true   
  217. end   
  218. alias mog11_command_315 command_315
  219. def command_315
  220. mog11_command_315
  221. $game_player.wref = true   
  222. end   
  223. end   
  224. ################
  225. # Game_Battler #
  226. ################
  227. class Game_Battler
  228. alias mog11_attack_effect attack_effect
  229. def attack_effect(attacker)
  230. mog11_attack_effect(attacker)  
  231. $game_player.wref = true
  232. end
  233. alias mog11_skill_effect skill_effect
  234. def skill_effect(user, skill)
  235. mog11_skill_effect(user, skill)
  236. $game_player.wref = true  
  237. end  
  238. alias mog11_item_effect item_effect
  239. def item_effect(item)
  240. mog11_item_effect(item)
  241. $game_player.wref = true  
  242. end
  243. alias mog11_add_state add_state
  244. def add_state(state_id, force = false)
  245. mog11_add_state(state_id, force = false)
  246. $game_player.wref = true  
  247. end
  248. end
复制代码


素材自理

《隋唐乱》完整解密版点击进入
米兰,让我怎么说离开……

曾经我也是一个有志青年,直到我膝盖中了一箭……

《隋唐乱》博客地址
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
0 小时
注册时间
2008-8-21
帖子
118
8
 楼主| 发表于 2008-12-21 09:26:41 | 只看该作者
主题:《如何在地图中直接显示主角的血条!!》 原帖
像ARPG那样直接把主角的血条显示在地图上该怎么弄???

还有就是怎么在地图上显示伤害??(这个问题无所谓,只要是上面那个血条该怎么弄?)
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
0 小时
注册时间
2008-8-21
帖子
118
9
 楼主| 发表于 2008-12-22 00:14:27 | 只看该作者
{/ll}{/ll}那个《血条描绘》的教程我下不下来啊~!!怎么弄!??
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2025-1-20 05:48

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表