[闲聊] 斜角巷的书店

楼主: laechan (挥泪斩马云)   2023-04-27 11:19:03
/u/l/laechan/skycastle/room/street/alley_shop1.c
是写可 rent 租书,实际上没有 rent 指令,但是有 buy
指令。另外基本可以 read 内阅,不可 study(就是不可在
书店看从外头带进来的书)
read 实际上就是跟书店租书在店内看的意思。
你 read 了,技能熟练度就拿到了。
read 书名
names=ppl->query("name");
if(tmps=times_check->return_tmps("times_check",names,shop_files))
return notify_fail("read: 你已经有租了《"+tmps[0]+"》在看了喔。\n"+
"(如果你不想再读这本书了,只要离开内阅\室一段时间即可)\n");
这段的意思就是你在下一次周期时间判断时没有在内阅
室的话,就要重新花钱租书。
// runes 与其它的差异用这个来跑
if(sk/10>300)
times_check->set_times_check(names,shop_files,({str,sk}),sk/50);
else
times_check->set_times_check(names,shop_files,({str,sk}),sk/10);
时间间隔与 runes 技能值成正比,如果是上面的设定,
比方 runes 5000 则周期区间为 5000/50 = 100 秒,大
概是,你下了 read 后,只要记得在 100 秒内回来,就
可以继续 read。
它的前提是你的 runes 已满 3000。未满 3000 的话比
方 runes 2500,它是 2500/10 = 250 秒。
对于没有想在周期区间跑去别的地方的人,区间越短越
好。每执行一次时间周期,熟练度就增加一次。
ppl->improve_skill(BOOKS[s][1],(sk+(int)ppl->query("stat/int"))/10);
每一次获得的熟练度,与底下有关
1. runes 技能值
2. 理性值
str=base_name(environment(ppl));
if(str!=__DIR__+"room1" && str!=__DIR__+"room2" &&
str!=shop_files)
{
tell_object(ppl,HIC"* 你离开了书店,"+query("shop_boss")+
"将你租阅\的书收走囉>。"NOR"\n");
return 1;
}
它周期时间到了要再做下一次判断时(不用重新 read 它
每一周期时间就自己判断),发现你没在书店,就会把书
收走,
比方周期判断时间是 60 秒,你在 10:05:00 秒 read了
,那中间即便有离开,只要在 10:06:00 秒前赶快再回到
内阅室,则在 10:06:00 秒时它就会再周期判断一次,你
人在内阅室就 ok 不用重新租书,下一次就 10:07:00 秒
再判断。
(而不会 10:06:00~10:06:59 的这段期间每一秒都判断)
Laechan

Links booklink

Contact Us: admin [ a t ] ucptt.com