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

Project1

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

[已经解决] 把VX的脚本放到VX ACE里报错

[复制链接]

Lv1.梦旅人

梦石
0
星屑
145
在线时间
4 小时
注册时间
2012-6-19
帖子
2
跳转到指定楼层
1
发表于 2012-6-21 09:48:16 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 ttcsxs 于 2012-6-21 09:50 编辑

#========================================================#==============================================================================
module Enemy_HP
  HP_WIDTH    = 60                    # 血条的默认宽度
  SHOW_VALUE = true                  # 是否显示敌人生命值
  SHOW_NAME = true                    # 是否显示敌人名称
  NAME_SIZE = 16                      # 敌人名称字体大小
  NAME_COLOR = 0                      # 敌人名称字体颜色
end
#==============================================================================
# ■ RPG
#==============================================================================
module RPG
  class Enemy
    def hp_width
      return self.read_note('hp_width')
    end
  end
end
#==============================================================================
# ■ Game_Enemy
#==============================================================================
class Game_Enemy < Game_Battler
  #--------------------------------------------------------------------------
  # ○ 血条宽度
  #--------------------------------------------------------------------------
  def hp_width
    return $data_enemies[@enemy_id].hp_width
  end
end
#==============================================================================
# ■ Sprite_Battler
#==============================================================================
class Sprite_Battler < Sprite_Base
  #--------------------------------------------------------------------------
  # ◎ 初始化对象
  #     viewport : 视区
  #     battler  : 战斗者 (Game_Battler)
  #--------------------------------------------------------------------------
  def initialize(viewport, battler = nil)
    super(viewport)
    @battler = battler
    @battler_visible = false
    @effect_type = 0            # 效果种类
    @effect_duration = 0        # 效果剩余时间
    if @battler.is_a?(Game_Enemy)
      width = hp_width + 32
      height = 24 + 32
      x = @battler.screen_x - width/2
      y = @battler.screen_y - height/2
      # 调节名称位置
      if Enemy_HP::SHOW_NAME
        height += Enemy_HP::NAME_SIZE + 2
        y -= Enemy_HP::NAME_SIZE + 2
      end
      # 生成血条窗体
      @enemy_hp_window = Window_Base.new(x, y, width, height)
      @enemy_hp_window.opacity = 0
      @enemy_hp_window.contents_opacity = 0
      @enemy_hp_window.contents = Bitmap.new(width - 32, height - 32)
      @enemy_hp_window.draw_enemy_info(@battler, 0, 0, width - 32)
      # 保存旧血量(控制刷新)
      @old_hp = -1
    end
  end
  #--------------------------------------------------------------------------
  # ◎ 释放
  #--------------------------------------------------------------------------
  def dispose
    if self.bitmap != nil
      self.bitmap.dispose
      @enemy_hp_window.dispose
    end
    super
  end
  #--------------------------------------------------------------------------
  # ◎ 释放敌人活动块
  #--------------------------------------------------------------------------
  def dispose_enemies
    for sprite in @enemy_sprites
      sprite.dispose
      @enemy_hp_window.dispose
    end
  end
  #--------------------------------------------------------------------------
  # ◎ 更新画面
  #--------------------------------------------------------------------------
  def update
    super
    if @battler == nil
      self.bitmap = nil
    else
      @use_sprite = @battler.use_sprite?
      if @use_sprite
        self.x = @battler.screen_x
        self.y = @battler.screen_y
        self.z = @battler.screen_z
        update_battler_bitmap
      end
      setup_new_effect
      update_effect
      # 更新血条窗体
      if @enemy_hp_window != nil and @old_hp != @battler.hp
        @enemy_hp_window.contents.clear
        @enemy_hp_window.draw_enemy_info(@battler, 0, 0, hp_width)
        @old_hp = @battler.hp
      end
    end
  end
  #--------------------------------------------------------------------------
  # ◎ 更新出现效果
  #--------------------------------------------------------------------------
  def update_appear
    self.blend_type = 0
    self.color.set(0, 0, 0, 0)
    self.opacity = (16 - @effect_duration) * 16
    # 对象非敌人时返回
    return unless @battler.is_a?(Game_Enemy)
    @enemy_hp_window.contents_opacity = self.opacity
  end
  #--------------------------------------------------------------------------
  # ◎ 更新消失效果
  #--------------------------------------------------------------------------
  def update_disappear
    self.blend_type = 0
    self.color.set(0, 0, 0, 0)
    self.opacity = 256 - (32 - @effect_duration) * 10
    # 对象非敌人时返回
    return unless @battler.is_a?(Game_Enemy)
    @enemy_hp_window.contents_opacity = self.opacity
  end
  #--------------------------------------------------------------------------
  # ◎ 更新崩溃效果
  #--------------------------------------------------------------------------
  def update_collapse
    self.blend_type = 1
    self.color.set(255, 128, 128, 128)
    self.opacity = 256 - (48 - @effect_duration) * 6
    # 对象非敌人时返回
    return unless @battler.is_a?(Game_Enemy)
    @enemy_hp_window.contents_opacity = self.opacity
  end
  #--------------------------------------------------------------------------
  # ○ 血条宽度
  #--------------------------------------------------------------------------
  def hp_width
    result = Enemy_HP::HP_WIDTH
    if @battler.is_a?(Game_Enemy)
      if @battler.hp_width.to_i == 0
        result = Enemy_HP::HP_WIDTH
      else
        result = @battler.hp_width.to_i
      end
    end
    return result
  end
