| 
 
| 赞 | 0 |  
| VIP | 195 |  
| 好人卡 | 0 |  
| 积分 | 15 |  
| 经验 | 4022 |  
| 最后登录 | 2014-4-11 |  
| 在线时间 | 423 小时 |  
 Lv3.寻梦者 
	梦石0 星屑1455 在线时间423 小时注册时间2010-12-26帖子337 | 
| 血脚本 
 
 class Game_Actor < Game_Battler
 def now_exp
 return @exp - @exp_list[@level]
 end
 def next_exp
 return @exp_list[@level+1] > 0 ? @exp_list[@level+1] - @exp_list[@level] : 0
 end
 end
 #==============================================================================
 # 描绘角色血条
 #==============================================================================
 class Window_BattleStatus < Window_Base
 #--------------------------------------------------------------------------
 # ● 初始化
 #--------------------------------------------------------------------------
 alias xrxs_bp2_refresh refresh
 def refresh
 xrxs_bp2_refresh
 @item_max = $game_party.actors.size
 for i in 0...$game_party.actors.size
 actor = $game_party.actors[i]
 actor_x = actor.s_x - 455
 actor_y = actor.s_y - 270
 x1=self.x
 y1=self.y
 if actor.xiaoshi == nil and actor.dead? == false
 draw_actor_hp_meter(actor, actor_x, 1+actor_y,35)
 draw_actor_sp_meter(actor, actor_x, 10+actor_y, 35)
 end
 end
 end
 end
 #==============================================================================
 # ■ Window_Base
 #==============================================================================
 class Window_Base < Window
 #--------------------------------------------------------------------------
 # ● HP描画
 #--------------------------------------------------------------------------
 def draw_actor_hp_meter(actor, x, y, width = 156, type = 0)
 if type == 1 and actor.hp == 0
 return
 end
 self.contents.fill_rect(x-1, y+82, width+2,6, Color.new(0, 0, 0, 255))
 w = width * actor.hp / [actor.maxhp,1].max
 self.contents.fill_rect(x, y+84, w,1, Color.new(255, 140, 140, 255))
 self.contents.fill_rect(x, y+85, w,1, Color.new(180, 18, 0, 255))
 self.contents.fill_rect(x, y+86, w,1, Color.new(209, 33, 0,255))
 self.contents.fill_rect(x, y+87, w,1, Color.new(180, 18, 0, 255))
 end
 #--------------------------------------------------------------------------
 # ● SP描画
 #--------------------------------------------------------------------------
 def draw_actor_sp_meter(actor, x, y, width = 156, type = 0)
 if type == 1 and actor.hp == 0
 return
 end
 self.contents.fill_rect(x-1, y+82, width+2,6, Color.new(0, 0, 0, 255))
 w = width * actor.sp / [actor.maxsp,1].max
 self.contents.fill_rect(x, y+84, w,1, Color.new(40, 176, 255, 255))
 self.contents.fill_rect(x, y+85, w,1, Color.new(78, 10, 175, 255))
 self.contents.fill_rect(x, y+86, w,1, Color.new(94, 10, 214, 255))
 self.contents.fill_rect(x, y+87, w,1, Color.new(78, 10, 175, 255))
 end
 #--------------------------------------------------------------------------
 # ● exp描画
 #--------------------------------------------------------------------------
 def draw_actor_exp_meter(actor, x, y, width = 156, type = 0)
 if type == 1 and actor.hp == 0
 return
 end
 self.contents.fill_rect(x-1, y+83, width+2,6, Color.new(0, 0, 0, 255))
 w = width * actor.now_exp/[ actor.next_exp,1].max
 self.contents.fill_rect(x, y+83, w,1, Color.new(77, 140, 140, 255))
 self.contents.fill_rect(x, y+85, w,1, Color.new(100, 220, 220, 255))
 self.contents.fill_rect(x, y+86, w,1, Color.new(77, 173, 173, 255))
 self.contents.fill_rect(x, y+87, w,1, Color.new(77, 207, 207, 255))
 self.contents.fill_rect(x, y+87, w,1, Color.new(77, 173, 173, 255))
 self.contents.fill_rect(x, y+87, w,1, Color.new(77, 140, 140, 255))
 end
 end
 
 
 这脚本要如何改血条个别自定义位置呢?
 
 
 血条同步于人物战斗坐标.....我试过如下
 
 
 #==============================================================================
 # ■ Game_Actor
 #------------------------------------------------------------------------------
 #  处理角色的类。本类在 Game_Actors 类 ($game_actors)
 # 的内部使用、Game_Party 类请参考 ($game_party) 。
 #==============================================================================
 
 class Game_Actor < Game_Battler
 #--------------------------------------------------------------------------
 # ● 定义实例变量
 #--------------------------------------------------------------------------
 attr_reader   :name                     # 名称
 attr_reader   :character_name           # 角色 文件名
 attr_reader   :character_hue            # 角色 色相
 attr_reader   :class_id                 # 职业 ID
 attr_reader   :weapon_id                # 武器 ID
 attr_reader   :armor1_id                # 盾 ID
 attr_reader   :armor2_id                # 头防具 ID
 attr_reader   :armor3_id                # 身体体防具 ID
 attr_reader   :armor4_id                # 装饰品 ID
 attr_reader   :level                    # 水平
 attr_reader   :exp                      # EXP
 attr_reader   :skills                   # 特技
 attr_accessor :qianli
 #--------------------------------------------------------------------------
 # ● 初始化对像
 #     actor_id : 角色 ID
 #--------------------------------------------------------------------------
 def initialize(actor_id)
 super()
 setup(actor_id)
 end
 
 #def qianli(ql)
 #@qianli += ql
 #@qianli = [@qianli, 0].max
 #return @qianli
 #end
 
 #def qianli()
 #return @qianli
 #end
 #--------------------------------------------------------------------------
 # ● 设置
 #     actor_id : 角色 ID
 #--------------------------------------------------------------------------
 def setup(actor_id)
 actor = $data_actors[actor_id]
 @qianli = 0
 @actor_id = actor_id
 @name = actor.name
 @character_name = actor.character_name
 @character_hue = actor.character_hue
 @battler_name = actor.battler_name
 @battler_hue = actor.battler_hue
 @class_id = actor.class_id
 @weapon_id = actor.weapon_id
 @armor1_id = actor.armor1_id
 @armor2_id = actor.armor2_id
 @armor3_id = actor.armor3_id
 @armor4_id = actor.armor4_id
 @level = actor.initial_level
 @exp_list = Array.new(101)
 make_exp_list
 @exp = @exp_list[@level]
 @skills = []
 @hp = maxhp
 @sp = maxsp
 @states = []
 @states_turn = {}
 @maxhp_plus = 0
 @maxsp_plus = 0
 @str_plus = 0
 @dex_plus = 0
 @agi_plus = 0
 @int_plus = 0
 # 学会特技
 for i in 1..@level
 for j in $data_classes[@class_id].learnings
 if j.level == i
 learn_skill(j.skill_id)
 end
 end
 end
 # 刷新自动状态
 update_auto_state(nil, $data_armors[@armor1_id])
 update_auto_state(nil, $data_armors[@armor2_id])
 update_auto_state(nil, $data_armors[@armor3_id])
 update_auto_state(nil, $data_armors[@armor4_id])
 end
 #--------------------------------------------------------------------------
 # ● 获取角色 ID
 #--------------------------------------------------------------------------
 def id
 return @actor_id
 end
 #--------------------------------------------------------------------------
 # ● 获取索引
 #--------------------------------------------------------------------------
 def index
 return $game_party.actors.index(self)
 end
 #--------------------------------------------------------------------------
 # ● 计算 EXP
 #--------------------------------------------------------------------------
 def make_exp_list
 actor = $data_actors[@actor_id]
 @exp_list[1] = 0
 pow_i = 2.4 + actor.exp_inflation / 100.0
 for i in 2..100
 if i > actor.final_level
 @exp_list[i] = 0
 else
 n = actor.exp_basis * ((i + 3) ** pow_i) / (5 ** pow_i)
 @exp_list[i] = @exp_list[i-1] + Integer(n)
 end
 end
 end
 #--------------------------------------------------------------------------
 # ● 取得属性修正值
 #     element_id : 属性 ID
 #--------------------------------------------------------------------------
 def element_rate(element_id)
 # 获取对应属性有效度的数值
 table = [0,120,110,100,90,80,5]
 result = table[$data_classes[@class_id].element_ranks[element_id]]
 # 防具能防御本属性的情况下效果减半
 for i in [@armor1_id, @armor2_id, @armor3_id, @armor4_id]
 armor = $data_armors[i]
 if armor != nil and armor.guard_element_set.include?(element_id)
 result /= 2
 end
 end
 # 状态能防御本属性的情况下效果减半
 for i in @states
 if $data_states[i].guard_element_set.include?(element_id)
 result /= 2
 end
 end
 # 过程结束
 return result
 end
 #--------------------------------------------------------------------------
 # ● 获取属性有效度
 #--------------------------------------------------------------------------
 def state_ranks
 return $data_classes[@class_id].state_ranks
 end
 #--------------------------------------------------------------------------
 # ● 判定防御属性
 #     state_id : 属性 ID
 #--------------------------------------------------------------------------
 def state_guard?(state_id)
 for i in [@armor1_id, @armor2_id, @armor3_id, @armor4_id]
 armor = $data_armors[i]
 if armor != nil
 if armor.guard_state_set.include?(state_id)
 return true
 end
 end
 end
 return false
 end
 #--------------------------------------------------------------------------
 # ● 获取普通攻击属性
 #--------------------------------------------------------------------------
 def element_set
 weapon = $data_weapons[@weapon_id]
 return weapon != nil ? weapon.element_set : []
 end
 #--------------------------------------------------------------------------
 # ● 获取普通攻击状态变化 (+)
 #--------------------------------------------------------------------------
 def plus_state_set
 weapon = $data_weapons[@weapon_id]
 return weapon != nil ? weapon.plus_state_set : []
 end
 #--------------------------------------------------------------------------
 # ● 获取普通攻击状态变化 (-)
 #--------------------------------------------------------------------------
 def minus_state_set
 weapon = $data_weapons[@weapon_id]
 return weapon != nil ? weapon.minus_state_set : []
 end
 #--------------------------------------------------------------------------
 # ● 获取 MaxHP
 #--------------------------------------------------------------------------
 def maxhp
 n = [[base_maxhp + @maxhp_plus, 1].max, 9999].min
 for i in @states
 n *= $data_states[i].maxhp_rate / 100.0
 end
 n = [[Integer(n), 1].max, 9999].min
 n.truncate
 return n
 end
 #--------------------------------------------------------------------------
 # ● 获取基本 MaxHP
 #--------------------------------------------------------------------------
 def base_maxhp
 return $data_actors[@actor_id].parameters[0, @level]
 end
 #--------------------------------------------------------------------------
 # ● 获取基本 MaxSP
 #--------------------------------------------------------------------------
 def base_maxsp
 return $data_actors[@actor_id].parameters[1, @level]
 end
 #--------------------------------------------------------------------------
 # ● 获取基本力量
 #--------------------------------------------------------------------------
 def base_str
 n = $data_actors[@actor_id].parameters[2, @level]
 weapon = $data_weapons[@weapon_id]
 armor1 = $data_armors[@armor1_id]
 armor2 = $data_armors[@armor2_id]
 armor3 = $data_armors[@armor3_id]
 armor4 = $data_armors[@armor4_id]
 n += weapon != nil ? weapon.str_plus : 0
 n += armor1 != nil ? armor1.str_plus : 0
 n += armor2 != nil ? armor2.str_plus : 0
 n += armor3 != nil ? armor3.str_plus : 0
 n += armor4 != nil ? armor4.str_plus : 0
 return [[n, 1].max, 9999].min
 end
 #--------------------------------------------------------------------------
 # ● 获取基本灵巧
 #--------------------------------------------------------------------------
 def base_dex
 n = $data_actors[@actor_id].parameters[3, @level]
 weapon = $data_weapons[@weapon_id]
 armor1 = $data_armors[@armor1_id]
 armor2 = $data_armors[@armor2_id]
 armor3 = $data_armors[@armor3_id]
 armor4 = $data_armors[@armor4_id]
 n += weapon != nil ? weapon.dex_plus : 0
 n += armor1 != nil ? armor1.dex_plus : 0
 n += armor2 != nil ? armor2.dex_plus : 0
 n += armor3 != nil ? armor3.dex_plus : 0
 n += armor4 != nil ? armor4.dex_plus : 0
 return [[n, 1].max, 9999].min
 end
 #--------------------------------------------------------------------------
 # ● 获取基本速度
 #--------------------------------------------------------------------------
 def base_agi
 n = $data_actors[@actor_id].parameters[4, @level]
 weapon = $data_weapons[@weapon_id]
 armor1 = $data_armors[@armor1_id]
 armor2 = $data_armors[@armor2_id]
 armor3 = $data_armors[@armor3_id]
 armor4 = $data_armors[@armor4_id]
 n += weapon != nil ? weapon.agi_plus : 0
 n += armor1 != nil ? armor1.agi_plus : 0
 n += armor2 != nil ? armor2.agi_plus : 0
 n += armor3 != nil ? armor3.agi_plus : 0
 n += armor4 != nil ? armor4.agi_plus : 0
 
 
 for kds in @skills
 if $data_skills[kds].element_set.include?(40)
 n = n*120/100
 break
 elsif $data_skills[kds].element_set.include?(39)
 n = n*110/100
 break
 end
 end
 for kds in @skills
 if $data_skills[kds].element_set.include?(70)
 n = n*85/100
 break
 end
 end
 return [[n, 1].max, 9999].min
 end
 #--------------------------------------------------------------------------
 # ● 获取基本魔力
 #--------------------------------------------------------------------------
 def base_int
 n = $data_actors[@actor_id].parameters[5, @level]
 weapon = $data_weapons[@weapon_id]
 armor1 = $data_armors[@armor1_id]
 armor2 = $data_armors[@armor2_id]
 armor3 = $data_armors[@armor3_id]
 armor4 = $data_armors[@armor4_id]
 n += weapon != nil ? weapon.int_plus : 0
 n += armor1 != nil ? armor1.int_plus : 0
 n += armor2 != nil ? armor2.int_plus : 0
 n += armor3 != nil ? armor3.int_plus : 0
 n += armor4 != nil ? armor4.int_plus : 0
 return [[n, 1].max, 9999].min
 end
 #--------------------------------------------------------------------------
 # ● 获取基本攻击力
 #--------------------------------------------------------------------------
 def base_atk
 weapon = $data_weapons[@weapon_id]
 return weapon != nil ? weapon.atk : 0
 end
 #--------------------------------------------------------------------------
 # ● 获取基本物理防御
 #--------------------------------------------------------------------------
 def base_pdef
 weapon = $data_weapons[@weapon_id]
 armor1 = $data_armors[@armor1_id]
 armor2 = $data_armors[@armor2_id]
 armor3 = $data_armors[@armor3_id]
 armor4 = $data_armors[@armor4_id]
 pdef1 = weapon != nil ? weapon.pdef : 0
 pdef2 = armor1 != nil ? armor1.pdef : 0
 pdef3 = armor2 != nil ? armor2.pdef : 0
 pdef4 = armor3 != nil ? armor3.pdef : 0
 pdef5 = armor4 != nil ? armor4.pdef : 0
 return pdef1 + pdef2 + pdef3 + pdef4 + pdef5
 end
 #--------------------------------------------------------------------------
 # ● 获取基本魔法防御
 #--------------------------------------------------------------------------
 def base_mdef
 weapon = $data_weapons[@weapon_id]
 armor1 = $data_armors[@armor1_id]
 armor2 = $data_armors[@armor2_id]
 armor3 = $data_armors[@armor3_id]
 armor4 = $data_armors[@armor4_id]
 mdef1 = weapon != nil ? weapon.mdef : 0
 mdef2 = armor1 != nil ? armor1.mdef : 0
 mdef3 = armor2 != nil ? armor2.mdef : 0
 mdef4 = armor3 != nil ? armor3.mdef : 0
 mdef5 = armor4 != nil ? armor4.mdef : 0
 return mdef1 + mdef2 + mdef3 + mdef4 + mdef5
 end
 #--------------------------------------------------------------------------
 # ● 获取基本回避修正
 #--------------------------------------------------------------------------
 def base_eva
 armor1 = $data_armors[@armor1_id]
 armor2 = $data_armors[@armor2_id]
 armor3 = $data_armors[@armor3_id]
 armor4 = $data_armors[@armor4_id]
 eva1 = armor1 != nil ? armor1.eva : 0
 eva2 = armor2 != nil ? armor2.eva : 0
 eva3 = armor3 != nil ? armor3.eva : 0
 eva4 = armor4 != nil ? armor4.eva : 0
 return eva1 + eva2 + eva3 + eva4
 end
 #--------------------------------------------------------------------------
 # ● 普通攻击 获取攻击方动画 ID
 #--------------------------------------------------------------------------
 def animation1_id
 weapon = $data_weapons[@weapon_id]
 return weapon != nil ? weapon.animation1_id : 0
 end
 #--------------------------------------------------------------------------
 # ● 普通攻击 获取对像方动画 ID
 #--------------------------------------------------------------------------
 def animation2_id
 weapon = $data_weapons[@weapon_id]
 return weapon != nil ? weapon.animation2_id : 0
 end
 #--------------------------------------------------------------------------
 # ● 获取类名
 #--------------------------------------------------------------------------
 def class_name
 return $data_classes[@class_id].name
 end
 #--------------------------------------------------------------------------
 # ● 获取 EXP 字符串
 #--------------------------------------------------------------------------
 def exp_s
 return @exp_list[@level+1] > 0 ? @exp.to_s : "-------"
 end
 #--------------------------------------------------------------------------
 # ● 获取下一等级的 EXP 字符串
 #--------------------------------------------------------------------------
 def next_exp_s
 return @exp_list[@level+1] > 0 ? @exp_list[@level+1].to_s : "-------"
 end
 #--------------------------------------------------------------------------
 # ● 获取离下一等级还需的 EXP 字符串
 #--------------------------------------------------------------------------
 def next_rest_exp_s
 return @exp_list[@level+1] > 0 ?
 (@exp_list[@level+1] - @exp).to_s : "-------"
 end
 #--------------------------------------------------------------------------
 # ● 更新自动状态
 #     old_armor : 卸下防具
 #     new_armor : 装备防具
 #--------------------------------------------------------------------------
 def update_auto_state(old_armor, new_armor)
 # 强制解除卸下防具的自动状态
 if old_armor != nil and old_armor.auto_state_id != 0
 remove_state(old_armor.auto_state_id, true)
 end
 # 强制附加装备防具的自动状态
 if new_armor != nil and new_armor.auto_state_id != 0
 add_state(new_armor.auto_state_id, true)
 end
 end
 #--------------------------------------------------------------------------
 # ● 装备固定判定
 #     equip_type : 装备类型
 #--------------------------------------------------------------------------
 def equip_fix?(equip_type)
 case equip_type
 when 0  # 武器
 return $data_actors[@actor_id].weapon_fix
 when 1  # 盾
 return $data_actors[@actor_id].armor1_fix
 when 2  # 头
 return $data_actors[@actor_id].armor2_fix
 when 3  # 身体
 return $data_actors[@actor_id].armor3_fix
 when 4  # 装饰品
 return $data_actors[@actor_id].armor4_fix
 end
 return false
 end
 #--------------------------------------------------------------------------
 # ● 变更装备
 #     equip_type : 装备类型
 #     id    : 武器 or 防具 ID  (0 为解除装备)
 #--------------------------------------------------------------------------
 def equip(equip_type, id)
 case equip_type
 when 0  # 武器
 if id == 0 or $game_party.weapon_number(id) > 0
 $game_party.gain_weapon(@weapon_id, 1)
 @weapon_id = id
 $game_party.lose_weapon(id, 1)
 end
 when 1  # 盾
 if id == 0 or $game_party.armor_number(id) > 0
 update_auto_state($data_armors[@armor1_id], $data_armors[id])
 $game_party.gain_armor(@armor1_id, 1)
 @armor1_id = id
 $game_party.lose_armor(id, 1)
 end
 when 2  # 头
 if id == 0 or $game_party.armor_number(id) > 0
 update_auto_state($data_armors[@armor2_id], $data_armors[id])
 $game_party.gain_armor(@armor2_id, 1)
 @armor2_id = id
 $game_party.lose_armor(id, 1)
 end
 when 3  # 身体
 if id == 0 or $game_party.armor_number(id) > 0
 update_auto_state($data_armors[@armor3_id], $data_armors[id])
 $game_party.gain_armor(@armor3_id, 1)
 @armor3_id = id
 $game_party.lose_armor(id, 1)
 end
 when 4  # 装饰品
 if id == 0 or $game_party.armor_number(id) > 0
 update_auto_state($data_armors[@armor4_id], $data_armors[id])
 $game_party.gain_armor(@armor4_id, 1)
 @armor4_id = id
 $game_party.lose_armor(id, 1)
 end
 end
 end
 #--------------------------------------------------------------------------
 # ● 可以装备判定
 #     item : 物品
 #--------------------------------------------------------------------------
 def equippable?(item)
 # 武器的情况
 if item.is_a?(RPG::Weapon)
 # 包含当前的职业可以装备武器的场合
 if $data_classes[@class_id].weapon_set.include?(item.id)
 return true
 end
 end
 # 防具的情况
 if item.is_a?(RPG::Armor)
 # 不包含当前的职业可以装备武器的场合
 if $data_classes[@class_id].armor_set.include?(item.id)
 return true
 end
 end
 return false
 end
 #--------------------------------------------------------------------------
 # ● 更改 EXP
 #     exp : 新的 EXP
 #--------------------------------------------------------------------------
 def exp=(exp)
 @exp = [[exp, 9999999].min, 0].max
 # 升级
 while @exp >= @exp_list[@level+1] and @exp_list[@level+1] > 0
 @level += 1
 @qianli += 5
 # 学会特技
 for j in $data_classes[@class_id].learnings
 if j.level == @level
 learn_skill(j.skill_id)
 end
 end
 end
 # 降级
 while @exp < @exp_list[@level]
 @level -= 1
 @qianli -= 5
 @qianli = [@qianli , 0].max
 end
 # 修正当前的 HP 与 SP 超过最大值
 @hp = [@hp, self.maxhp].min
 @sp = [@sp, self.maxsp].min
 end
 #--------------------------------------------------------------------------
 # ● 更改水品
 #     level : 新的等级
 #--------------------------------------------------------------------------
 def level=(level)
 # 检查上下限
 level = [[level, $data_actors[@actor_id].final_level].min, 1].max
 # 更改 EXP
 self.exp = @exp_list[level]
 end
 #--------------------------------------------------------------------------
 # ● 觉悟特技
 #     skill_id : 特技 ID
 #--------------------------------------------------------------------------
 def learn_skill(skill_id)
 if skill_id > 0 and not skill_learn?(skill_id)
 @skills.push(skill_id)
 @skills.sort!
 end
 end
 #--------------------------------------------------------------------------
 # ● 遗忘特技
 #     skill_id : 特技 ID
 #--------------------------------------------------------------------------
 def forget_skill(skill_id)
 @skills.delete(skill_id)
 end
 #--------------------------------------------------------------------------
 # ● 已经学会的特技判定
 #     skill_id : 特技 ID
 #--------------------------------------------------------------------------
 def skill_learn?(skill_id)
 return @skills.include?(skill_id)
 end
 #--------------------------------------------------------------------------
 # ● 可以使用特技判定
 #     skill_id : 特技 ID
 #--------------------------------------------------------------------------
 def skill_can_use?(skill_id)
 if not skill_learn?(skill_id)
 return false
 end
 return super
 end
 
 #--------------------------------------------------------------------------
 # ● 更改职业 ID
 #     class_id : 新的职业 ID
 #--------------------------------------------------------------------------
 def class_id=(class_id)
 if $data_classes[class_id] != nil
 @class_id = class_id
 # 避开无法装备的物品
 unless equippable?($data_weapons[@weapon_id])
 equip(0, 0)
 end
 unless equippable?($data_armors[@armor1_id])
 equip(1, 0)
 end
 unless equippable?($data_armors[@armor2_id])
 equip(2, 0)
 end
 unless equippable?($data_armors[@armor3_id])
 equip(3, 0)
 end
 unless equippable?($data_armors[@armor4_id])
 equip(4, 0)
 end
 end
 end
 #--------------------------------------------------------------------------
 # ● 更改图形
 #     character_name : 新的角色 文件名
 #     character_hue  : 新的角色 色相
 #     battler_name   : 新的战斗者 文件名
 #     battler_hue    : 新的战斗者 色相
 #--------------------------------------------------------------------------
 def set_graphic(character_name, character_hue, battler_name, battler_hue)
 @character_name = character_name
 @character_hue = character_hue
 @battler_name = battler_name
 @battler_hue = battler_hue
 end
 #--------------------------------------------------------------------------
 #--------------------------------------------------------------------------
 # ● 取得战斗画面的 X 坐标
 #--------------------------------------------------------------------------
 def screen_x
 $kds_x = 260
 if self.id < 20
 case self.ac_id
 when 0
 return 560 + $kds_x
 when 1
 return 620 + $kds_x
 when 2
 return 680 + $kds_x
 when 3
 return 740 + $kds_x
 end
 else
 case $game_actors[self.zhuren].ac_id
 when 0
 return 500 + $kds_x
 when 1
 return 560 + $kds_x
 when 2
 return 620 + $kds_x
 when 3
 return 680 + $kds_x
 end
 end
 end
 
 def s_x
 if @s_x == nil
 @s_x = screen_x
 return screen_x
 else
 return @s_x
 end
 end
 def s_x=(s_x)
 @s_x = s_x
 return @s_x
 end
 #--------------------------------------------------------------------------
 # ● 取得战斗画面的 Y 坐标
 #--------------------------------------------------------------------------
 def screen_y
 $kds_y = 70
 if self.id < 20
 case self.ac_id
 when 0
 return 430 + $kds_y
 when 1
 return 390 + $kds_y
 when 2
 return 350 + $kds_y
 when 3
 return 310 + $kds_y
 end
 else
 case $game_actors[self.zhuren].ac_id
 when 0
 return 370 + $kds_y
 when 1
 return 330 + $kds_y
 when 2
 return 290 + $kds_y
 when 3
 return 250 + $kds_y
 end
 end
 end
 def s_y
 if @s_y == nil
 @s_y = screen_y
 return screen_y
 else
 return @s_y
 end
 end
 def s_y=(s_y)
 @s_y = s_y
 return @s_y
 end
 #--------------------------------------------------------------------------
 # ● 取得战斗画面的 Z 坐标
 #--------------------------------------------------------------------------
 def screen_z
 # 返回计算后的队伍 Z 坐标的排列顺序
 if self.index != nil
 return 4 - self.index
 else
 return 0
 end
 end
 def s_z
 if @s_z == nil
 @s_z = screen_z
 return screen_z
 else
 return @s_z
 end
 end
 def s_z=(s_z)
 @s_z = s_z
 return @s_z
 end
 end
 
 
 | 
 |