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

Project1

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

[已经解决] 请问如何自己制作战斗场景

 关闭 [复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
0 小时
注册时间
2009-8-21
帖子
13
跳转到指定楼层
1
发表于 2009-11-14 22:20:09 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

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

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

x
就是角色的血条什么的都是用一个图片描绘,还有的就是求一些脚本代码
就是弹出装备物品窗口的代码,弹出角色状态窗口的代码,弹出物品使用窗口的代码等等

Lv1.梦旅人

℃ake

梦石
0
星屑
50
在线时间
8 小时
注册时间
2009-6-6
帖子
787
3
发表于 2009-11-14 22:37:42 | 只看该作者
本帖最后由 奶油Da蛋糕 于 2009-11-14 22:47 编辑

血条

  1. #=================
  2. #血条  By后知后觉
  3. #=================
  4. #血条图片宽度和高度
  5. $cake_图片宽度 = 49
  6. $cake_图片高度 = 49
  7. #血条图片名称
  8. $cake_图片名称 = "血条" #Graphics/Pictures/血条
  9. #蓝条图片宽度和高度
  10. $cake_图片宽度2 = 49
  11. $cake_图片高度2 = 49
  12. #蓝条图片名称
  13. $cake_图片名称2 = "蓝条" #Graphics/Pictures/蓝条

  14. class Window_BattleStatus < Window_Base
  15. alias initialize_cake initialize
  16. def initialize(hpsp_window = nil)
  17. @hpsp_window = hpsp_window
  18. initialize_cake
  19. end
  20. alias refresh_cake refresh
  21. def refresh
  22. refresh_cake
  23.    unless @hpsp_window.nil?
  24.      @hpsp_window.refresh
  25.    end
  26. end
  27. alias update_cake update
  28. def update
  29. update_cake
  30.    unless @hpsp_window.nil?
  31.      @hpsp_window.update
  32.    end
  33. end
  34. end
  35. class Window_HPSP < Window_Base
  36.   def initialize
  37.     super(-16,-16,672,512)
  38.     self.contents = Bitmap.new(640, 480)
  39.     self.opacity = 0
  40.     refresh
  41.   end
  42.   def refresh
  43.     self.contents.clear
  44.     actors = $game_party.actors
  45.     return if actors.size == 0
  46.     scr_z = 0
  47.     for actor in actors
  48.       if scr_z < actor.screen_z
  49.         scr_z = actor.screen_z
  50.       end
  51.     end
  52.     self.z = scr_z + 10
  53.     for i in 0...actors.size
  54.       x = actors[i].screen_x
  55.       y = actors[i].screen_y
  56.       draw_actor_hp_bar(actors[i], x, y)
  57.       draw_actor_sp_bar(actors[i], x, y)
  58.     end
  59.   end
  60.   def draw_actor_hp_bar(actor, x, y)
  61.     bitmap = RPG::Cache.battler(actor.battler_name, actor.battler_hue)
  62.     new_x = x - bitmap.width / 4
  63.     new_y = y - bitmap.height
  64.     w = $cake_图片宽度 * actor.hp / actor.maxhp
  65.     @rect =  Rect.new(0,0,w,$cake_图片高度)
  66.     self.contents.blt(new_x, new_y, RPG::Cache.picture($cake_图片名称),@rect)
  67.    end
  68.   def draw_actor_sp_bar(actor, x, y)
  69.     bitmap = RPG::Cache.battler(actor.battler_name, actor.battler_hue)
  70.     new_x = x - bitmap.width / 4
  71.     new_y = y - bitmap.height
  72. new_y += 10
  73.       w = $cake_图片宽度2 * actor.sp / actor.maxsp
  74.     @rect =  Rect.new(0,0,w,$cake_图片高度2)
  75.     self.contents.blt(new_x, new_y, RPG::Cache.picture($cake_图片名称2),@rect)
  76. end  
  77. end
  78. class Scene_Battle
  79. alias main_cake main
  80. def main
  81. @hpsp_window = Window_HPSP.new
  82.     @status_window = Window_BattleStatus.new(@hpsp_window)
  83. main_cake
  84. @hpsp_window.dispose
  85. end
  86. end
复制代码
插入到MAIN前,同时找到Scene_Battle 1,删除第49行@status_window = Window_BattleStatus.new的内容即可(只有这样才可以做到0冲突)。
我爱66RPG,但我讨厌66.
回复 支持 反对

使用道具 举报

Lv1.梦旅人

℃ake

梦石
0
星屑
50
在线时间
8 小时
注册时间
2009-6-6
帖子
787
2
发表于 2009-11-14 22:28:04 | 只看该作者
  1. $scene = Scene_Equip.new #装备栏
  2. $scene = Scene_Statu.new #状态栏
  3. $scene = Scene_Item.new #物品栏
复制代码
我爱66RPG,但我讨厌66.
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-12-28 03:07

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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