Project1
标题:
对话时怎样才能自动显示角色头像和名字?
[打印本页]
作者:
狂人狂者
时间:
2012-2-26 11:02
标题:
对话时怎样才能自动显示角色头像和名字?
本帖最后由 狂人狂者 于 2012-2-26 20:43 编辑
想做一个刚开始自己选择人物的游戏,虽然角色选择可以解决,但是由于角色不同所产生的对话比较麻烦,有没有更快捷的对话中根据主角而显示主角姓名和头像方法?求大神解决... dsu_plus_rewardpost_czw
作者:
hcm
时间:
2012-2-26 14:26
在数据库-角色中多设计些角色(一个无图无名),
数据库-系统设初始角色为无图无名的,
在初始地图加自动执行事件:显示选项:(各个角色的名字,不够的在第四项设下一页,加新的显示选项,
由此往下直到角色设完为止,别忘记加玩家入伍事件)
在最后让无图无名者离队。
作者:
iisnow
时间:
2012-2-28 11:19
本帖最后由 iisnow 于 2012-2-28 11:21 编辑
提供一种方法,不算很好,但是可以解决:
首先,不再使用角色在角色表中的索引,即不使用id,而使用角色在当前队伍中的编号,即你需要知道当前主角应该在队伍中排第几
所以要替换一些东西,将$game_actors[x]变成$game_party.members[x]
然后,至于角色的头像显示,提供的方法中,需要加入一个素材,即在Face文件夹中加入一张图(内容没有任何要求),文件名命为“MAIN”(当然,这个也无所谓),称这张图为索引图片
下面是脚本:
class Game_Interpreter
def command_101
unless $game_message.busy
if @params[0] == "MAIN" #索引图片的名称
actor = $game_party.members[@params[1]]
face_name = actor.character_name
face_index = actor.character_index
else
face_name = @params[0]
face_index = @params[1]
end
$game_message.face_name = face_name
$game_message.face_index = face_index
$game_message.background = @params[2]
$game_message.position = @params[3]
@index += 1
while @list[@index].code == 401 # 文章数据
$game_message.texts.push(@list[@index].parameters[0])
@index += 1
end
if @list[@index].code == 102 # 显示选择项
setup_choices(@list[@index].parameters)
elsif @list[@index].code == 103 # 数值输入处理
setup_num_input(@list[@index].parameters)
end
set_message_waiting # 设置等待信息结束
end
return false
end
end
class Window_Message
alias :iisnow_convert_special_characters :convert_special_characters
def convert_special_characters
@text.gsub!(/\\M\[([0-9]+)\]/i) { $game_party.members[$1.to_i].name }
iisnow_convert_special_characters
end
end
复制代码
于是设置事件时,选择头像时,选择索引文件,然后主角在队伍中第X位,就选择第X个(8个框框嘛)
然后这样的话,对话时会显示队伍中第X位的头像。
最后,是名称,加入\M转义,即在对话中\M[X]就是指队伍中第X位的名称(类似于\N转义)
(M是我设置的,可以任意改)
附上范例:
iisnow.zip
(256.01 KB, 下载次数: 1410)
2012-2-28 11:21 上传
点击文件名下载附件
���
作者:
cxpagy
时间:
2012-2-28 13:36
可以试试用事件来做很简单,不过很繁琐
例如,有两个人物可选
设置变量“人物”
选择人物1之后,接下来所有的NPC对话都设置个条件分歧,当变量“人物”=1时设置一串对话,当变量“人物”=2时同样是那串对话改一下图片就好,虽然看起来很麻烦,不过做起来复制黏贴还是很方便的=。=
我是事件党,不会用脚本=。=
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1