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

Project1

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

[转载] [RM脚本]开始选择人物(华丽版)

 关闭 [复制链接]

Lv1.梦旅人

龙皇

梦石
0
星屑
50
在线时间
83 小时
注册时间
2007-8-8
帖子
2956
跳转到指定楼层
1
发表于 2008-2-29 05:02:15 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 凌辰 于 2009-7-28 17:21 编辑

我并不想泼踏水无痕冷水
{开始选择人物(纯事件):http://rpg.blue/viewthread.php?tid=79121
但以下这种的选择人物就华丽许多。


脚本来自某法网:

某法网范例工程:
http://rpg.blue/upload_program/f ... 選擇_84658764.rar
脚本翻译注解:
#_________________________________________________
# MOG_Character Select Screen V1.1         
#_________________________________________________
# By Moghunter  
# http://www.atelier-rgss.com
#_________________________________________________
module MOG  
CSTR = "006-Stripe02" #执行渐变文件名称
end
$mogscript = {} if $mogscript == nil
$mogscript["char_select"] = true
############
# Win Char #
############
class Win_Char < Window_Selectable
def initialize
super(-600, 0, 150, 150)
@column_max = 2
self.opacity = 0
refresh   
self.index = 1
self.visible = false
end
def item
return @data[self.index]
end  
def refresh
if self.contents != nil
self.contents.dispose
self.contents = nil
end
@item_max = 8
if @item_max > 0
self.contents = Bitmap.new(width - 32, row_max * 32)
for i in 0...@item_max
draw_item(i)
end end end  
def draw_item(index)
end end
##############
# Scene_Char #
##############
class Scene_Char
def main
@command_window = Win_Char.new
@command_window.back_opacity = 0
@command_window.visible = false
@command_window.index = 0   
@back = Plane.new
@back.bitmap = RPG::Cache.picture("MN_BK")
@back.z = 10
@char_back = Sprite.new
@char_back.bitmap = RPG::Cache.picture("CH_Menu0")
@char_back.z = 20
@char_back.opacity = 0
@char_sel = Sprite.new
@char_sel.bitmap =  RPG::Cache.picture("CH_ID1")#起始选择(角色头像文件名)位置
@char_sel.z = 100
@char_sel.opacity = 0
@char_name = Sprite.new
@char_name.bitmap = RPG::Cache.battler("001-Fighter01",0)#起始选择当前角色战斗图文件名
@char_name.z = 100
@char_name.x = -300
@char_name.y = 180   
@char_name.opacity = 0
@fundo6 = Plane.new
@fundo6.bitmap = RPG::Cache.fog("Fog01",0)#背景雾景图文件名
@fundo6.blend_type = 1
@fundo6.z = 15
@fundo6.opacity = 200   
actor = $data_actors[1]
@name = Sprite.new
@name.bitmap = Bitmap.new(200,100)
@name.bitmap.font.size = 48
@name.bitmap.font.bold = false
@name.bitmap.font.name = "黑体"
@name.color.set(0,0,0)   
@name.x = 100
@name.y = 500
@name.z = 9998
@name.color.set(0,0,0,255)
@name.bitmap.draw_text(2, 22, 160, 64, actor.name.to_s)
@name2 = Sprite.new
@name2.bitmap = Bitmap.new(160,100)
@name2.bitmap.font.size = 48
@name2.bitmap.font.bold = false
@name2.bitmap.font.name = "黑体"
@name2.color.set(0,0,0)   
@name2.x = 102
@name2.y = 502
@name2.z = 9998
@name2.color.set(55,200,255,255)
@name2.bitmap.draw_text(2, 22, 160, 64, actor.name.to_s)
Graphics.transition(60, "Graphics/Transitions/" + MOG::CSTR,1)
loop do
Graphics.update
Input.update
update
if $scene != self
break
end end
for i in 1..50
@char_back.zoom_x += 0.01
@char_back.opacity -= 10
@char_back.x -= 5
@char_name.x -= 3
@char_name.y -= 3
@char_name.zoom_x += 0.02
@char_name.zoom_y += 0.02   
@char_name.opacity -= 7
@char_sel.opacity -= 10
@char_sel.zoom_x += 0.01
@char_sel.opacity -= 10
@char_sel.x -= 5
@name.opacity -= 10
@name2.opacity -= 10   
Graphics.update  
end
Graphics.freeze
@command_window.dispose
@back.dispose
@char_back.dispose
@char_sel.dispose
@char_name.dispose
@fundo6.dispose
@name.dispose
@name2.dispose
$game_map.autoplay
end
def update
@back.ox -= 1
@fundo6.ox += 1
@fundo6.oy += 1   
@command_window.update   
@char_back.opacity += 10
@char_sel.opacity += 10
if @char_name.x < 100
@char_name.x += 20
@char_name.opacity += 6
@name.y -= 7
@name.opacity += 6
@name2.y -= 7
@name2.opacity += 6      
elsif @char_name.x >= 0  
@char_name.x = 100
@name.y = 370
@name.opacity = 255
@name2.y = 372
@name2.opacity = 255
@char_name.opacity = 255
@char_back.opacity = 255
@char_sel.opacity = 255
end   
case @command_window.index
when 0 #第一位角色选项
actor = $data_actors[1]  #角色ID
@char_sel.bitmap =  RPG::Cache.picture("CH_ID1")#选择当前角色的头像文件名
@char_name.bitmap = RPG::Cache.battler("001-Fighter01",0)#选择当前角色的战斗图文件名
@name.bitmap.draw_text(2, 22, 160, 64, actor.name.to_s)   
@name2.bitmap.draw_text(2, 22, 160, 64, actor.name.to_s)   
when 1 #第二位角色选项
actor = $data_actors[2]  #角色ID
@char_sel.bitmap =  RPG::Cache.picture("CH_ID2")#选择当前角色的头像文件名
@char_name.bitmap = RPG::Cache.battler("010-Lancer02",0)#选择当前角色的战斗图文件名
@name.bitmap.draw_text(2, 22, 160, 64, actor.name.to_s)
@name2.bitmap.draw_text(2, 22, 160, 64, actor.name.to_s)      
when 2 #第三位角色选项
actor = $data_actors[3]  #角色ID      
@char_sel.bitmap =  RPG::Cache.picture("CH_ID3")#选择当前角色的头像文件名
@char_name.bitmap = RPG::Cache.battler("013-Warrior01",0)#选择当前角色的战斗图文件名   
@name.bitmap.draw_text(2, 22, 160, 64, actor.name.to_s)  
@name2.bitmap.draw_text(2, 22, 160, 64, actor.name.to_s)   
when 3 #第四位角色选项
actor = $data_actors[4]  #角色ID      
@char_sel.bitmap = RPG::Cache.picture("CH_ID4")#选择当前角色的头像文件名
@char_name.bitmap = RPG::Cache.battler("019-Thief04",0)#选择当前角色的战斗图文件名
@name.bitmap.draw_text(2, 22, 160, 64, actor.name.to_s)
@name2.bitmap.draw_text(2, 22, 160, 64, actor.name.to_s)        
when 4 #第五位角色选项
actor = $data_actors[5]  #角色ID      
@char_sel.bitmap = RPG::Cache.picture("CH_ID5")#选择当前角色的头像文件名
@char_name.bitmap = RPG::Cache.battler("008-Fighter08",0)#选择当前角色的战斗图文件名
@name.bitmap.draw_text(2, 22, 160, 64, actor.name.to_s)
@name2.bitmap.draw_text(2, 22, 160, 64, actor.name.to_s)      
when 5 #第六位角色选项
actor = $data_actors[6]  #角色ID      
@char_sel.bitmap = RPG::Cache.picture("CH_ID6")#选择当前角色的头像文件名
@char_name.bitmap = RPG::Cache.battler("023-Gunner01",0)#选择当前角色的战斗图文件名
@name.bitmap.draw_text(2, 22, 160, 64, actor.name.to_s)  
@name2.bitmap.draw_text(2, 22, 160, 64, actor.name.to_s)     
when 6 #第七位角色选项
actor = $data_actors[7]  #角色ID      
@char_sel.bitmap = RPG::Cache.picture("CH_ID7")#选择当前角色的头像文件名  
@char_name.bitmap = RPG::Cache.battler("029-Cleric05",0)#选择当前角色的战斗图文件名
@name.bitmap.draw_text(2, 22, 160, 64, actor.name.to_s)
@name2.bitmap.draw_text(2, 22, 160, 64, actor.name.to_s)   
when 7 #第八位角色选项
actor = $data_actors[8]  #角色ID      
@char_sel.bitmap =  RPG::Cache.picture("CH_ID8")#选择当前角色的头像文件名
@char_name.bitmap = RPG::Cache.battler("038-Mage06",0)#选择当前角色的战斗图文件名   
@name.bitmap.draw_text(2, 22, 160, 64, actor.name.to_s)
@name2.bitmap.draw_text(2, 22, 160, 64, actor.name.to_s)      
end
if Input.press?(Input.dir4)
@char_name.x = -300
@name.y = 500
@name.opacity = 0
@name2.y = 502
@name2.opacity = 0
@char_name.opacity = 0
@name.bitmap.clear
@name2.bitmap.clear
end
if Input.trigger?(Input::B)
$scene = Scene_Title.new  
end   
if Input.trigger?(Input::C)
Audio.se_play("Audio/SE/007-System07", 150,150)#确认SE播放     
case @command_window.index
when 0
$game_party.add_actor(1)
when 1      
$game_party.add_actor(2)
when 2
$game_party.add_actor(3)
when 3
$game_party.add_actor(4)
when 4
$game_party.add_actor(5)
when 5
$game_party.add_actor(6)   
when 6
$game_party.add_actor(7)  
when 7
$game_party.add_actor(8)   
end
$scene = Scene_Map.new
end
end
end

头像美工相关图档文件及叮咛:
http://rpg.blue/upload_program/files/Pictures_84661146.rar
叮咛1:如果不满意这样的头像,只要把你的角色头像用在相对位置上即可(有点麻烦){/gg}
叮咛2:文件图档放在Pictures资料夹之下即可
叮咛3:解压后的Fog01图档放在Fogs资料夹之下

                签名图来自:無限のファンタジア
                 我的RMXP专题空间--龙使传说

Lv1.梦旅人

龙皇

梦石
0
星屑
50
在线时间
83 小时
注册时间
2007-8-8
帖子
2956
2
 楼主| 发表于 2008-2-29 05:12:06 | 只看该作者
补充一点:
范例工程的脚本沒翻译注解,
调用的时候,在事件指令脚本写上$scene = Scene_Char.new

另一项建议:
把数据库中的初期同伴设成无,
在开始地图再调用$scene = Scene_Char.new

                签名图来自:無限のファンタジア
                 我的RMXP专题空间--龙使传说
回复 支持 反对

使用道具 举报

Lv2.观梦者

龙骑

梦石
0
星屑
525
在线时间
10 小时
注册时间
2007-12-31
帖子
2030
3
发表于 2008-2-29 05:39:18 | 只看该作者
LZ怎么老找的到老外的脚本……{/qiang}顶!!
回复 支持 反对

使用道具 举报

Lv1.梦旅人

龙皇

梦石
0
星屑
50
在线时间
83 小时
注册时间
2007-8-8
帖子
2956
4
 楼主| 发表于 2008-2-29 05:42:02 | 只看该作者
以下引用劍之飛龍☆于2008-2-28 21:39:18的发言:

LZ怎么老找的到老外的脚本……顶!!

地球村嘛!!{/cy}

                签名图来自:無限のファンタジア
                 我的RMXP专题空间--龙使传说
回复 支持 反对

使用道具 举报

Lv2.观梦者

龙骑

梦石
0
星屑
525
在线时间
10 小时
注册时间
2007-12-31
帖子
2030
5
发表于 2008-2-29 05:44:43 | 只看该作者
以下引用TERENCE于2008-2-28 21:42:02的发言:


以下引用劍之飛龍☆于2008-2-28 21:39:18的发言:

LZ怎么老找的到老外的脚本……顶!!


地球村嘛!!

在哪里找的的呢~~~~{/fd}{/wx}
回复 支持 反对

使用道具 举报

Lv1.梦旅人

龙皇

梦石
0
星屑
50
在线时间
83 小时
注册时间
2007-8-8
帖子
2956
6
 楼主| 发表于 2008-2-29 06:04:05 | 只看该作者
以下引用劍之飛龍☆于2008-2-28 21:44:43的发言:

在哪里找的的呢~~~~

法国的RM网BBS我都找的很辛苦~~
通常找到后把脚本转载后,就忘了在哪??
因为法网网址或位置不好记~~~{/gg}

                签名图来自:無限のファンタジア
                 我的RMXP专题空间--龙使传说
回复 支持 反对

使用道具 举报

Lv2.观梦者

龙骑

梦石
0
星屑
525
在线时间
10 小时
注册时间
2007-12-31
帖子
2030
7
发表于 2008-2-29 20:17:21 | 只看该作者
以下引用TERENCE于2008-2-28 22:04:05的发言:


以下引用劍之飛龍☆于2008-2-28 21:44:43的发言:

在哪里找的的呢~~~~


法国的RM网BBS我都找的很辛苦~~
通常找到后把脚本转载后,就忘了在哪??
因为法网网址或位置不好记~~~


[本贴由作者于 2008-2-28 22:05:36 最后编辑]

那请问,网站叫什么名字?{/gg}
回复 支持 反对

使用道具 举报

Lv1.梦旅人

龙皇

梦石
0
星屑
50
在线时间
83 小时
注册时间
2007-8-8
帖子
2956
8
 楼主| 发表于 2008-2-29 20:44:53 | 只看该作者
以下引用劍之飛龍☆于2008-2-29 12:17:21的发言:

那请问,网站叫什么名字?

好像是叫
O Maior Império do Rpg Maker

                签名图来自:無限のファンタジア
                 我的RMXP专题空间--龙使传说
回复 支持 反对

使用道具 举报

Lv2.观梦者

龙骑

梦石
0
星屑
525
在线时间
10 小时
注册时间
2007-12-31
帖子
2030
9
发表于 2008-2-29 20:47:28 | 只看该作者
以下引用TERENCE于2008-2-29 12:44:53的发言:


以下引用劍之飛龍☆于2008-2-29 12:17:21的发言:

那请问,网站叫什么名字?


好像是叫
O Maior Império do Rpg Maker


[本贴由作者于 2008-2-29 12:46:47 最后编辑]

法语吗……
回复 支持 反对

使用道具 举报

Lv2.观梦者

龙骑

梦石
0
星屑
525
在线时间
10 小时
注册时间
2007-12-31
帖子
2030
10
发表于 2008-2-29 20:49:32 | 只看该作者
算了,
找不到
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-24 20:56

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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