void main() { object oPC = GetEnteringObject(); if(GetIsPC(oPC) == TRUE && GetLocalInt(GetObjectByTag("px_halflingbone"),"Summoned") == 0) { CreateObject(OBJECT_TYPE_CREATURE,"px_apparition",GetLocation(oPC)); ApplyEffectAtLocation(DURATION_TYPE_INSTANT,EffectVisualEffect(VFX_IMP_UNSUMMON),GetLocation(oPC),1.0); ApplyEffectAtLocation(DURATION_TYPE_INSTANT,EffectVisualEffect(VFX_DUR_PROTECTION_GOOD_MAJOR),GetLocation(oPC),1.0); AssignCommand(GetObjectByTag("px_apparition"),ActionStartConversation(oPC)); SetLocalInt(GetObjectByTag("px_halflingbone"),"Summoned",1); } }