人物时装通过称号实现,服务端给予玩家称号,同时客户端配置好fashion.json文件,可实现人物一体时装效果。接下里分两部分介绍,首先看看服务端:
服务端配置
1、需要开通盘古功能,如图框选所示:

2、需要将白猪4.5包里的fenghao.pas放入到服务器 commonscripts 文件夹下,并在 runmailquest.pas 中引用,并完成初始化,如下所示:
fenghao脚本所在目录:


脚本内容说明:
//封号函数
procedure givefenghao;
var zs, xs, i : integer;
str : string;
begin
str := '';
//69,1 首位封号,可显示在中间
//69,2~6分别代表一体时装、衣服、武器、翅膀、斗笠外显
//69,7及以后表示其他扩展称号
//默认15个,可增加
for i := 1 to 20 do
begin
if This_Player.GetV(69,i) <= 0 then
begin
str := str + ':';
end else
begin
if i = 1 then
begin
str := inttostr(This_Player.GetV(69,i));
end else
begin
str := str + ':' + inttostr(This_Player.GetV(69,i));
end
end;
end;
//封号给予编号 = 素材ID号/2+1
This_Player.QuestInfo(str);
end;
如上代码块所示,封号的存储通过变量来实现,推荐使用 69 位来存储,当然可以根据自己的需求修改。不同变量需要所代表的意义不同,具体如下:
69,1 人物称号,可以文字显示,也可以图片。文字可显示在人物中间
69,2 一体时装专属位
69,3~6 分别代表 衣服、武器、翅膀、斗笠&头发外显,在之后的文章中会介绍
69,7~19 及以后表示其他扩展称号
69,20 神秘人专属称号(开启神秘人状态才有效,同时常规状态也无法使用次称号位)
fenghao.pas 需要放入到commonscipts文件夹下,同时需要在 runmailquest 中引用,如下图:

(请不要告诉我你不知道 runmailquest.pas 的位置,自己去补战神基础课)
完成以上配置后,基本上完成了时装、称号的基础配置。接下来我们说说如何使用。
开启与关闭 一体时装 的代码非常简单,只需要给 69,2 赋值为具体一体时装id或设置为0即可。设置为0表示关闭。
//开启一体时装
ThisPlayer.SetV(69,2,20);
givefenghao;
//关闭一体时装
ThisPlayer.SetV(69,2,0);
givefenghao;
开启、关闭只需要以上两行代码即可。
客户端json配置
接下来,我们看看fashion.json如何配置。先看看代码结构
[
{
"uid": 0,
"Id": 0,
"OffSet": 0,
"WhichLib": "fashion",
"Job": [
"zjob",
"fjob",
"djob"
]
}
]
uid和id 配置成一样的,这是时装id
offset 是素材开始位置变好
whichlib 是素材包,战神一体衣服素材包
job 这个可以不管
配置好json,并放到补丁文件后,服务端给予称号的id计算公式为:
一体&分体时装变量值 = 时装id/2 + 1
比如上方案例,就算下变量值 = 0/2 + 1 = 1,则在服务端给变量赋值为1即可。如下:
//开启一体时装
ThisPlayer.SetV(69,2,1);
givefenghao;