 			
 			var segColor:uint = getColor();
 			hSeg.color = vSeg.color = join.color = segColor;
-			hSeg.alpha = vSeg.alpha = join.alpha = wire.FIXED ? 0.5 : 1;
-			
-			if (wire.deployed) {
-				drawJoin(wire.path[0]);
-				drawJoin(wire.path[wire.path.length - 1]);
-			}
+			
+			drawJoins();
 			
 			iterWire(function drawWire(seg:FlxSprite):void {
 				seg.draw();

			buildSegs();
			cachedLines = new Vector.<FlxSprite>;
			
			cachedLines.push(buildSubline(wire.path));
			//TODO: build multiple cached lines
			
			cachedLoc = wire.path[0].clone();
			/*cachedPath = new Vector.<Point>;  //assume wire path is unchanging once deployed

		}
		
		override public function draw():void {
			if (!cacheValid()) {
				if (!wire.deployed) {
					drawDynamic();
					return;
				}
				
				buildCache();
			}
			drawCached();
		}
		
		protected function cacheValid():Boolean {
