MUD-武林MUD资料站-武侠MUD游戏
标题:
泥潭natured.c文件的问题求助
[打印本页]
作者:
yanhuang
时间:
2013-4-6 20:02
标题:
泥潭natured.c文件的问题求助
请教碧落姐姐,NT4里面natured.c文件下有些问题看不明白,特此请教一二。
一是void event_midnight()
{
string msg;
int m, d;
m = query_month();
d = query_day();
msg = 0;
switch (m * 100 + d)
{
case 321:
msg = HIG "春天终于到了,经过了漫长的冬季,万物开始复苏。\n" NOR;
break;
case 622:
msg = HIR "夏天来临了,天气越来越热,所有的生物都异常活跃。\n" NOR;
break;
case 923:
msg = HIY "已然是秋天了,大地一片金黄,正是收获的时期。\n" NOR;
break;
case 1222:
msg = HIW "来自北方的寒流扫过大地,万物又开始了寂静的休眠。\n" NOR;
break;
}
if (msg)
message("vision", HIC "【季节天时】" + msg,
msg, all_interactive());
为什么到了3月21日或相应的622,923的时候没有出现相关的msg描述。
二是如果我想在特定的日期让natured读取特殊的时间描写该修改哪一步呢,比如下面这个是2月份的
case 2:
switch(random(3))
{
case 0:
day_phase = read_table("/adm/etc/nature/winter_rain2");
break;
case 1:
day_phase = read_table("/adm/etc/nature/winter_sun2");
break;
case 2:
day_phase = read_table("/adm/etc/nature/winter_wind2");
break;
}
break;
我想在2月14日读一个特殊的气候描述,过了这个日子继续读取正常的winter_rain、winter_sun、winter_wind,请问该修改哪一步呢,先谢谢姐姐了
作者:
是开碧落
时间:
2013-4-7 22:50
好吧. 我刚刚仔细翻了下natured.c 这个文件.
问题一: event_midnight() 里为啥 【季节天时】msg 没出现
是因为, 老代码写错了个地方, 应该改成
if (msg)
message("vision", HIC "【季节天时】" + msg, all_interactive());
就可以了.
问题二: 在特定的日期让natured读取特殊的时间描写
可以参照 event_midnight()里面的写法
case 2:
switch(random(3))
{
case 0:
day_phase = read_table("/adm/etc/nature/winter_rain2");
break;
case 1:
day_phase = read_table("/adm/etc/nature/winter_sun2");
break;
case 2:
day_phase = read_table("/adm/etc/nature/winter_wind2");
break;
}
d = query_day();
switch (d)
{
case 14:
day_phase = read_table("/adm/etc/nature/winter_special14");
break;
}
break;
先随机读一个文件的, 然后如果day = 特殊日子, 再读特殊文件的, 覆盖掉变量 day_phase 好了
作者:
yanhuang
时间:
2013-4-7 23:43
万分感谢碧落姐姐,现在季节天时正常显示了,没注意多了一个msg,同时发现一个搞笑的问题就是我设定的日子居然晚一天才读取特殊文件,应该是natured里面有问题,但实在找不到问题出在哪里了。再问一个困扰我很久的问题吧,我翻遍了能下载的所有HELL底层的,都存在一个问题就是mud时间到了晚上21点的时候不读取21时的时间描述,直接就跳到0时午夜的描述了,我没办法只好在21时后面多增加了一个23时的描述,这样系统到了23时自动读取0点的时间描述,希望姐姐有时间的话帮忙看下。
作者:
是开碧落
时间:
2013-4-8 11:38
问题出在 select_day_phase() 函数上
你仔细读一下
欢迎光临 MUD-武林MUD资料站-武侠MUD游戏 (http://17mud.com/)
Powered by Discuz! X3.2