void main()
{
    if(GetLocalInt(OBJECT_SELF, "DoOnce")) return;

    location lLoc=GetLocation(OBJECT_SELF);
    object oPC=GetFirstObjectInShape(SHAPE_SPHERE, 25.0, lLoc, FALSE);
    object oPW=OBJECT_SELF;
    while(GetIsObjectValid(oPC))
    {
        if(GetIsPC(oPC))
        DelayCommand(2.5, ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectKnockdown(), oPC, 6.0));

        oPC=GetNextObjectInShape(SHAPE_SPHERE, 25.0, lLoc, FALSE);

        AssignCommand(oPC, DelayCommand(0.8, PlaySound("sdr_paralyzed")));
        AssignCommand(oPC, DelayCommand(2.5, PlaySound("sim_destruct_low")));
    }

    //earthquake visual effect.  screen shake and rock falling sound
    ApplyEffectAtLocation(DURATION_TYPE_TEMPORARY, EffectVisualEffect(356), GetLocation(OBJECT_SELF), 7.0);

    SetLocalInt(OBJECT_SELF, "DoOnce", TRUE);

}