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

Project1

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

[已经解决] 战斗选项时显示对应人物图像

[复制链接]

Lv4.逐梦者

梦石
10
星屑
5768
在线时间
1851 小时
注册时间
2013-2-14
帖子
395

开拓者

跳转到指定楼层
1
发表于 2014-5-27 10:56:36 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
问题是 我想在选项时,在右下角显示对应的角色半身像,我已经把战斗选项给固定在了右下角。

我是在默认系统上改的,改动如下,可效果不好。有谁能教下我吗?

RUBY 代码复制
  1. #==============================================================================
  2. # ■ Window_BattleStatus
  3. #------------------------------------------------------------------------------
  4. #  显示战斗画面同伴状态的窗口。
  5. #==============================================================================
  6.  
  7. class Window_BattleStatus < Window_Base
  8.   #--------------------------------------------------------------------------
  9.   # ● 初始化对像
  10.   #--------------------------------------------------------------------------
  11.   def initialize
  12.     super(0, 320, 640, 160)
  13.     self.opacity = 0  
  14.     self.contents = Bitmap.new(width - 32, height - 32)
  15.     @level_up_flags = [false, false, false, false]
  16.     refresh
  17.   end
  18.   #--------------------------------------------------------------------------
  19.   # ● 释放
  20.   #--------------------------------------------------------------------------
  21.   def dispose
  22.     super
  23.   end
  24.   #--------------------------------------------------------------------------
  25.   # ● 设置升级标志
  26.   #     actor_index : 角色索引
  27.   #--------------------------------------------------------------------------
  28.   def level_up(actor_index)
  29.     @level_up_flags[actor_index] = true
  30.   end
  31.   #--------------------------------------------------------------------------
  32.   # ● 刷新
  33.   #--------------------------------------------------------------------------
  34.   def refresh
  35.     self.contents.clear
  36.     @item_max = $game_party.actors.size
  37.     for i in 0...$game_party.actors.size
  38. lihui = Sprite.new # 新生成一个 Sprite 类的实例
  39. lihui.bitmap = Bitmap.new("Graphics/Pictures/"+i.to_s) # 是读取文件夹中所含的图片文件
  40. lihui.x = 500 #设置x坐标
  41. lihui.y = 200 #设置y坐标
  42.       actor = $game_party.actors[i]
  43.       actor_x = i * 160 + 4
  44.       draw_actor_name(actor, actor_x, 0)
  45.       draw_actor_hp(actor, actor_x, 32, 120)
  46.       draw_actor_sp(actor, actor_x, 64, 120)
  47.       if @level_up_flags[i]
  48.         self.contents.font.color = normal_color
  49.         self.contents.draw_text(actor_x, 96, 120, 32, "LEVEL UP!")
  50.       else
  51.         draw_actor_state(actor, actor_x, 96)
  52.       end
  53.     end
  54.   end
  55.   #--------------------------------------------------------------------------
  56.   # ● 刷新画面
  57.   #--------------------------------------------------------------------------
  58.   def update
  59.     super
  60.     # 主界面的不透明度下降
  61.     if $game_temp.battle_main_phase
  62.       self.contents_opacity -= 4 if self.contents_opacity > 191
  63.     else
  64.       self.contents_opacity += 4 if self.contents_opacity < 255
  65. Graphics.update#新加
  66.     end
  67.   end
  68. end


然后现在情况是选项时没显示图片。


然后全部选择好后,图片一口气全出来了。


请大大们指点。。

点评

好像是你的精灵没有释放。  发表于 2014-6-4 10:09

Lv4.逐梦者

梦石
10
星屑
5768
在线时间
1851 小时
注册时间
2013-2-14
帖子
395

开拓者

2
 楼主| 发表于 2014-5-27 12:34:38 | 只看该作者
1064593631 发表于 2014-5-27 12:18
能把你的战斗菜单脚本分享一个吗     第一张图片战斗菜单

这是默认系统。。我只是插入了一张图片和移动了选项位置而已。
回复 支持 反对

使用道具 举报

Lv3.寻梦者 (版主)

…あたしは天使なんかじゃないわ

梦石
0
星屑
2208
在线时间
4033 小时
注册时间
2010-10-4
帖子
10779

开拓者贵宾

3
发表于 2014-5-27 13:09:19 | 只看该作者
我不玩XP,下面只是一些小建议
1. 选项菜单窗口应该不是 Window_BattleStatus 。请仔细找找这个窗口
2. 在选项菜单窗口生成的时候获取当前角色并创建精灵,设定位图。在选项菜单窗口释放的时候释放位图和精灵。
不要每一次 refresh 都创建一个精灵并显示图片

点评

谢谢,果然还是好麻烦的样子。。我还是先学好脚本再慢慢改吧,,  发表于 2014-5-29 10:50

评分

参与人数 1星屑 +90 收起 理由
myownroc + 90 塞糖

查看全部评分

回复 支持 反对

使用道具 举报

Lv1.梦旅人

夜天の主

梦石
0
星屑
124
在线时间
1552 小时
注册时间
2008-4-13
帖子
2347

开拓者第4届短篇游戏比赛亚军

4
发表于 2014-5-28 04:04:51 | 只看该作者
LZ在刷新里写的循环就是一口气显示所有图像的
只依靠战斗状态窗口的话好像没法直接获取当前行动的角色吧?
建议直接重新定义一个窗口类然后在Scene_Battle里调用,判定当前行动角色可以试试用Scene_Battle 3里的@active_battler
P.S. 其实直接把立绘铺开了摆在状态窗口里不好么?

点评

嗯,不知道该插在那段。。算了,暂时就用状态栏显示立绘代替吧。。谢谢回答,等我学好脚本再慢慢改吧。。  发表于 2014-5-29 10:51

评分

参与人数 1星屑 +90 收起 理由
myownroc + 90 我很赞同

查看全部评分

回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
10
星屑
5768
在线时间
1851 小时
注册时间
2013-2-14
帖子
395

开拓者

5
 楼主| 发表于 2014-5-29 11:05:12 | 只看该作者
1064593631 发表于 2014-5-28 20:54
我就是想移动选项位置 ,我不会。  把你脚本发个吧

那啥,为什么要在我的提问贴里提问呢?

如果只是修改选项位置的话可以在Scene_Battle 3里的● 设置角色指令窗口里改。。

    # 设置角色指令窗口的位置
    @actor_command_window.x =@actor_index * 160#这个是X坐标,直接指点位置就好
再加一句Y坐标位置
    @actor_command_window.y = ??#数值直接写,如果不加也可以进Scene_Battle 1里改。。
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-25 00:44

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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