end
#==============================================================================
# ■ Window_Base
#==============================================================================
class Window_Base < Window
  #--------------------------------------------------------------------------
  # ○ 描绘敌人信息
  #     enemy : 角色
  #     x     : 描绘目标 X 坐标
  #     y     : 描绘目标 Y 坐标
  #     width : 宽
  #--------------------------------------------------------------------------
  def draw_enemy_info(enemy, x, y, width = 64)
    # 为字体阴影内缩1像素
    width -= 1
    # 显示名称
    if Enemy_HP::SHOW_NAME
      self.contents.font.color = text_color(Enemy_HP::NAME_COLOR)
      self.contents.font.size = Enemy_HP::NAME_SIZE
      self.contents.draw_text(x, y, width, WLH, enemy.name, 1)
      self.contents.font.size = Font.default_size
      y += Enemy_HP::NAME_SIZE + 2
    end
    # 描绘血槽
    draw_actor_hp_gauge(enemy, x, y, width)
    # 描绘生命符号
    self.contents.font.color = system_color
    self.contents.draw_text(x, y, 30, WLH, Vocab::hp_a)
    # 描绘具体生命值
    return unless Enemy_HP::SHOW_VALUE
    self.contents.font.color = hp_color(enemy)
    xr = x + width
    self.contents.draw_text(xr - 40, y, 40, WLH, enemy.hp, 2)
  end
end

{:2_270:} 真心不懂脚本

Lv1.梦旅人

梦石
0
星屑
55
在线时间
105 小时
注册时间
2011-5-8
帖子
36
2
发表于 2012-6-21 10:01:47 | 只看该作者
本帖最后由 容嬷嬷 于 2012-6-21 10:13 编辑

貌似VX ACE是不支持VX的部分脚本的吧。

评分

参与人数 1星屑 +100 收起 理由
Luciffer + 100 感谢参与

查看全部评分

回复

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1449
在线时间
1592 小时
注册时间
2010-11-6
帖子
3193

贵宾

3
发表于 2012-6-21 12:54:22 | 只看该作者
VA是不支持VX的脚本的,需要重新自己写。所以说,换一条VX用的脚本吧!

评分

参与人数 1星屑 +100 收起 理由
Luciffer + 100 感谢参与

查看全部评分

走你耶。
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
47
在线时间
412 小时
注册时间
2012-6-1
帖子
1021
4
发表于 2012-6-21 16:08:39 | 只看该作者
本帖最后由 明特·布兰马修 于 2012-6-21 16:09 编辑

没有经过整合的VX脚本放入VA必定报错
不然还分VX\VA区呢?
这里是新人 明特·布兰马修
脚本盲 事件盲 美工盲
还是色盲ORZ
XP\VX略懂VA无助很抱歉
所以问题什么如果答不好就不要提醒我了
短篇7已经放弃,但是坑在继续补上。所以回答和现身次数少之。
有事烧纸或者留言即可。

还有我不是正太啊ORZ
回复

使用道具 举报

Lv2.观梦者

梦石
0
星屑
655
在线时间
159 小时
注册时间
2012-3-24
帖子
104
5
发表于 2012-6-23 14:00:50 | 只看该作者
VX和VA不一样的。
VX是RGSS2,VA是RGSS3。

评分

参与人数 1星屑 +100 收起 理由
Luciffer + 100 感谢参与

查看全部评分

Will they still remember their dreams ...
入坑10年唯一完成处女作《核爆余生》已于2020.10.7在本站发布,欢迎支持和反馈~
戳这里:千呼万唤始出来,实时血条蓝条已在1.2.0中实现!
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
37 小时
注册时间
2012-6-15
帖子
26
6
发表于 2012-6-23 14:38:37 | 只看该作者
不是通用的是不可以使用VX脚本的 因为VX是RGSS2,VA是RGSS3.脚本根本就不同,你试试把ACE的脚本用在VX试试看看行不行..?

评分

参与人数 1星屑 +100 收起 理由
Luciffer + 100 感谢参与

查看全部评分

回复

使用道具 举报

Lv2.观梦者

梦石
0
星屑
680
在线时间
194 小时
注册时间
2012-6-1
帖子
720
7
发表于 2013-2-25 21:22:17 | 只看该作者
貌似有些脚本三个兼容
不过没有这个脚本吧

评分

参与人数 1星屑 -20 收起 理由
怪蜀黍 -20 这挖坟不好吧?请学习版规。

查看全部评分

死亡
回复

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2025-1-2 05:31

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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