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

Project1

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

[已经解决] 第6-10角色战斗画面里如何显示出来?

[复制链接]

Lv3.寻梦者

梦石
0
星屑
1123
在线时间
182 小时
注册时间
2007-2-27
帖子
144
跳转到指定楼层
1
发表于 2018-6-21 11:57:12 | 只看该作者 |只看大图 回帖奖励 |正序浏览 |阅读模式

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

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

x
本帖最后由 fhxy 于 2018-6-21 12:05 编辑

问题1:第6-10角色在战斗画面里如何显示出来?
问题2:第6-10角色在战斗画面的使用特技物品的指令图如何显示出来?
请高手指教一下。
修改Game_Actor类的内容第6-10角色在战斗画面也显示不出来。
  #--------------------------------------------------------------------------
  # ● 取得战斗画面的 X 坐标
  #--------------------------------------------------------------------------
  def screen_x
    case self.index
    when 0
      return 500
    when 1
      return 500
    when 2
      return 500
    when 3
      return 500
    when 4
      return 500
    when 5
      return 430
    when 6
      return 430
    when 7
      return 430
    when 8
      return 430
    when 9
      return 430

    else
      return 640
    end
  end
  #--------------------------------------------------------------------------
  # ● 取得战斗画面的 Y 坐标
  #--------------------------------------------------------------------------
  def screen_y
    case self.index
    when 0
      return 130
    when 1
      return 200
    when 2
      return 270
    when 3
      return 340
    when 4
      return 410
    when 5
      return 130
    when 6
      return 200
    when 7
      return 270
    when 8
      return 340
    when 9
      return 410
    else
      return 1000
    end
  end
  #--------------------------------------------------------------------------
  # ● 取得战斗画面的 Z 坐标
  #--------------------------------------------------------------------------
  def screen_z
    # 返回计算后的队伍 Z 坐标的排列顺序
    case self.index
    when 0
      return 10
    when 1
      return 9
    when 2
      return 8
    when 3
      return 7
    when 4
      return 5
    when 5
      return 4
    when 6
      return 3
    when 7
      return 2
    when 8
      return 1
    when 9
      return 0
    else
      return 0
    end
  end
end。

截图如下:

附上我改的菜单图,可以显示10人状态

Lv3.寻梦者

梦石
0
星屑
1123
在线时间
182 小时
注册时间
2007-2-27
帖子
144
16
 楼主| 发表于 2018-6-21 19:59:37 | 只看该作者
soulsaga 发表于 2018-6-21 19:05
可以判断当前场景就不怕影响到其他了..

可以放弃改虽然有点影响,但不是很大,只是让我觉得不每行之间太松散。
回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
33334
在线时间
10517 小时
注册时间
2009-3-15
帖子
4762
15
发表于 2018-6-21 19:05:02 | 只看该作者
fhxy 发表于 2018-6-21 18:48
看了一下你说的修改行距,影响几个菜单的行距,标题画面,退出游戏画面、主菜单的选择指令,和战斗指令菜 ...

可以判断当前场景就不怕影响到其他了..
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1123
在线时间
182 小时
注册时间
2007-2-27
帖子
144
14
 楼主| 发表于 2018-6-21 18:48:35 | 只看该作者
灯笼菜刀王 发表于 2018-6-21 17:36
想改的话,到Window_Command 里

def draw_item(index, color) 里面的

看了一下你说的修改行距,影响几个菜单的行距,标题画面,退出游戏画面、主菜单的选择指令,和战斗指令菜单,对半对应的光标也得改了
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1123
在线时间
182 小时
注册时间
2007-2-27
帖子
144
13
 楼主| 发表于 2018-6-21 18:14:21 | 只看该作者
灯笼菜刀王 发表于 2018-6-21 17:36
想改的话,到Window_Command 里

def draw_item(index, color) 里面的

听你这么一说涉及的光标行距修改问题太多啦,简直是重做一遍菜单修改了,两个方法都说一下吧。
我看有没有必要改,我看关重七的梦幻西游3是用的战斗图标不过也涉及到修改光标行距
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1123
在线时间
182 小时
注册时间
2007-2-27
帖子
144
12
 楼主| 发表于 2018-6-21 18:08:57 | 只看该作者
本帖最后由 fhxy 于 2018-6-21 18:11 编辑
fhxy 发表于 2018-6-21 17:22
按你的方法修改了宽度,有一点就是能不能修改每条指令的行距?我添加了三条指令指令菜单显得太长了想缩短 ...


听你这么一说涉及的光标行距修改问题太多啦,简直是重做一遍菜单修改了,两个方法都说一下吧。
我看有没有必要改,我看关重七的梦幻西游3是用的战斗图标不过也涉及到修改光标行距
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1123
在线时间
182 小时
注册时间
2007-2-27
帖子
144
11
 楼主| 发表于 2018-6-21 17:51:45 | 只看该作者
灯笼菜刀王 发表于 2018-6-21 17:36
想改的话,到Window_Command 里

