检测逻辑问题与bug 优化bug 完整版代码if obj-queryequipped == worn tell_objectme obj-name + 必须脱下才可以丢掉n; return 0; else if obj-queryequipped == wielded tell_objectme obj-name + 必须解除才可以丢掉n; return 0; else
完整版代码:
if (!objectp(obj)) { tell_object(me, "你要丢掉什么?\n"); return 0; } if (!obj->query("can_drop")) { tell_object(me, obj->name() + "不能被丢掉。\n"); return 0; } if (obj->query("equipped") == "worn") { tell_object(me, obj->name() + "必须脱下才可以丢掉。\n"); return 0; } if (obj->query("equipped") == "wielded") { tell_object(me, obj->name() + "必须解除才可以丢掉。\n"); return 0; } if (obj->query("no_drop")) { tell_object(me, obj->name() + "不能被丢掉。\n"); return 0; } tell_object(me, "你丢掉了" + obj->name() + "。\n"); if (obj->query("money_id")) { me->add("balance", - obj->query_amount()); } obj->move(environment(me)); return 1;
在原有代码的基础上,进行了以下优化:
- 增加了对物品是否可以被丢掉的检测,避免了玩家丢掉无法丢掉的物品。
- 增加了对物品是否可以丢掉的检测,避免了玩家丢掉不能被丢掉的物品。
- 对代码进行了排版和注释,使其更易读、易懂。
原文地址: http://www.cveoy.top/t/topic/bw1s 著作权归作者所有。请勿转载和采集!