Wear prog, no obj?

Posted by Zeno on Sun 28 Aug 2005 06:40 PM — 4 posts, 10,799 views.

USA #0
>wear_prog 100
if armshards($n) > 0
mea $n You graft the water dragon's arm onto your own, gaining it's power!
break
endif
mposet 'dragon arm' flags noremove
mpforce $n remove arm
mposet 'dragon arm' flags noremove


When this prog is called (the prog is on the dragon arm), this bug appears:
Log: [*****] BUG: MpOset: no object, Object #2853.


Anyone know what's wrong or how to fix this? I've tried the vnum, short name, etc.
Amended on Sun 28 Aug 2005 07:33 PM by Zeno
USA #1
Isn't mposet performed by the supermob? (I hate that thing, even if I understand why it's necessary given SMAUG's setup) In that case, if the player is holding the object, I'm not sure that the supermob will be able to see it.
USA #2
Hmm any suggestions then? I'm not sure I want to change the check, in case it screws up other progs.
USA #3
You could make a new mudprog command, mposet_ch or something, that takes $n as a first argument and otherwise behaves as mposet. It then looks up the object in $n's inventory, instead of $n's room.