public override bool OnDragDrop(Mobile from, Item dropped)
        {
            if (!from.InRange(this.GetWorldLocation(), 1))
            {
                from.SendMessage(89, "You are too far from the crate, step closer.");
                return(false);
            }
            else
            {
                if (dropped is BaseGranite)
                {
                    if (dropped is Granite)
                    {
                        // NORMAL GRANITE
                        Granite yourgranite = (Granite)dropped;
                        dropped.Delete();
                        from.SendMessage(89, "The machine processes your granite.");
                        Effects.PlaySound(from.Location, from.Map, 0x2F3);  // Plays the earthquake sound
                        Item spawn = new Sand();
                        spawn.MoveToWorld(new Point3D(this.X + 2, this.Y - 2, this.Z + 2), this.Map);
                        return(true);
                    }
                    else
                    {
                        // Wrong Granite Type (Not Normal)
                        if (dropped is BaseGranite)
                        {
                            BaseGranite yourgranite = (BaseGranite)dropped;
                            dropped.Delete();
                            from.SendMessage(89, "The machine tries to processes the granite but fail's.");
                            Effects.PlaySound(from.Location, from.Map, 0x208);  // Plays the sound
                            from.SendMessage(89, "You loose your piece of granite!!!");
                            return(true);
                        }

                        return(false);
                    }
                }
                from.SendMessage(89, "This machine can only process normal granite.");
                return(false);
            }
            return(false);
        }