楼主:
laechan (挥泪斩马云)
2017-12-19 17:25:47以下是前置设定,为免忘记所以备忘一下,同时留个纪录。
根据这一篇
https://pttgame.com/mud_sanc/M.1356313280.A.385.html
七、修改 /open/cmds/vobjs_d.c
让 vobjs_d.c 的 exec_mob_drop 函数可支援全区域生成
邪恶圣诞老人。
我当初的设计是让 /open/cmds/vobjs_d.c 的 exec_mob_drop 函数支援
全区域生成邪恶圣诞老人。exec_mob_drop 只有一种情况会被呼叫,就是
怪物阵亡时,所以我的想法应该是,有在跑区域打怪物的玩家才会碰到邪
恶圣诞老人。
在 vobjs_d.c 的 exec_mob_drop 里面有一段程式码长这样:
// 节日支援专区 by [email protected]
/*
if(files=festival_data("query","general_festival_event"))
{
// 实体物件(如怪物)呼叫专用区
//files=GENERAL_FESTIVAL_EVENT;
j=(int)ppl->query_temp("time_record/festival_event_times");
carry=time();
if(j<1)
{
ppl->set_temp("time_record/festival_event_times",carry);
return 1;
}
else if(carry-j>180+random(120))
{
ppl->delete_temp("time_record/festival_event_times");
if(!catch(ob=clone_object(files)))
ob->move(environment(ppl));
return 1;
}
if(!ppl) return 1;
}
*/
这段应该就是跑邪恶圣诞老人的部份,而且也只被设定过邪恶圣诞老人
> call vobjs_d;festival_data;"query";"general_festival_event"
房间(/open/cmds/vobjs_d)-> festival_data( "query",
"general_festival_event" ) = "/d/event/xmas/evil"
换言之,只要把这段程式码的 /* */ 拿掉再 update 一下,邪恶圣诞老
人就会随机出现在玩家打死怪物的同一房间,而且会主动攻击玩家。
> ob view 圣诞袜