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

Project1

 找回密码
 注册会员
搜索
查看: 1972|回复: 6

[RM脚本] Item Acquired(道具获得脚本)

 关闭 [复制链接]

TA还没有解放自身的潜力。

Lv1.梦旅人

鬼隐

梦石
0
星屑
50
在线时间
0 小时
注册时间
2005-10-23
帖子
168
发表于 2006-5-25 01:19:29 | 显示全部楼层 |阅读模式

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

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

x
转载自:rmxp.net
原作者:SiliconHero


EXAMPLES:
Let's use three sample items: Potion, Long Sword, and Chain Mail, all placed in index 1 of the Items, Weapons, and Armors tabs in the database, respectively. When placing the script command Window_ItemAcquired.new(1, 1, 1) in an event, you'll see a popup that says "Acquired Potion!" when someone walks up to that event. Window_ItemAcquired.new(1, 2, 1) yields "Acquired Long Sword!", and Window_ItemAcquired.new(1, 3, 1) will give you "Acquired Chain Mail!" It's also possible to do this for multiple quantities of items. For instance, Window_ItemAcquired.new(5, 1, 1) shows the message "Acquired Potion ?!"

大体使用方法举例:
比如在数据库里设定了三样物品分别为A药物,B长剑,C
在index1里分别设置A为道具,2为武器,3为防具
在调用脚本的时候写command Window_ItemAcquired.new(1, 1, 1),你会看到显示提示得到药品!
Window_ItemAcquired.new(1, 2, 1) 对应提示 "Acquired Long Sword!",Window_ItemAcquired.new(1, 3, 1) 对应提示"Acquired Chain Mail!"也可以设置获得复数物品。
同类型脚本其实很多=_=|||个人认为用66的那个获得物品自动提示就不错Orz……


脚本内容:
#==============================================================================
# ** Window_ItemAcquired
#------------------------------------------------------------------------------
# This window displays a message when the player acquires an item.
# Script version 1.1 written by SiliconHero (09/22/2005)
#
# To use this in an event, use the Script command and type the following:
# Window_ItemAcquired.new(quantity, type, index)
# quantity = the number of items that have been found
# type = the type of item that is found (1 = item, 2 = weapon, 3 = armor)
# index = the item index (see the database)
#
# 1.1 (9/22/2005) - Window fades out when the "C" button is pressed.
# 1.0 (9/18/2005) - First version of the script.
#
# Special thanks to MagicMagor and Huitzilopoctli from RMXP.net for
# ideas and help.
#==============================================================================

class Window_ItemAcquired < Window_Base
def initialize(quantity, type, index)
super(0, 0, 640, 64)
self.contents = Bitmap.new(width - 32, height - 32)
@quantity = quantity
@type = type
@index = index
self.pause = false
self.back_opacity = 127

self.contents.font.color = normal_color
# Process the item type
# type: 1 = item, 2 = weapon, 3 = armor
case @type
when 1
item = $data_items[@index]
when 2
item = $data_weapons[@index]
when 3
item = $data_armors[@index]
end
# Piece together the item acquisition string
# If more than one item is found, add the quantity to the message string
if @quantity > 1 then
text = "Acquired " + item.name + " ?#34; + @quantity.to_s + "!"
else
text = "Acquired " + item.name + "!"
end
# Play Item Acquired SE
Audio.se_play("Audio/SE/056-Right02.ogg", 100, 100)
self.pause = true
# draw the window
while not Input.trigger?(Input::C)
Input.update
Graphics.update
self.contents.clear
self.contents.draw_text(4, 0, self.width - 40, 32, text, 1)
end
# Fade out the window
while self.opacity > 0
self.opacity -= 24
Graphics.update
end
self.dispose
end
end
神出鬼没状态中。。。持续废柴。 重度RP。

TA还没有解放自身的潜力。

Lv1.梦旅人

鬼隐

梦石
0
星屑
50
在线时间
0 小时
注册时间
2005-10-23
帖子
168
 楼主| 发表于 2006-5-25 01:19:29 | 显示全部楼层 |阅读模式

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

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

x
转载自:rmxp.net
原作者:SiliconHero


EXAMPLES:
Let's use three sample items: Potion, Long Sword, and Chain Mail, all placed in index 1 of the Items, Weapons, and Armors tabs in the database, respectively. When placing the script command Window_ItemAcquired.new(1, 1, 1) in an event, you'll see a popup that says "Acquired Potion!" when someone walks up to that event. Window_ItemAcquired.new(1, 2, 1) yields "Acquired Long Sword!", and Window_ItemAcquired.new(1, 3, 1) will give you "Acquired Chain Mail!" It's also possible to do this for multiple quantities of items. For instance, Window_ItemAcquired.new(5, 1, 1) shows the message "Acquired Potion ?!"

