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

Project1

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

[已经解决] 4人制45度战斗脚本 修改问题

 关闭 [复制链接]

Lv1.梦旅人

梦石
0
星屑
170
在线时间
2 小时
注册时间
2011-3-2
帖子
2
跳转到指定楼层
1
发表于 2011-4-4 23:44:44 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
# ————————————————————————————————————

# 本脚本来自www.66rpg.com,转载请保留此信息

# ————————————————————————————————————



#==============================================================================

# ■ Game_Actor

#------------------------------------------------------------------------------

#  处理角色的类。本类在 Game_Actors 类 ($game_actors)

# 的内部使用、Game_Party 类请参考 ($game_party) 。

#==============================================================================



class Game_Actor < Game_Battler

  #--------------------------------------------------------------------------

  # ● 取得战斗画面的 X 坐标

  #--------------------------------------------------------------------------

  def screen_x

  case self.index

  when 0

    return 350

  when 1

    return 430

  when 2

    return 510

  when 3

    return 580

  else

    return 600



   end

end

  #--------------------------------------------------------------------------

  # ● 取得战斗画面的 Y 坐标

  #--------------------------------------------------------------------------

  def screen_y

  case self.index

  when 0

    return 430

  when 1

    return 395

  when 2

    return 360

  when 3

    return 325

  else

    return 1000

   end

end

  #--------------------------------------------------------------------------

  # ● 取得战斗画面的 Z 坐标

  #--------------------------------------------------------------------------

  def screen_z

  case self.index

  when 0

    return 10

  when 1

    return 9

  when 2

    return 8

  when 3

    return 7

  else

    return 0

    end

  end

end



  

#==============================================================================

# ■ Window_Base

#------------------------------------------------------------------------------

#  游戏中全部窗口的超级类。

#==============================================================================



class Window_Base < Window

  #--------------------------------------------------------------------------

  # ● 描绘 HP

  #     actor : 角色

  #     x     : 描画目标 X 坐标

  #     y     : 描画目标 Y 坐标

  #     width : 描画目标的宽

  #--------------------------------------------------------------------------

  def draw_actor_hp1(actor, x, y, width = 100)

    # 描绘字符串 "HP"

    self.contents.font.color = system_color

    self.contents.draw_text(x, y, 24, 24, $data_system.words.hp)

    # 计算描绘 MaxHP 所需的空间

    if width - 24 >= 32

      hp_x = x + 32# + width - 24

    end

    # 描绘 HP

    self.contents.font.color = actor.hp == 0 ? knockout_color :

      actor.hp <= actor.maxhp / 4 ? crisis_color : normal_color

    self.contents.draw_text(hp_x, y, 32, 24, actor.hp.to_s, 2)

  end

  #--------------------------------------------------------------------------

  # ● 描绘 SP

  #     actor : 角色

  #     x     : 描画目标 X 坐标

  #     y     : 描画目标 Y 坐标

  #     width : 描画目标的宽

  #--------------------------------------------------------------------------

  def draw_actor_sp1(actor, x, y, width = 100)

    # 描绘字符串 "SP"

    self.contents.font.color = system_color

    self.contents.draw_text(x, y, 24, 24, $data_system.words.sp)

    # 计算描绘 MaxSP 所需的空间

    if width - 24 >= 32

      sp_x = x + 32# + width - 24

    end

    # 描绘 SP

    self.contents.font.color = actor.sp == 0 ? knockout_color :

      actor.sp <= actor.maxsp / 4 ? crisis_color : normal_color

    self.contents.draw_text(sp_x, y, 32, 24, actor.sp.to_s, 2)

  end

end

  









#==============================================================================

# ■ Window_BattleStatus

#------------------------------------------------------------------------------

#  显示战斗画面同伴状态的窗口。

#==============================================================================



class Window_BattleStatus < Window_Base

  #--------------------------------------------------------------------------

  # ● 初始化对像

  #--------------------------------------------------------------------------

#$data_system_level_up_me = "Audio/ME/升级音乐"

  def initialize

    super(0, 0, 640, 480)

    self.contents = Bitmap.new(width - 10, height - 32)

    self.opacity = 0

    @level_up_flags = [false, false, false, false]

    refresh

  end

  #--------------------------------------------------------------------------

  # ● 释放

  #--------------------------------------------------------------------------

  def dispose

    super

  end

  #--------------------------------------------------------------------------

  # ● 设置升级标志

  #     actor_index : 角色索引

  #--------------------------------------------------------------------------

  def level_up(actor_index)

    @level_up_flags[actor_index] = true

  end

  #--------------------------------------------------------------------------

  # ● 刷新

  #--------------------------------------------------------------------------

  def refresh

    self.contents.clear

    @item_max = $game_party.actors.size

     for i in 0...$game_party.actors.size

      actor = $game_party.actors

      case i

        when 0

         x = 310

         y = 390

        when 1

         x = 390

         y = 340

        when 2

         x = 480

         y = 300

        when 3

         x = 550

         y = 270

       end

      if @level_up_flags

        self.contents.font.color = normal_color

        self.contents.draw_text(x, y, 80, 24, "LEVEL UP!")

        Audio.me_stop

#        Audio.me_play($data_system_level_up_me)

      else

      draw_actor_hp1(actor, x-15, y-15, 80)

      draw_actor_sp1(actor, x-15, y+5, 80)

     end

    end

  end



  #--------------------------------------------------------------------------

  # ● 刷新画面

  #--------------------------------------------------------------------------

  def update

    super

    # 主界面的不透明度下降

    if $game_temp.battle_main_phase

      self.contents_opacity -= 50 if self.contents_opacity > 1

    else

      self.contents_opacity += 50 if self.contents_opacity < 255

    end

  end

end











#==============================================================================

# ■ Window_BattleStatus

#==============================================================================

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

      case i

        when 0

         x = 310

         y = 390

        when 1

         x = 390

         y = 340

        when 2

         x = 480

         y = 300

        when 3

         x = 550

         y = 270

       end

      draw_actor_hp_meter(actor, x, y, 50)

      draw_actor_sp_meter(actor, x, y + 8, 50)

    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.font.color = system_color

    self.contents.fill_rect(x-1, y+27, width+2,6, Color.new(0, 0, 0, 25))

    w = width * actor.hp / actor.maxhp

    self.contents.fill_rect(x, y+28, w,1, Color.new(255, 96, 96, 255))

    self.contents.fill_rect(x, y+29, w,1, Color.new(255, 0, 0, 255))

    self.contents.fill_rect(x, y+30, w,1, Color.new(128, 0, 0, 255))

    self.contents.fill_rect(x, y+31, w,1, Color.new(0, 0, 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.font.color = system_color

    self.contents.fill_rect(x-1, y+27, width+2,6, Color.new(0, 0, 0, 255))

    w = width * actor.sp / actor.maxsp

    self.contents.fill_rect(x, y+28, w,1, Color.new(128, 255, 255, 255))

    self.contents.fill_rect(x, y+29, w,1, Color.new(0, 255, 255, 255))

    self.contents.fill_rect(x, y+30, w,1, Color.new(0, 192, 192, 255))

    self.contents.fill_rect(x, y+31, w,1, Color.new(0, 128, 128, 255))

  end

end

此脚本在哪里能够修改文字大小或者直接删除文字?

Lv2.观梦者

吉爾伽美什

梦石
0
星屑
317
在线时间
194 小时
注册时间
2011-1-7
帖子
565
2
发表于 2011-4-4 23:49:11 | 只看该作者
self.contents.font.size = 字体大小

那里可以改字体的大小

回复

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-29 07:12

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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