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

Project1

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

[已经解决] 战斗敌人名字

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
105 小时
注册时间
2010-6-20
帖子
122
跳转到指定楼层
1
发表于 2010-6-29 21:03:27 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
我用了这个代码在默认的战斗侧过,攻击的时候敌人名字是消失了。攻击完敌人名字恢复了。用在关重七那宠物脚本里头怎么不行了。攻击名字是会消失,消失后就不在显示出来.........帮我修改一下
  1. class Spriteset_Battle
  2.   #--------------------------------------------------------------------------
  3.   # ● 初始化变量
  4.   #--------------------------------------------------------------------------
  5.   def initialize
  6.     # 生成显示端口
  7.     @viewport1 = Viewport.new(0, 0, 640, 320)
  8.     @viewport2 = Viewport.new(0, 0, 640, 480)
  9.     @viewport3 = Viewport.new(0, 0, 640, 480)
  10.     @viewport4 = Viewport.new(0, 0, 640, 480)
  11.     @viewport2.z = 101
  12.     @viewport3.z = 200
  13.     @viewport4.z = 5000
  14.     # 生成战斗背景活动块
  15.     @battleback_sprite = Sprite.new(@viewport1)
  16.     # 生成敌人活动块
  17.     @enemy_sprites = []
  18.     for enemy in $game_troop.enemies.reverse
  19.       @enemy_sprites.push(Sprite_Battler.new(@viewport1, enemy))
  20.     end
  21.     @enemy_names = []
  22.     for enemy in $game_troop.enemies
  23.       @enemy_names.push(Sprite.new(@viewport1))
  24.       @enemy_names[-1].bitmap = Bitmap.new(128,32)
  25.       @enemy_names[-1].bitmap.font.color = Color.new(125,0,125,255)
  26.       @enemy_names[-1].bitmap.draw_text(0,0,128,32,enemy.name)
  27.       @enemy_names[-1].x = enemy.screen_x - 20
  28.       @enemy_names[-1].y = enemy.screen_y - 30
  29.       @enemy_names[-1].z = 999
  30.     end
  31.     # 生成敌人活动块
  32.     @actor_sprites = []
  33.     @actor_sprites.push(Sprite_Battler.new(@viewport2))
  34.     @actor_sprites.push(Sprite_Battler.new(@viewport2))
  35.     @actor_sprites.push(Sprite_Battler.new(@viewport2))
  36.     @actor_sprites.push(Sprite_Battler.new(@viewport2))
  37.     # 生成天候
  38.     @weather = RPG::Weather.new(@viewport1)
  39.     # 生成图片活动块
  40.     @picture_sprites = []
  41.     for i in 51..100
  42.       @picture_sprites.push(Sprite_Picture.new(@viewport3,
  43.         $game_screen.pictures[i]))
  44.     end
  45.     # 生成计时器块
  46.     @timer_sprite = Sprite_Timer.new
  47.     # 刷新画面
  48.     update
  49.   end
  50.   def hide_name(i)
  51.     @enemy_names[i].opacity = 0 if i != nil
  52.   end
  53.   def appear_name(i)  #貌似翻了应该是name appear
  54.     @enemy_names[i].opacity = 255 if i != nil
  55.   end
  56. end
  57. class Game_Enemy
  58.   attr_reader  :member_index
  59. end
  60. class Scene_Battle
  61.   alias u update_phase4_step3
  62.   def update_phase4_step3
  63.     if @active_battler.is_a?(Game_Enemy)

  64.       @spriteset.hide_name(@active_battler.member_index)
  65.     end
  66.     u
  67.   end
  68.   alias u4 update_phase4_step4
  69.   def update_phase4_step4
  70.     for i in @target_battlers
  71.       if i.is_a?(Game_Enemy)
  72.         @spriteset.hide_name(i.member_index)
  73.       end
  74.     end
  75.     u4
  76.   end
  77.   alias up update
  78.   def update
  79.     if @wait_count == 1
  80.       @spriteset.appear_name(@active_battler.member_index) if @active_battler.is_a?(Game_Enemy)
  81.       for i in @target_battlers
  82.         @spriteset.appear_name(i.member_index) if i.is_a?(Game_Enemy)
  83.       end
  84.     end
  85.     up
  86.   end
  87. end
复制代码
喵~~~~

Lv1.梦旅人

梦石
0
星屑
61
在线时间
24 小时
注册时间
2008-8-5
帖子
1924
2
发表于 2010-7-4 01:03:36 | 只看该作者
能否上传工程,浪费你三分钟,省掉回答的人十分钟
回复 支持 反对

使用道具 举报

Lv3.寻梦者

宛若

梦石
0
星屑
1568
在线时间
526 小时
注册时间
2007-8-19
帖子
1493

极短24参与开拓者

3
发表于 2010-7-4 01:06:16 | 只看该作者
本帖最后由 逸豫 于 2010-7-4 01:15 编辑

这个脚本好眼熟的样子……

貌似是我写的……给出一下此脚本的工作流程

在Spriteset_Battle生成显示名称的精灵的数组
然后定义方法hide_name appear_name
具体作用我相信方法的名称已经泄漏了……
然后在Game_Enemy添加方法member_index返回敌人的队伍中id
然后在显示动画的方法中添加,如果显示动画的是敌人,则隐藏名称
在update中判定如果动画还剩1帧放完的话(为什么是1帧不解释……),就显示对方象名称和活动战斗着名称,当然,是在敌人的情况下

从隐藏后不显示可以看出应该是update方法出了问题,请查看外挂脚本的Scene_Battler的update方法

评分

参与人数 1星屑 +500 收起 理由
「旅」 + 500 认可答案

查看全部评分

[url=http://rpg.blue/thread-219730-1-1.html]http://unhero.sinaapp.com/wi.php[/url]
[color=Red]如你所见这是个死坑,没错这就是打我的脸用的[/color]
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-12-26 02:42

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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