void main()
{
object oPC = GetPCSpeaker();
if (GetLocalInt(oPC,"LogDialBoot")>0)
    {
    DeleteLocalInt(oPC,"LogDialBoot");
    DelayCommand(5.0, BootPC(oPC));
    return;
    }
else
    {
    string Script = GetLocalString(oPC,"LogDialScript");
    if (Script != "")
        {
        ExecuteScript(Script,oPC);
        DeleteLocalString(oPC,"LogDialScript");
        return;
        }

    Script = GetLocalString(oPC,"LogDialItem");
    if (Script != "")
        {
        CreateItemOnObject(Script,oPC);
        DeleteLocalString(oPC,"LogDialItem");
        return;
        }

    Script = GetLocalString(oPC,"LogDialMonster");
    if (Script != "")
        {
        object oMonster = CreateObject(OBJECT_TYPE_CREATURE,Script,GetLocation(oPC),TRUE);
        FloatingTextStringOnCreature("Huh?! What I'm doing here?  Attack!!!",oMonster,FALSE);
        DeleteLocalString(oPC,"LogDialMonster");
        AssignCommand(oMonster,ActionAttack(oPC));
        return;
        }

    int Gold = GetLocalInt(oPC,"LogDialGold");
    if (Gold != 0)
        {
        DeleteLocalInt(oPC,"LogDialGold");
        GiveGoldToCreature(oPC, Gold);
        return;
        }
    }
}