Project1
标题:
装备栏扩展用法
[打印本页]
作者:
flzt5354
时间:
2009-8-28 13:11
标题:
装备栏扩展用法
本帖最后由 flzt5354 于 2009-9-1 18:09 编辑
http://rpg.blue/web/htm/news308.htm
地址
def refresh
self.contents.clear
@data = []
@data.push($data_weapons[@actor.weapon_id])
@data.push($data_armors[@actor.armor1_id])
@data.push($data_armors[@actor.armor2_id])
@data.push($data_armors[@actor.armor3_id])
@data.push($data_armors[@actor.armor4_id])
@data.push($data_armors[@actor.armor5_id])
@data.push($data_armors[@actor.armor6_id])
@item_max = @data.size
self.contents.font.color = system_color
self.contents.draw_text(4, 32 * 0, 92, 32, $data_system.words.weapon)
self.contents.draw_text(4, 32 * 1, 92, 32, $data_system.words.armor1)
self.contents.draw_text(4, 32 * 2, 92, 32, $data_system.words.armor2)
self.contents.draw_text(4, 32 * 3, 92, 32, $data_system.words.armor3)
self.contents.draw_text(4, 32 * 4, 92, 32, $data_system.words.armor4)
self.contents.draw_text(4, 32 * 5, 92, 32, "项链")
self.contents.draw_text(4, 32 * 6, 92, 32, "鞋")
draw_item_name(@data[0], 92, 32 * 0)
draw_item_name(@data[1], 92, 32 * 1)
draw_item_name(@data[2], 92, 32 * 2)
draw_item_name(@data[3], 92, 32 * 3)
draw_item_name(@data[4], 92, 32 * 4)
draw_item_name(@data[5], 92, 32 * 5)
draw_item_name(@data[6], 92, 32 * 6)
复制代码
这是范例工程的其中一段脚本
在防具当中
皮鞋,5
灵巧项链,4
这个。。实在不能理解是怎样分的
作者:
夏季冰川
时间:
2009-8-28 13:32
逗号后面是5代表这类装备属于鞋子
逗号后面是4代表这类装备属于项链
作者:
flzt5354
时间:
2009-8-28 14:10
也许是我没问清楚。。
我想问的是!!!
哪里定义,5是鞋子
,4是项链
作者:
悠悠炸弹
时间:
2009-8-28 14:22
脚本盲我估计是这里.......
module RPG
class Armor
def name
name = @name.split(/,/)[0]
return name != nil ? name : ''
end
def kind
kind = @name.split(/,/)[1]
return kind != nil ? kind.to_i : @kind
end
end
end
复制代码
class Game_Actor < Game_Battler
attr_reader :armor5_id # 项链 ID
attr_reader :armor6_id # 鞋 ID
#--------------------------------------------------------------------------
# ● 设置
# actor_id : 角色 ID
#--------------------------------------------------------------------------
alias old_setup setup
def setup(actor_id)
old_setup(actor_id)
@armor5_id = 0
@armor6_id = 0
update_auto_state(nil, $data_armors[@armor5_id])
update_auto_state(nil, $data_armors[@armor6_id])
end
复制代码
self.contents.draw_text(4, 32 * 5, 92, 32, "项链")
self.contents.draw_text(4, 32 * 6, 92, 32, "鞋")
复制代码
作者:
flzt5354
时间:
2009-8-28 14:36
额。。虽然你指出来
但是我实在是看不出哪里定义了。。
。。应该说看不太懂
作者:
ONEWateR
时间:
2009-8-28 15:13
kind ~
def kind
kind = @name.split(/,/)[1]
return kind != nil ? kind.to_i : @kind
end
复制代码
通过读取装备名称识别种类~
作者:
flzt5354
时间:
2009-8-28 15:17
kind = @name.split(/,/)[1]
return kind != nil ? kind.to_i : @kind
------
能不能解析下(/,/)[1]是什么意思
nil ?这个也不懂
! 不知道有什么用
作者:
ONEWateR
时间:
2009-8-28 15:26
咱只根据个人经验说明,如有错误,请pia之
@name.split(/,/)[1] 是指读取","的后一字串符,也就是分割数据,将其当成另一字串符使用~
例如
a = "铜件,5"
p a.split(/,/)[1]
结果为 "5"
return kind != nil ? kind.to_i : @kind
咱将其简单化吧~
if kind != nil
return kind.to_i # 将字串符转化成变量
else
return @kind # 估计@kind 的初始值为0吧 - -
end
嘛。大概是这样~
作者:
flzt5354
时间:
2009-8-28 19:33
看来看去。。
attr_reader :weapon_id # 武器 ID
attr_reader :armor1_id # 盾 ID
attr_reader :armor2_id # 头防具 ID
attr_reader :armor3_id # 身体体防具 ID
attr_reader :armor4_id # 装饰品 ID
还是搞不懂,4为什么=项链
,5=鞋子
这个无论号数是接着算(,5,6)
还是从新算(,1,2)
.。另外我实在是找不出哪里定义a = "铜件,5"
当然。是类似的地方!
作者:
ONEWateR
时间:
2009-8-28 20:36
具体查看F1帮助~
以下来自F1帮助文件 ><
kind
种类(0:盾,1:头部防具,2:身体防具,3:装饰品)。
作者:
天使喝可乐
时间:
2009-9-1 16:09
定义时要改N多地方的
LZ可以参考这
http://rpg.blue/viewthread.php?tid=122129
这是我少改了点
我加了4个装备 正确代码看底楼我认可过的- -
作者:
flzt5354
时间:
2009-9-1 18:07
这个问题我已经解决了
谢谢了
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1