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

Project1

 找回密码
 注册会员
搜索
123
返回列表 发新帖
楼主: 恒子
打印 上一主题 下一主题

新人问题!关于战斗的脚本问题

 关闭 [复制链接]
头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
0 小时
注册时间
2008-9-23
帖子
41
21
 楼主| 发表于 2008-9-23 21:08:44 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

Lv1.梦旅人

蚂蚁卡卡

梦石
0
星屑
116
在线时间
66 小时
注册时间
2007-12-16
帖子
3081
22
发表于 2008-9-23 21:15:21 | 只看该作者
46行 Rect.new(0, 0, 0,0)



  1. #==============================================================================
  2. # ■ Window_BattleStatus
  3. #------------------------------------------------------------------------------
  4. #  显示战斗画面同伴状态的窗口。
  5. #==============================================================================

  6. class Window_BattleStatus < Window_Base
  7.   #--------------------------------------------------------------------------
  8.   # ● 初始化对像
  9.   #--------------------------------------------------------------------------
  10.   def initialize
  11.     super(0, 0, 640, 480)
  12.     self.contents = Bitmap.new(width - 32, height - 32)
  13.     @level_up_flags = [false, false, false, false]
  14.     #........................................................................
  15.     self.opacity = 0
  16.     @sta_back = []
  17.     @sta_output = []
  18.    # @cp_output = []
  19.     @hp_bitmap = RPG::Cache.picture("../system/battle/hmcp/hp_bar.png")
  20.     @mp_bitmap = RPG::Cache.picture("../system/battle/hmcp/mp_bar.png")
  21.     @bitmap3 = RPG::Cache.picture("../system/battle/hmcp/底.png")
  22.     # @cp_bitmap = RPG::Cache.picture("../system/battle/hmcp/cp_bar.png")
  23.    # @cp_output = []
  24.    # @cp_back_bar = Sprite.new
  25.     #@cp_back_bar.bitmap = Bitmap.new("Graphics/system/battle/hmcp/cp_back_bar")
  26.    ## @cp_back_bar.x = 450
  27.    # @cp_back_bar.y = 25
  28.     #@cp_back_bar.z = self.z + 1
  29.    # @actor_cp_sprite = []
  30.    # @actor_cp_sprite_back = []

  31.     for actor_index in 1..$game_party.actors.size
  32. #      @cp_output[actor_index] = Sprite.new
  33.      # @cp_output[actor_index].bitmap = Bitmap.new(133, 78)
  34.     #  @cp_output[actor_index].x = 100 + (actor_index - 1) * 133
  35.     #  @cp_output[actor_index].y = 480 - 78 - 10
  36.     #  @cp_output[actor_index].z = self.z + 2
  37. #      @cp_output[actor_index].bitmap.clear
  38.       @sta_back[actor_index] = Sprite.new
  39.       @sta_back[actor_index].bitmap = Bitmap.new("Graphics/System/Battle/sta_back/" + $game_party.actors[actor_index - 1].name + "战斗.png")
  40.       @sta_back[actor_index].x = 10
  41.       @sta_back[actor_index].y = 220 + (actor_index - 1) * 80
  42.       @sta_back[actor_index].z = self.z + 1
  43.       @sta_output[actor_index] = Sprite.new
  44.       @sta_output[actor_index].bitmap = Bitmap.new(133, 78)
  45.       @sta_output[actor_index].x = 75
  46.       @sta_output[actor_index].y = 232 + (actor_index - 1) * 80
  47.       @sta_output[actor_index].z = self.z + 2
  48.       @sta_output[actor_index].bitmap.clear
  49.       @sta_output[actor_index].bitmap.font.size = 10
  50.       @sta_output[actor_index].bitmap.font.name = "黑体"
  51.       hp_width = $game_party.actors[actor_index - 1].hp * @hp_bitmap.width/$game_party.actors[actor_index - 1].maxhp
  52.       hp_rect = Rect.new(0, 0, hp_width, 5)
  53.       mp_width = $game_party.actors[actor_index - 1].sp * @mp_bitmap.width/$game_party.actors[actor_index - 1].maxsp
  54.       mp_rect = Rect.new(0, 0, mp_width, 5)
  55.    
  56.       @sta_output[actor_index].bitmap.font.color.set(255, 0, 0)
  57.       @sta_output[actor_index].bitmap.draw_text(80, 31, 77, 11,$game_party.actors[actor_index - 1].hp.to_s + "/" + $game_party.actors[actor_index - 1].maxhp.to_s)
  58.       @sta_output[actor_index].bitmap.font.color.set(0, 0, 255)
  59.       @sta_output[actor_index].bitmap.draw_text(80, 51, 77, 11,$game_party.actors[actor_index - 1].sp.to_s + "/" + $game_party.actors[actor_index - 1].maxsp.to_s)
  60.     end
  61.     #........................................................................
  62.     refresh
  63.   end
  64.   #--------------------------------------------------------------------------
  65.   # ● 释放
  66.   #--------------------------------------------------------------------------
  67.   def dispose
  68.     super
  69.     @hp_bitmap.bitmap.dispose
  70.     @hp_bitmap.dispose
  71.     @mp_bitmap.bitmap.dispose
  72.     @mp_bitmap.dispose
  73.     @cp_bitmap.bitmap.dispose
  74.     @cp_bitmap.dispose
  75.     for actor_index in 1..$game_party.actors.size
  76.       @sta_back[actor_index].bitmap.dispose
  77.       @sta_back[actor_index].dispose
  78.       @sta_output[actor_index].bitmap.dispose
  79.       @sta_output[actor_index].dispose
  80.      # @cp_output[actor_index].bitmap.dispose
  81.      # @cp_output[actor_index].dispose
  82.     end
  83.   end
  84.   #--------------------------------------------------------------------------
  85.   # ● 设置升级标志
  86.   #     actor_index : 角色索引
  87.   #--------------------------------------------------------------------------
  88.   def level_up(actor_index)
  89.     @level_up_flags[actor_index] = true
  90.   end
  91.   #......................................................................
  92.   #--------------------------------------------------------------------------
  93.   # ● 设置正在攻击标志
  94.   #     actor_index : 角色索引
  95.   #--------------------------------------------------------------------------
  96. # def in_atk(actor_index)
  97.    # @sta_back[actor_index + 1].bitmap = Bitmap.new("Graphics/System/Battle/sta_back/" + $game_party.actors[actor_index].name + "战斗1.png")
  98. # end
  99.   #--------------------------------------------------------------------------
  100.   # ● 设置不在攻击标志
  101.   #     actor_index : 角色索引
  102.   #--------------------------------------------------------------------------
  103. # def out_atk(actor_index)
  104. #   @sta_back[actor_index + 1].bitmap = Bitmap.new("Graphics/System/Battle/sta_back/" + $game_party.actors[actor_index].name + "战斗.png")
  105. # end
  106.   #......................................................................
  107.   #--------------------------------------------------------------------------
  108.   # ● 刷新
  109.   #--------------------------------------------------------------------------
  110.   def refresh
  111.     self.contents.clear
  112.     @item_max = $game_party.actors.size
  113.     for i in 0...$game_party.actors.size
  114.       actor = $game_party.actors[i]
  115.       #......................................................................
  116.        actor_x = i * 160 + 145
  117.        actor_y = i * 80 + 220
  118.       @sta_output[i + 1].bitmap.clear
  119.       hp_width = $game_party.actors[i].hp * @hp_bitmap.width/$game_party.actors[i].maxhp
  120.       hp_rect = Rect.new(0, 0, hp_width, 5)
  121.       mp_width = $game_party.actors[i].sp * @mp_bitmap.width/$game_party.actors[i].maxsp
  122.       mp_rect = Rect.new(0, 0, mp_width, 5)
  123.       @sta_output[i + 1].bitmap.blt(66, 44, @hp_bitmap, hp_rect)
  124.       @sta_output[i + 1].bitmap.blt(66, 64, @mp_bitmap, mp_rect)
  125.       @sta_output[i + 1].bitmap.font.color.set(255, 0, 0)
  126.       @sta_output[i + 1].bitmap.draw_text(80, 31, 77, 11,$game_party.actors[i].hp.to_s + "/" + $game_party.actors[i].maxhp.to_s)
  127.       @sta_output[i + 1].bitmap.font.color.set(0, 0, 255)
  128.       @sta_output[i + 1].bitmap.draw_text(80, 51, 77, 11,$game_party.actors[i].sp.to_s + "/" + $game_party.actors[i].maxsp.to_s)
  129.       #......................................................................
  130.       if @level_up_flags[i]
  131.         self.contents.font.color = normal_color
  132.         self.contents.draw_text(0, 0, 640 , 480, "LEVEL UP!")
  133.       else
  134.         draw_actor_state(actor, 120, actor_y)
  135.       end
  136.     end
  137.   end
  138.   #--------------------------------------------------------------------------
  139.   # ● 刷新画面
  140.   #--------------------------------------------------------------------------
  141.   def update
  142.     super
  143. #     主界面的不透明度下降
  144.     if $game_temp.battle_main_phase
  145.       self.contents_opacity = 255 #if self.contents_opacity > 1
  146.     else
  147.       self.contents_opacity = 255 #if self.contents_opacity < 255
  148.     end
  149.   end
  150. end
复制代码


用这个吧  位置随便调 是数值坐标

但是需要素材(不过很简单 这个就不帮做了)
Graphics/system/battle/hmcp/hp_bar.png 图两个hp和sp的
Graphics/System/Battle/sta_back/里 弄 主角名 例 阿尔西斯战斗.png

这个脚本 存储位置和图的位置随便调 还可以加cp条 囧 我没用……


系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~
《隋唐乱》完整解密版点击进入
米兰,让我怎么说离开……

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

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

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
0 小时
注册时间
2008-9-23
帖子
41
23
 楼主| 发表于 2008-9-23 21:25:15 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2025-1-23 17:49

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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