1 |
function draw_sprite_skew_ext(argument0, argument1, argument2, argument3, argument4, argument5, argument6, argument7, argument8, argument9, argument10) //gml_Script_draw_sprite_skew_ext |
2 |
{ |
3 |
var sprite = argument0 |
4 |
var index = argument1 |
5 |
var xx = argument2 |
6 |
var yy = argument3 |
7 |
var xscale = argument4 |
8 |
var yscale = argument5 |
9 |
var cosAngle = cos(degtorad(argument6)) |
10 |
var sinAngle = sin(degtorad(argument6)) |
11 |
var tint = argument7 |
12 |
var alpha = argument8 |
13 |
var hskew = argument9 |
14 |
var vskew = argument10 |
15 |
var sprTex = sprite_get_texture(sprite, index) |
16 |
var sprWidth = sprite_get_width(sprite) |
17 |
var sprHeight = sprite_get_height(sprite) |
18 |
var sprXOrig = sprite_get_xoffset(sprite) |
19 |
var sprYOrig = sprite_get_yoffset(sprite) |
20 |
draw_primitive_begin_texture(5, sprTex) |
21 |
var tempX = ((-sprXOrig) + sprYOrig / sprHeight * hskew) * xscale |
22 |
var tempY = ((-sprYOrig) + sprXOrig / sprWidth * (-vskew)) * yscale |
23 |
draw_vertex_texture_color((xx + tempX * cosAngle - tempY * sinAngle), (yy + tempX * sinAngle + tempY * cosAngle), 0, 0, tint, alpha) |
24 |
tempX = (sprWidth + sprYOrig / sprHeight * hskew - sprXOrig) * xscale |
25 |
tempY = ((-sprYOrig) + (1 - sprXOrig / sprWidth) * vskew) * yscale |
26 |
draw_vertex_texture_color((xx + tempX * cosAngle - tempY * sinAngle), (yy + tempX * sinAngle + tempY * cosAngle), 1, 0, tint, alpha) |
27 |
tempX = ((-sprXOrig) + (1 - sprYOrig / sprHeight) * (-hskew)) * xscale |
28 |
tempY = (sprHeight - sprYOrig + sprXOrig / sprWidth * (-vskew)) * yscale |
29 |
draw_vertex_texture_color((xx + tempX * cosAngle - tempY * sinAngle), (yy + tempX * sinAngle + tempY * cosAngle), 0, 1, tint, alpha) |
30 |
tempX = (sprWidth - sprXOrig + (1 - sprYOrig / sprHeight) * (-hskew)) * xscale |
31 |
tempY = (sprHeight - sprYOrig + (1 - sprXOrig / sprWidth) * vskew) * yscale |
32 |
draw_vertex_texture_color((xx + tempX * cosAngle - tempY * sinAngle), (yy + tempX * sinAngle + tempY * cosAngle), 1, 1, tint, alpha) |
33 |
draw_primitive_end() |
34 |
} |