初期会测试玩家只能拍卖非武防、无认主、可丢弃的物品。
比方指令叫 auctions,身上有个东西叫 stone,想把它放到
拍卖场,卖 10 万影特,就使用 auctions stone for 100000
这时,对 stone 动手脚:
ob=present("stone",me);
做一些判断 ob 是可被放上去的;
ob->add_auctions(me,value);
这函数大抵上做以下三件事
sdata=({"auctions"});
if(!undefinedp(ob->query("sdata")))
sdata+=ob->query("sdata");
ob->set("auctions",({me->query("name"),value,time()}));
这样当玩家 quit 时,若 ob 的资料能被玩家存起来的话,则
auctions 的资料就会被存起来。
而当玩家带着 ob 在线上时,其它玩家下 auctions -list 时
obs=({});
auc_obs=({});
foreach(ob in users())
{
if(!environment(ob)) continue;
obs+=({all_inventory(ob)});
}
foreach(ob in obs)
if(ob->query("auctions"))
auc_obs+=({ob});
这样就能将有设定拍卖的物品读出来,有资料就能做列表。
不过这样好像不太对,我再想一下。
问题点:
1.auctions -list 怎么 work
2.auctions -search 怎么 work
3.auctions -view 怎么 work a.列表用序号, view 用序号