public void PaintWorld(WorldLayer layer)
        {
            if (!Hud.Game.IsInGame)
            {
                return;
            }
            if (layer != WorldLayer.Ground)
            {
                return;
            }

            var actors = Hud.Game.Actors.Where(a => a.SnoActor.Sno == ActorSnoEnum._wd_spiritbarragerune_aoe_ghostmodel);

            if (actors.Any())
            {
                foreach (var a in actors)
                {
                    if (!Phantasms.ContainsKey(a.AnnId))
                    {
                        Phantasms[a.AnnId] = a.CreatedAtInGameTick;
                    }
                }
                var total = 0;
                foreach (var player in Hud.Game.Players)
                {
                    if (!ShowOthers && !player.IsMe)
                    {
                        continue;
                    }
                    var actorsPlayer = actors.Where(a => a.SummonerAcdDynamicId == player.SummonerId).OrderByDescending(a => Phantasms[a.AnnId]);
                    var c            = 0;
                    foreach (var actor in actorsPlayer)
                    {
                        if (c++ == 3)
                        {
                            break;
                        }
                        total++;
                        var duration = player.Powers.BuffIsActive(484270)? 10d : 5d;
                        var elapsed  = (Hud.Game.CurrentGameTick - Phantasms[actor.AnnId]) / 60d;
                        if (elapsed < (duration + 0.1))
                        {
                            BrushSolid.DrawWorldEllipse(10, -1, actor.FloorCoordinate);
                            if (ShowExplosionCircle && (elapsed > CircleSeconds))
                            {
                                BrushDash.DrawWorldEllipse(15, -1, actor.FloorCoordinate);
                            }
                            if (actor.IsOnScreen)
                            {
                                var timeleft = duration - elapsed;      var x = actor.FloorCoordinate.ToScreenCoordinate().X; var y = actor.FloorCoordinate.ToScreenCoordinate().Y;
                                var radiusc = radius_countdown / 1200.0f * Hud.Window.Size.Height;

                                BrushCounter.DrawEllipse(x, y, radiusc, radiusc);
                                DrawTimeLeftClock(new RectangleF(x - radiusc / 2, y - radiusc / 2, radiusc, radiusc), elapsed, timeleft);

                                var layout = FontText.GetTextLayout((timeleft < 0)?"0.0":timeleft.ToString((timeleft > 1)?"F0":"F1"));
                                FontText.DrawText(layout, x - layout.Metrics.Width / 2, y - layout.Metrics.Height / 2 - 1);
                            }
                        }
                    }
                }
                if (ShowCounter)
                {
                    var uiRect = Hud.Render.GetUiElement("Root.NormalLayer.game_dialog_backgroundScreenPC.game_progressBar_manaBall").Rectangle;
                    PhantomCountDecorator.Paint(uiRect.Left + uiRect.Width * 0.20f, uiRect.Top - uiRect.Height * 0.20f, uiRect.Width * 0.60f, uiRect.Height * 0.15f, "Phantom:" + total);
                }
            }
        }