+ //spriteBatch.Draw(BoxTexture, Box, new Color(255, 0, 255, 25));
+ }
+
+ protected void DrawCircle(SpriteBatch spriteBatch) {
+
+ var j = AuraWaveSize;
+ var subWaveRadius = 0.0;
+ var randomPosition = 0.0;
+
+ for (var i = 0; i < 360; i++) {
+ var angle = i * Math.PI / 180;
+
+ if (j == AuraWaveSize) {
+ subWaveRadius = AuraSubAmplitude * Math.Sin (randomPosition + AuraSubPhase);
+ randomPosition -= (2 * Math.PI / 8);
+ j = 0;
+ }
+ j++;
+
+ var radius = EnemyModifications[i] + subWaveRadius + AuraRadius + AuraAmplitude * Math.Sin (i / AuraFrequency);
+ var x = Position.X + radius * Math.Cos (angle);
+ var y = Position.Y + radius * Math.Sin (angle);
+
+ x = Math.Round (x);
+ y = Math.Round (y);
+ var pointPosition = new Vector2 ((float)x, (float)y);
+
+ if (CurrentPolarity == Polarity.Positive) {
+ spriteBatch.Draw (AuraPoint, pointPosition, RedColor);
+ } else {
+ spriteBatch.Draw (AuraPoint, pointPosition, BlueColor);
+ }
+ }
+
+ AuraSubPhase += AuraSubFrequency;
+
+ /* var r = 50;
+ var wave = 5;
+ var frequency = 1.4;
+ var randomFactor = 5;
+ var randomAreaSize = 4;
+
+ var j = AuraWaveSize;
+ var rand = 0;
+ var randomPosition = 0;
+
+ AuraSubPhase = 0;
+
+ for (var i = 0; i < 360; i++) {
+ var rad = Math.radians(i);
+ if (j == AuraWaveSize) {
+ //rand = Math.random() * 2 * AuraSubAmplitude - AuraSubAmplitude;
+ rand = AuraSubAmplitude * Math.sin(AuraSubPhase + offset);
+ AuraSubPhase -= (2 * Math.PI / 8);
+ j = 0;