public void Drop(Maps.Map map, ushort MidLocationX, ushort MidLocationY) { Maps.MapPoint Location = map.CreateAvailableLocation <Data.GroundItem>(MidLocationX, MidLocationY, 10); if (Location != null) { Data.GroundItem ground = new Data.GroundItem(this); ground.DropType = Enums.DropItemType.Item; ground.X = Location.X; ground.Y = Location.Y; Location.Map.EnterMap(ground); ground.TaskID = ProjectX_V3_Lib.Threading.DelayedTask.StartDelayedTask( () => { Location.Map.LeaveMap(ground); ground.Screen.ClearScreen(); }, Core.TimeIntervals.DroppedItemRemove); ground.Screen.UpdateScreen(null); } }