作者laechan (小太保)
看板mud_sanc
标题[wizs] set_npcs
时间Wed May 30 22:24:09 2012
来讨论并确定一下这个参数怎麽设。
首先,参数内容必定带「档名」,我已经在 /open 下建一个
npc 子目录,可以确定的是一定会有一个档案叫 npc.c 放在
这个目录或是 /open/cmds/quest。
我个人比较倾向的设法是..
档名 中文名 id
set_npcs(({"leah","莉亚",({"leah"}),@LONG
她是迪卡‧凯恩的孙女莉亚,一个有着俏丽短发的可爱女孩,擅
使的武器是弓箭,就身为一个女射手来说,本领算是相当不错。
LONG
}));
set("objects",(["/open/npc/leah":1]));
那麽,当程式看到上面那一行时,它会做的事情如下..
void set_npcs(mixed vars)
{
string files="/open/npc/"+vars[0];
// 若 npc 档案已存在就不做任何事
if(file_exists(files+".c"))
return 0;
write_file(files+".c",@LONG
npc 档案内容...
set("level",随便);
set("race","human");
::create();
seteuid(getuid(this_object()));
set("id",vars[2]);
set("short",vars[1]+"("+vars[2][0]+")");
set("long",vars[3]);
set_living_name(vars[2][sizeof(vars[2])-1]);
set_name(vars[1]);
set("no_attack",1);
enable_commands();
}
LONG
);
}
再补个 source 这样任务怪就会自己产生。
这东西我最近装看看,若装的起来,对於日後任务制作
会更简单一些。
Laechan
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 122.117.11.103