大体使用方法举例:
比如在数据库里设定了三样物品分别为A药物,B长剑,C
在index1里分别设置A为道具,2为武器,3为防具
在调用脚本的时候写command Window_ItemAcquired.new(1, 1, 1),你会看到显示提示得到药品!
Window_ItemAcquired.new(1, 2, 1) 对应提示 "Acquired Long Sword!",Window_ItemAcquired.new(1, 3, 1) 对应提示"Acquired Chain Mail!"也可以设置获得复数物品。
同类型脚本其实很多=_=|||个人认为用66的那个获得物品自动提示就不错Orz……


脚本内容:
#==============================================================================
# ** Window_ItemAcquired
#------------------------------------------------------------------------------
# This window displays a message when the player acquires an item.
# Script version 1.1 written by SiliconHero (09/22/2005)
#
# To use this in an event, use the Script command and type the following:
# Window_ItemAcquired.new(quantity, type, index)
# quantity = the number of items that have been found
# type = the type of item that is found (1 = item, 2 = weapon, 3 = armor)
# index = the item index (see the database)
#
# 1.1 (9/22/2005) - Window fades out when the "C" button is pressed.
# 1.0 (9/18/2005) - First version of the script.
#
# Special thanks to MagicMagor and Huitzilopoctli from RMXP.net for
# ideas and help.
#==============================================================================

class Window_ItemAcquired < Window_Base
def initialize(quantity, type, index)
super(0, 0, 640, 64)
self.contents = Bitmap.new(width - 32, height - 32)
@quantity = quantity
@type = type
@index = index
self.pause = false
self.back_opacity = 127

self.contents.font.color = normal_color
# Process the item type
# type: 1 = item, 2 = weapon, 3 = armor
case @type
when 1
item = $data_items[@index]
when 2
item = $data_weapons[@index]
when 3
item = $data_armors[@index]
end
# Piece together the item acquisition string
# If more than one item is found, add the quantity to the message string
if @quantity > 1 then
text = "Acquired " + item.name + " ?#34; + @quantity.to_s + "!"
else
text = "Acquired " + item.name + "!"
end
# Play Item Acquired SE
Audio.se_play("Audio/SE/056-Right02.ogg", 100, 100)
self.pause = true
# draw the window
while not Input.trigger?(Input::C)
Input.update
Graphics.update
self.contents.clear
self.contents.draw_text(4, 0, self.width - 40, 32, text, 1)
end
# Fade out the window
while self.opacity > 0
self.opacity -= 24
Graphics.update
end
self.dispose
end
end
神出鬼没状态中。。。持续废柴。 重度RP。

[动态]受到515217的挑战,被揍得晕头转向。 (打开TA的战斗卡片)

Lv1.梦旅人

梦石
0
星屑
135
在线时间
133 小时
注册时间
2006-1-31
帖子
1210
发表于 2006-5-25 04:18:49 | 显示全部楼层
好像在主站教程里见过一个类似的东东,这个脚本要用的话还要把文字“Acquired”改为“获得了/取得了”。
俺は、あと10年は戦える!
回复 支持 反对

使用道具 举报

TA还没有解放自身的潜力。

Lv1.梦旅人

66RPG站长

梦石
0
星屑
54
在线时间
615 小时
注册时间
2005-10-10
帖子
5734

RMVX自由创作大赛亚军第2届短篇游戏比赛亚军第5届短篇游戏比赛冠军

发表于 2006-5-25 06:57:58 | 显示全部楼层
这个得顶!经典啊!制作黑暗圣剑的时候,被用来做“建立窗口”的参考范例,最后没学会!{/gg}
回复 支持 反对

使用道具 举报

TA还没有解放自身的潜力。

Lv1.梦旅人

有事烧纸

梦石
0
星屑
145
在线时间
508 小时
注册时间
2005-10-22
帖子
6983

贵宾VX城市地图大赛冠军第1届RMTV比赛冠军第1届TG大赛冠军

发表于 2006-5-25 07:02:14 | 显示全部楼层
ms 有点小错误``` {/gg}
神隐中,偶尔诈尸
回复 支持 反对

使用道具 举报

TA还没有解放自身的潜力。

Lv1.梦旅人

NewS-

梦石
0
星屑
50
在线时间
5 小时
注册时间
2005-10-23
帖子
3651

贵宾

发表于 2006-5-25 07:05:02 | 显示全部楼层
要求发现bug的修正bug~
66RPG,这几个简单字符,之于我代表了什么?泪泪博客:http://hi.baidu.com/rpgmakerxp
回复 支持 反对

使用道具 举报

TA还没有解放自身的潜力。

Lv1.梦旅人

有事烧纸

梦石
0
星屑
145
在线时间
508 小时
注册时间
2005-10-22
帖子
6983

贵宾VX城市地图大赛冠军第1届RMTV比赛冠军第1届TG大赛冠军

发表于 2006-5-25 07:13:48 | 显示全部楼层
"Acquired " + item.name + " ?#34; + @quantity.to_s + "!"

就这句,用的人注意一下就不会错了``  " ?#34; 这里好象是空格
" "
神隐中,偶尔诈尸
回复 支持 反对

使用道具 举报

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

本版积分规则

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

站长信箱:fux2@moe9th.com|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2019-6-21 05:02

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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