# Forum > Diablo 3 > TurboHUD > TurboHUD Support > [How To] Help with Frozen affix Decorator

## Saico

Hey guys, I was trying to add Frozen Decorator to my (DangerPlugin.cs), tried to put it just like Wornhole decorator, that already has pink brush and form. but I could not. =(

Anyone can help ? I would like to add a visual effect and/or text Warning for Frozen (not frozen pulse) just as Wornhole pink effect. 

I can post DangerPlugin.cs code here, if someone can help me to add this affix.  :Big Grin:  I would be so appreciated

----------


## s4000

the default plugin already contains that skill?? (plugins\Default\Monsters\EliteMonsterSkillPlugin.cs)

----------


## Saico

Oh ya, totally forgot about this plugin, it contains the FrozenBallDecorator, I changed radius and colors now, thank you. 

But I would like more, I`d like to change colors inside the circle to red, or orange, just like Wornhole is pink and has a Text when you are close to in DangerPlugin.cs

Do you have any idea how I can do it ? I copied the wornhole to EliteMonsterSkillPlugin.cs but didnt work (of course Im missin something) 




> WormholeWarningDecorator = new WorldDecoratorCollection(
> new GroundCircleDecorator(Hud)
> {
> Brush = Hud.Render.CreateBrush(205, 255, 50, 255, 3, SharpDX.Direct2D1.DashStyle.Dash),
> Radius = 5f,
> },
> new GroundCircleDecorator(Hud)
> {
> Brush = Hud.Render.CreateBrush(205, 255, 50, 255, 0),
> ...


I tried adding 


> publicWorldDecoratorCollection FrozenBallWarningDecorator { get; set; }


 to class, and this code but nothin happened.

----------


## s4000

Try 


```
public class WormHolePlugin : BasePlugin, IInGameWorldPainter {
		
		public WorldDecoratorCollection SampleDecorator { get; set; }
		public WorldDecoratorCollection WormholeDecorator { get; set; }
		public WorldDecoratorCollection WormholeWarningDecorator { get; set; }

		public WormHolePlugin() {
			Enabled = true;
		}

		public override void Load(IController hud) {
			base.Load(hud);


			SampleDecorator = new WorldDecoratorCollection(
				new GroundCircleDecorator(Hud) {
					Brush = Hud.Render.CreateBrush(160, 255, 51, 51, 0),
					Radius = 4f,
				},
				new GroundLabelDecorator(Hud) {
					BackgroundBrush = Hud.Render.CreateBrush(0, 0, 0, 0, 0),
					TextFont = Hud.Render.CreateFont("tahoma", 15, 255, 255, 255, 255, true, true, true),
				}
			);
			
			WormholeWarningDecorator = new WorldDecoratorCollection(
				new GroundCircleDecorator(Hud) {
					Brush = Hud.Render.CreateBrush(160, 255, 51, 51, 0),
					Radius = 4f,
				},
				new GroundLabelDecorator(Hud) {
					BackgroundBrush = Hud.Render.CreateBrush(0, 0, 0, 0, 0),
					TextFont = Hud.Render.CreateFont("tahoma", 15, 255, 255, 255, 255, true, true, true),
				}
			);

			WormholeDecorator = new WorldDecoratorCollection(
				new GroundCircleDecorator(Hud) {
					Brush = Hud.Render.CreateBrush(160, 255, 50, 255, 0),
					Radius = 4f,
				},
				new GroundLabelDecorator(Hud) {
					TextFont = Hud.Render.CreateFont("tahoma", 9, 160, 255, 255, 255, true, false, 128, 0, 0, 0, true),
				}
			);
		}

		public void PaintWorld(WorldLayer layer) {
			var actors = Hud.Game.Actors;
			foreach (var actor in actors) {
				if (actor.SnoActor.Sno == ActorSnoEnum._x1_monsteraffix_teleportmines) {
					if (actor.NormalizedXyDistanceToMe <= 6) WormholeWarningDecorator.Paint(layer, actor, actor.FloorCoordinate, "Wormhole !!!");
					else WormholeDecorator.Paint(layer, actor, actor.FloorCoordinate, "Wormhole");
					
					if (Hud.Sound.LastSpeak.TimerTest(5000))
						Hud.Sound.Speak("Wormhole");
				}
				
				else if (actor.SnoActor.Sno == ActorSnoEnum._monsteraffix_frozen_iceclusters /* elite skill sample from the default plugin */) {
					SampleDecorator.Paint(layer, actor, actor.FloorCoordinate, "your message");
				}
			}
		}
	}
```

----------

