Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 9 additions & 7 deletions flixel/addons/display/FlxBackdrop.hx
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
package flixel.addons.display;

import flixel.FlxBasic;
import flixel.FlxCamera;
import flixel.FlxG;
import flixel.FlxSprite;
import flixel.FlxCamera;
import flixel.graphics.FlxGraphic;
import flixel.graphics.frames.FlxFrame;
import flixel.math.FlxMatrix;
Expand Down Expand Up @@ -204,9 +204,10 @@ class FlxBackdrop extends FlxSprite
// The distance between repeated sprites, in screen space
final tileSize = FlxPoint.get(frame.frame.width, frame.frame.height);
if (drawDirect)
tileSize.addPoint(spacing);
tileSize.add(spacing.x, spacing.y);

getScreenPosition(_point, camera).subtractPoint(offset);
getScreenPosition(_point, camera);
_point -= offset;
var tilesX = 1;
var tilesY = 1;
if (repeatAxes != NONE)
Expand All @@ -233,7 +234,7 @@ class FlxBackdrop extends FlxSprite
}

if (drawBlit)
_point.addPoint(_blitOffset);
_point += _blitOffset;

if (FlxG.renderBlit)
calcFrame(true);
Expand Down Expand Up @@ -311,7 +312,8 @@ class FlxBackdrop extends FlxSprite
camera.buffer.lock();
}

getScreenPosition(_point, camera).subtractPoint(offset);
getScreenPosition(_point, camera);
_point -= offset;
var tilesX = 1;
var tilesY = 1;
if (repeatAxes != NONE)
Expand All @@ -338,9 +340,9 @@ class FlxBackdrop extends FlxSprite
viewMargins.put();
bounds.put();
}
_point.addPoint(origin);
_point += origin;
if (drawBlit)
_point.addPoint(_blitOffset);
_point += _blitOffset;

for (tileX in 0...tilesX)
{
Expand Down
14 changes: 11 additions & 3 deletions flixel/addons/display/FlxNestedSprite.hx
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@
package flixel.addons.display;

import flixel.util.FlxDirectionFlags;
import openfl.geom.ColorTransform;
import flixel.FlxBasic;
import flixel.FlxG;
import flixel.FlxSprite;
Expand All @@ -12,6 +10,8 @@ import flixel.math.FlxVelocity;
import flixel.system.FlxAssets.FlxGraphicAsset;
import flixel.util.FlxColor;
import flixel.util.FlxDestroyUtil;
import flixel.util.FlxDirectionFlags;
import openfl.geom.ColorTransform;

using flixel.util.FlxArrayUtil;

Expand Down Expand Up @@ -308,7 +308,9 @@ class FlxNestedSprite extends FlxSprite
colorTransform.blueMultiplier = blue;
colorTransform.alphaMultiplier = alpha;
}
#if (flixel < version("6.1.0"))
useColorTransform = true;
#end
}
else
{
Expand All @@ -319,7 +321,9 @@ class FlxNestedSprite extends FlxSprite
colorTransform.blueMultiplier = 1;
colorTransform.alphaMultiplier = 1;
}
#if (flixel < version("6.1.0"))
useColorTransform = false;
#end
}
dirty = true;

Expand All @@ -334,7 +338,7 @@ class FlxNestedSprite extends FlxSprite

override function set_color(Color:FlxColor):FlxColor
{
Color = Color.to24Bit();
Color = Color.rgb;

var combinedRed:Float = (Color >> 16) * _parentRed / 255;
var combinedGreen:Float = (Color >> 8 & 0xff) * _parentGreen / 255;
Expand All @@ -359,7 +363,9 @@ class FlxNestedSprite extends FlxSprite
colorTransform.blueMultiplier = combinedBlue;
colorTransform.alphaMultiplier = alpha;
}
#if (flixel < version("6.1.0"))
useColorTransform = true;
#end
}
else
{
Expand All @@ -370,7 +376,9 @@ class FlxNestedSprite extends FlxSprite
colorTransform.blueMultiplier = 1;
colorTransform.alphaMultiplier = 1;
}
#if (flixel < version("6.1.0"))
useColorTransform = false;
#end
}

