Project1

标题: 关于脚本,换装系统,数据采集遇到问题 [打印本页]

作者: swbxhlh    时间: 2012-6-18 17:42
标题: 关于脚本,换装系统,数据采集遇到问题
本帖最后由 swbxhlh 于 2012-6-19 19:33 编辑

最近看到很多人问到了关于角色换装要在行走图上显示的问题,我自己对这个也甚感兴趣。
但在主站搜索了以后我发现似乎还没有人发布过关于这个问题的脚本。
所以我决定自己尝试编写。
在通过脚本搜索以后,我找到了一些相关的语句。


  1. Game_Actor.set_graphic(character_name, character_index, face_name, face_index)
复制代码
这一句应该就是更改角色行走图和头像的代码character_name, character_index是行走图face_name, face_index是脸图
我的思路是这样的
先是把脸图和行走图改成这个形式:

在更换装备时候运行这个脚本:
1)读取角色ID
2)读取改角色躯干防具的种类ID(这一步搞不定)(不知道防具种类的ID是从零开始还是从一开始,这里假设为1开始)定义为X
3)然后就是把X带入face_index和character_index(这两个数字分别代表了两张素材图上的8个分区,从0~7,以初始默认为0)
4)更换角色图像
  1. Game_Actor.set_graphic(character_name, X, face_name,X)
复制代码
目前我只能搞定第1步。。。。希望大家集思广益可以一起完成这个脚本。

目前进度:
  1. class Game_Actor < Game_Battler
  2.   #--------------------------------------------------------------------------
  3.   # ● 定义实例变量
  4.   #--------------------------------------------------------------------------
  5.   attr_reader   :character_name           # 行走图文件名
  6.   attr_reader   :character_index          # 行走图索引
  7.   attr_reader   :face_name                # 肖像文件名
  8.   attr_reader   :face_index               # 肖像索引
  9.   #--------------------------------------------------------------------------
  10.   # ● 初始化对象
  11.   #--------------------------------------------------------------------------
  12.   def initialize(actor_id)
  13.     super()
  14.     setup(actor_id)
  15.     @last_skill = Game_BaseItem.new
  16.   end
  17.   def actor
  18.     $data_actors[@actor_id]
  19.   end
  20.   #--------------------------------------------------------------------------
  21.   # ● 初始化图像
  22.   #--------------------------------------------------------------------------
  23.   def init_graphics
  24.     @character_name = actor.character_name
  25.     @character_index = 0 #actor.character_index
  26.     @face_name = actor.face_name
  27.     @face_index = 0 #actor.face_index
  28.   end
  29. end
复制代码
先搞定期末考,两个礼拜再回来dsu_plus_rewardpost_czw
作者: Mic_洛洛    时间: 2012-6-18 23:34
游戏内置纸娃娃脚本么?
听说以前XP那边有人做过,但是后来因为需要处理的素材量太大了!
然后就崩溃了!
话说乃如果足够牛B可以把VA给破了,提取自带的纸娃娃脚本,稍作修改应该有可能实现吧!

现在主流是利用事件更换角色图像把行走图给换了。
都是得做行走图,乃觉得用得着舍易取难写脚本么?

虽然乃把家当都贴了1000经验,但是坦白说这个脚本很可能会夭折。
当然,这只是可能!(乃牛逼,或者有大大乐意接这个活就当我没说过~)
我只是不想看乃顾着写脚本,而不去填坑。。。(毕竟乃不是职业脚本写手)
所以。。。聪明的乃懂的!
(至于乃如何决定,我也不便不干涉!注意,我给乃的是忠告,并非要求命令!
乃有心专研,未尝不可一试的说~)




作者: swbxhlh    时间: 2012-6-19 00:27
Mic_洛洛 发表于 2012-6-18 23:34
游戏内置纸娃娃脚本么?
听说以前XP那边有人做过,但是后来因为需要处理的素材量太大了!
然后就崩溃了!

我不是要纸娃娃模式的。每种装备一张图根本不实际,我的目标就是,做素材的时候就每个订好八个不同的图样(分别是:**奔;内衣;布衣;长袍;皮甲;轻铁甲;重铁甲;斗篷)除了第一种啥都不装备分别对应7种防具种类。换装的时候,通过判定躯干的防具种类给变量赋值(1~7,默认为0),从而换装。我现在的问题是读取装备种类这一条搞不定。
另外,如果每件装备要写一个判定的话,对内存的损耗太大了并且,粗算一下六种主要躯干种类每5级各要三件不同的,以60级为满级再加上20件极品要230多件,写事件不比写脚本轻松多少。
作者: feizhaodan    时间: 2012-6-19 07:56
防具种类是指在用语里生成的?
那个是以1号开始。
之后再角色类内获取防具种类为的话是
  1. equips[3].atype_id
复制代码
equips是角色类内用来获取所有装备的方法,其中3号为身体防具,之后atype_id就是用来获取防具的防具种类的方法。
作者: swbxhlh    时间: 2012-6-19 16:08
feizhaodan 发表于 2012-6-19 07:56
防具种类是指在用语里生成的?
那个是以1号开始。
之后再角色类内获取防具种类为的话是equips是角色类内用 ...

那我如果要把这个数带入到Game_Actor类中的face_index和character_index怎么搞?
作者: swbxhlh    时间: 2012-6-19 16:48
feizhaodan 发表于 2012-6-19 07:56
防具种类是指在用语里生成的?
那个是以1号开始。
之后再角色类内获取防具种类为的话是equips是角色类内用 ...

我该怎么搞定把躯干防具导出指定到某个角色?
作者: 铅笔描绘的思念    时间: 2012-6-20 20:47
http://victorscripts.wordpress.c ... ripts/visual-equip/构思。。在数据库动手脚。。。自动返回更换装备后的行走图名。。在更改为这个。。。
作者: swbxhlh    时间: 2012-6-21 08:24
铅笔描绘的思念 发表于 2012-6-20 20:47
http://victorscripts.wordpress.com/rpg-maker-vx-ace/utility-scripts/visual-equip/构思。。在数据库动 ...

连接挂了
作者: fannaoshaoxiang    时间: 2012-6-21 09:30
我很丑可是我很持久!

知道了 不错~~~

作者: swbxhlh    时间: 2012-6-21 21:25
铅笔描绘的思念 发表于 2012-6-20 20:47
http://victorscripts.wordpress.com/rpg-maker-vx-ace/utility-scripts/visual-equip/构思。。在数据库动 ...

不会啊。。。




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1