def draw_item(index, color) 里面的

光标行距能改不?

点评

=v= 可以,不过我不教你, 因为接下来你会冒出越来越多的问题, 自己想办法搞定吧XD  发表于 2018-6-21 17:56
回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
37957
在线时间
5488 小时
注册时间
2006-11-10
帖子
6555
10
发表于 2018-6-21 17:36:26 | 只看该作者
本帖最后由 灯笼菜刀王 于 2018-6-21 17:37 编辑
fhxy 发表于 2018-6-21 17:22
按你的方法修改了宽度,有一点就是能不能修改每条指令的行距?我添加了三条指令指令菜单显得太长了想缩短 ...


想改的话,到Window_Command 里

def draw_item(index, color) 里面的

rect = Rect.new(4, 32 * index, self.contents.width - 8, 32)

这里就是行距,

不过,改行距容易, 改其他就不容易了,比如光标的位置和移动方式,  

如果没能力处理这些, 那还是别动它为好

觉得窗口太长, 可以用二级窗口或者图片战斗指令脚本, 副作用比较小
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1123
在线时间
182 小时
注册时间
2007-2-27
帖子
144
9
 楼主| 发表于 2018-6-21 17:22:45 | 只看该作者
本帖最后由 fhxy 于 2018-6-21 17:24 编辑
灯笼菜刀王 发表于 2018-6-21 15:08
自己动手。

在改坐标的那个位置,像你摆角色坐标那样,用@actor_index 分歧


按你的方法修改了宽度,有一点就是能不能修改每条指令的行距?我添加了三条指令指令菜单显得太长了想缩短些就像我上面战斗图的状态菜单一样缩小七条指令的行距。
脚本修改如下:

    # 生成角色命令窗口
    s1 = $data_system.words.attack
    s2 = $data_system.words.skill
    s3 = $data_system.words.guard
    s4 = $data_system.words.item
    s5 = "保护"
    s6 = "召唤"
    s7 = "捕捉"
    @actor_command_window = Window_Command.new(70,[s1, s2, s3, s4, s5, s6, s7])
    @actor_command_window.y = 160
    @actor_command_window.back_opacity = 160
    @actor_command_window.active = false
    @actor_command_window.visible = false

点评

可以, 但是估计你目前没办法处理改行距以后的副作用, 因为它是改动"所有选择项的行距" 除非你重新给这个命令写个专属窗口  发表于 2018-6-21 17:32
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1123
在线时间
182 小时
注册时间
2007-2-27
帖子
144
8
 楼主| 发表于 2018-6-21 15:54:18 | 只看该作者
本帖最后由 fhxy 于 2018-6-21 16:00 编辑
灯笼菜刀王 发表于 2018-6-21 15:08
自己动手。

在改坐标的那个位置,像你摆角色坐标那样,用@actor_index 分歧


按照你的思路还真实现了你说的效果,
随便指点一下角色指令窗口在哪里修改?我想把指令窗口修改小一点。
另外你看看我修改的脚本有没有问题。
  #--------------------------------------------------------------------------
  # ● 设置角色指令窗口
  #--------------------------------------------------------------------------
  def phase3_setup_command_window
    # 同伴指令窗口无效化
    @party_command_window.active = false
    @party_command_window.visible = false
    # 角色指令窗口无效化
    @actor_command_window.active = true
    @actor_command_window.visible = true
    # 设置角色指令窗口的位置
   # @actor_command_window.x = @actor_index * 16
#  def @actor_command_window.x
    case @actor_index
#    case @actor_command_window.index
    when 0
      @actor_command_window.x = 500
      @actor_command_window.y = 130
    when 1
      @actor_command_window.x = 500
      @actor_command_window.y = 200
    when 2
      @actor_command_window.x = 500
      @actor_command_window.y = 270
    when 3
      @actor_command_window.x = 500
      @actor_command_window.y = 340
    when 4
      @actor_command_window.x = 500
      @actor_command_window.y = 410
    when 5
      @actor_command_window.x = 430
      @actor_command_window.y = 130
    when 6
      @actor_command_window.x = 430
      @actor_command_window.y = 200
    when 7
      @actor_command_window.x = 430
      @actor_command_window.y = 270
    when 8
      @actor_command_window.x = 430
      @actor_command_window.y = 340
    when 9
      @actor_command_window.x = 430
      @actor_command_window.y = 410
    # 设置索引为 0  我把这个屏蔽了不知道该不该屏蔽
#    @actor_command_window.index = 0
    end
    return

点评

要改窗口大小, 在scene battle1, 引用实例那改 @actor_command_window = Window_Command.new(160, [s1, s2, s3, s4]) 括号里的160就是宽  发表于 2018-6-21 16:06
@actor_command_window.index = 0 这行不要注释掉, 保留着, 它相当于自动把光标停留在"攻击"上,  发表于 2018-6-21 16:05
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-5-22 21:28

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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