dirty = true;
Expand Down
10 changes: 5 additions & 5 deletions flixel/addons/display/FlxPieDial.hx
Original file line number Diff line number Diff line change
Expand Up @@ -289,17 +289,17 @@ class FlxPieDialUtils
// draw the interesting quadrant
if (Math.abs(degrees % 90) < 45)
{
p[1].setPolarDegrees(radius, -90 + Std.int(degrees / 90) * 90).addPoint(center);
p[2].setPolarDegrees(cornerLength, -90 + degrees).addPoint(center);
p[1].setPolarDegrees(radius, -90 + Std.int(degrees / 90) * 90).add(center.x, center.y);
p[2].setPolarDegrees(cornerLength, -90 + degrees).add(center.x, center.y);
p[3].copyFrom(center);
}
else
{
final quadDegreesStart = Std.int(degrees / 90) * 90;
final cornerDegrees = quadDegreesStart + (degrees < 0 ? -45 : 45);
p[1].setPolarDegrees(radius, -90 + quadDegreesStart).addPoint(center);
p[2].setPolarDegrees(cornerLength, -90 + cornerDegrees).addPoint(center);
p[3].setPolarDegrees(cornerLength, -90 + degrees).addPoint(center);
p[1].setPolarDegrees(radius, -90 + quadDegreesStart).add(center.x, center.y);
p[2].setPolarDegrees(cornerLength, -90 + cornerDegrees).add(center.x, center.y);
p[3].setPolarDegrees(cornerLength, -90 + degrees).add(center.x, center.y);
}

drawPolygon(dest, p, color);
Expand Down
2 changes: 1 addition & 1 deletion flixel/addons/display/FlxShaderMaskCamera.hx
Original file line number Diff line number Diff line change
Expand Up @@ -111,7 +111,7 @@ class FlxShaderMaskCamera extends FlxCamera
{
// clear our duplicate canvas
shaderCanvas.graphics.clear();
super.fill(bgColor.to24Bit(), useBgAlphaBlending, bgColor.alphaFloat, shaderCanvas.graphics);
super.fill(bgColor.rgb, useBgAlphaBlending, bgColor.alphaFloat, shaderCanvas.graphics);
// iterate over draw items, but draw them to both canvases
var currItem:FlxDrawBaseItem<Dynamic> = _headOfDrawStack;
var oldCanvas:Sprite = canvas;
Expand Down
12 changes: 8 additions & 4 deletions flixel/addons/effects/FlxClothSprite.hx
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
package flixel.addons.effects;

import openfl.geom.Rectangle;
import flixel.FlxCamera;
import flixel.FlxSprite;
import flixel.graphics.FlxGraphic;
Expand All @@ -16,6 +15,7 @@ import flixel.util.FlxSpriteUtil;
import openfl.display.BitmapData;
import openfl.display.Graphics;
import openfl.geom.Point;
import openfl.geom.Rectangle;

/**
* A FlxSprite that draw it's frame in a mesh and behave like a cloth.
Expand Down Expand Up @@ -170,10 +170,12 @@ class FlxClothSprite extends FlxSprite
calcImage();
drawImage();

getScreenPosition(_point, camera);
_point -= offset;
if (isPixelPerfectRender(camera))
_point.floor();

_point.addPoint(_drawOffset).copyToFlash(_flashPoint);
_flashPoint.setTo(_point.x + _drawOffset.x, _point.y + _drawOffset.y);
camera.copyPixels(_frame, meshPixels, meshPixels.rect, _flashPoint, colorTransform, blend, antialiasing);
}

Expand All @@ -194,14 +196,16 @@ class FlxClothSprite extends FlxSprite
_matrix.rotateWithTrig(_cosAngle, _sinAngle);
}

getScreenPosition(_point, camera).subtractPoint(offset);
getScreenPosition(_point, camera);
_point -= offset;
if (isPixelPerfectRender(camera))
_point.floor();

if (_frameGraphic == null)
_frameGraphic = FlxGraphic.fromBitmapData(framePixels, false, null, false);

camera.drawTriangles(_frameGraphic, _vertices, _indices, _uvtData, colors, _point.addPoint(_drawOffset), blend, false, antialiasing);
_point += _drawOffset;
camera.drawTriangles(_frameGraphic, _vertices, _indices, _uvtData, colors, _point, blend, false, antialiasing);
}

#if FLX_DEBUG
Expand Down
7 changes: 4 additions & 3 deletions flixel/addons/effects/FlxSkewedSprite.hx
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
package flixel.addons.effects;

import openfl.geom.Matrix;
import flixel.FlxCamera;
import flixel.FlxG;
import flixel.FlxSprite;
import flixel.graphics.frames.FlxFrame.FlxFrameAngle;
import flixel.math.FlxAngle;
import flixel.math.FlxPoint;
import flixel.util.FlxDestroyUtil;
import openfl.geom.Matrix;

/**
* @author Zaphod
Expand Down Expand Up @@ -71,8 +71,9 @@ class FlxSkewedSprite extends FlxSprite
_matrix.concat(_skewMatrix);
}

getScreenPosition(_point, camera).subtractPoint(offset);
_point.addPoint(origin);
getScreenPosition(_point, camera);
_point -= offset;
_point += origin;
if (isPixelPerfectRender(camera))
_point.floor();

Expand Down