void main() { object oPC = GetLastUsedBy(); int iUsed = GetLocalInt(OBJECT_SELF,"hasused"); int iRandom = d10(); float fTime = IntToFloat(d6()*120); if (iUsed != 1) { switch (iRandom) { case 1: { effect ePoly = EffectPolymorph(POLYMORPH_TYPE_COW,FALSE); SetLocalInt(OBJECT_SELF,"hasused",1); ApplyEffectToObject(DURATION_TYPE_TEMPORARY,ePoly,oPC,fTime); break; } case 2: { effect ePoly = EffectPolymorph(POLYMORPH_TYPE_MINOTAUR,FALSE); SetLocalInt(OBJECT_SELF,"hasused",1); ApplyEffectToObject(DURATION_TYPE_TEMPORARY,ePoly,oPC,fTime); break; } case 3: { effect ePoly = EffectPolymorph(POLYMORPH_TYPE_BADGER,FALSE); SetLocalInt(OBJECT_SELF,"hasused",1); ApplyEffectToObject(DURATION_TYPE_TEMPORARY,ePoly,oPC,fTime); break; } case 4: { effect ePoly = EffectPolymorph(POLYMORPH_TYPE_MANTICORE,FALSE); SetLocalInt(OBJECT_SELF,"hasused",1); ApplyEffectToObject(DURATION_TYPE_TEMPORARY,ePoly,oPC,fTime); break; } case 5: { effect ePoly = EffectPolymorph(POLYMORPH_TYPE_PENGUIN,FALSE); SetLocalInt(OBJECT_SELF,"hasused",1); ApplyEffectToObject(DURATION_TYPE_TEMPORARY,ePoly,oPC,fTime); break; } case 6: { effect ePoly = EffectPolymorph(POLYMORPH_TYPE_DOOM_KNIGHT,FALSE); SetLocalInt(OBJECT_SELF,"hasused",1); ApplyEffectToObject(DURATION_TYPE_TEMPORARY,ePoly,oPC,fTime); break; } case 7: { effect ePoly = EffectPolymorph(POLYMORPH_TYPE_CHICKEN,FALSE); SetLocalInt(OBJECT_SELF,"hasused",1); ApplyEffectToObject(DURATION_TYPE_TEMPORARY,ePoly,oPC,fTime); break; } case 8: { effect ePoly = EffectPolymorph(POLYMORPH_TYPE_VROCK,FALSE); SetLocalInt(OBJECT_SELF,"hasused",1); ApplyEffectToObject(DURATION_TYPE_TEMPORARY,ePoly,oPC,fTime); break; } case 9: { effect ePoly = EffectPolymorph(POLYMORPH_TYPE_IMP,FALSE); SetLocalInt(OBJECT_SELF,"hasused",1); ApplyEffectToObject(DURATION_TYPE_TEMPORARY,ePoly,oPC,fTime); break; } case 10: { effect ePoly = EffectPolymorph(POLYMORPH_TYPE_BEHOLDER,FALSE); SetLocalInt(OBJECT_SELF,"hasused",1); ApplyEffectToObject(DURATION_TYPE_TEMPORARY,ePoly,oPC,fTime); break; } } SendMessageToPC(oPC,"You see yourself differently."); return; } SendMessageToPC(oPC,"Nothing happens."); }