:D
This commit is contained in:
commit
09ade10207
117 changed files with 2153 additions and 0 deletions
137
eastern flames/scripts/draw_outline/draw_outline.gml
Normal file
137
eastern flames/scripts/draw_outline/draw_outline.gml
Normal file
|
@ -0,0 +1,137 @@
|
|||
// Script assets have changed for v2.3.0 see
|
||||
// https://help.yoyogames.com/hc/en-us/articles/360005277377 for more information
|
||||
|
||||
function draw_outline_better(sprite,image,red,green,blue,alpha,outlineWidth,x,y){
|
||||
var mathsw = sprite_get_width(sprite)+(outlineWidth*2);
|
||||
var surf = surface_create(mathsw,mathsw);
|
||||
var surf2 = surface_create(mathsw,mathsw);
|
||||
surface_set_target(surf2);
|
||||
draw_clear_alpha(c_white,0);
|
||||
surface_reset_target();
|
||||
surface_set_target(surf);
|
||||
draw_clear_alpha(c_white,0);
|
||||
|
||||
draw_outline_nofunc_sprite(sprite,image,red,green,blue,alpha,1,mathsw/2,mathsw/2);
|
||||
surface_reset_target();
|
||||
|
||||
repeat(outlineWidth){
|
||||
surface_set_target(surf2);
|
||||
draw_outline_nofunc_surface(surf,red,green,blue,alpha,1,0,0);
|
||||
surface_reset_target();
|
||||
var temp = surf2;
|
||||
surf2 = surf
|
||||
surf = temp;
|
||||
}
|
||||
draw_surface(surf,x- sprite_get_xoffset(sprite)-outlineWidth ,y-sprite_get_yoffset(sprite)-outlineWidth);
|
||||
surface_free(surf);
|
||||
surface_free(surf2);
|
||||
|
||||
draw_sprite(sprite, image, x, y);
|
||||
}
|
||||
|
||||
function draw_outline(sprite,image,red,green,blue,alpha,outlineWidth,func){
|
||||
shader_set(z_outline);
|
||||
static uniw = shader_get_uniform(z_outline,"pixelW");
|
||||
static unih = shader_get_uniform(z_outline,"pixelH");
|
||||
static unicol = shader_get_uniform(z_outline,"theColor");
|
||||
static uniprog = shader_get_uniform(z_outline,"progress");
|
||||
static unioutline = shader_get_uniform(z_outline,"outlineSize");
|
||||
|
||||
shader_set_uniform_f(uniw,texture_get_texel_width(sprite_get_texture(sprite,image)));
|
||||
shader_set_uniform_f(unih,texture_get_texel_height(sprite_get_texture(sprite,image)));
|
||||
shader_set_uniform_f(unicol,red,green,blue,alpha);
|
||||
shader_set_uniform_f(uniprog,1);
|
||||
shader_set_uniform_f(unioutline,outlineWidth);
|
||||
|
||||
func();
|
||||
|
||||
shader_reset();
|
||||
}
|
||||
|
||||
function draw_outline_nofunc_sprite(sprite,image,red,green,blue,alpha,outlineWidth,x,y){
|
||||
shader_set(z_outline);
|
||||
static uniw = shader_get_uniform(z_outline,"pixelW");
|
||||
static unih = shader_get_uniform(z_outline,"pixelH");
|
||||
static unicol = shader_get_uniform(z_outline,"theColor");
|
||||
static uniprog = shader_get_uniform(z_outline,"progress");
|
||||
static unioutline = shader_get_uniform(z_outline,"outlineSize");
|
||||
|
||||
shader_set_uniform_f(uniw,texture_get_texel_width(sprite_get_texture(sprite,image)));
|
||||
shader_set_uniform_f(unih,texture_get_texel_height(sprite_get_texture(sprite,image)));
|
||||
shader_set_uniform_f(unicol,red,green,blue,alpha);
|
||||
shader_set_uniform_f(uniprog,1);
|
||||
shader_set_uniform_f(unioutline,outlineWidth);
|
||||
|
||||
draw_sprite(sprite,image,x,y);
|
||||
|
||||
shader_reset();
|
||||
}
|
||||
|
||||
function draw_outline_nofunc_surface(surf,red,green,blue,alpha,outlineWidth,x,y){
|
||||
shader_set(z_outline);
|
||||
static uniw = shader_get_uniform(z_outline,"pixelW");
|
||||
static unih = shader_get_uniform(z_outline,"pixelH");
|
||||
static unicol = shader_get_uniform(z_outline,"theColor");
|
||||
static uniprog = shader_get_uniform(z_outline,"progress");
|
||||
static unioutline = shader_get_uniform(z_outline,"outlineSize");
|
||||
|
||||
shader_set_uniform_f(uniw,texture_get_texel_width(surface_get_texture(surf)));
|
||||
shader_set_uniform_f(unih,texture_get_texel_height(surface_get_texture(surf)));
|
||||
shader_set_uniform_f(unicol,red,green,blue,alpha);
|
||||
shader_set_uniform_f(uniprog,1);
|
||||
shader_set_uniform_f(unioutline,outlineWidth);
|
||||
|
||||
draw_surface(surf,x,y);
|
||||
|
||||
shader_reset();
|
||||
}
|
||||
|
||||
function draw_text_outline(x,y,width,height,red,green,blue,alpha,outlineWidth,func){
|
||||
var bitches = surface_create(width, height);
|
||||
surface_set_target(bitches);
|
||||
draw_clear_alpha(c_black, 0);
|
||||
|
||||
func();
|
||||
|
||||
shader_set(z_outline);
|
||||
static uniw = shader_get_uniform(z_outline,"pixelW");
|
||||
static unih = shader_get_uniform(z_outline,"pixelH");
|
||||
static unicol = shader_get_uniform(z_outline,"theColor");
|
||||
static uniprog = shader_get_uniform(z_outline,"progress");
|
||||
static unioutline = shader_get_uniform(z_outline,"outlineSize");
|
||||
|
||||
shader_set_uniform_f(uniw,texture_get_texel_width(surface_get_texture(bitches)));
|
||||
shader_set_uniform_f(unih,texture_get_texel_height(surface_get_texture(bitches)));
|
||||
shader_set_uniform_f(unicol,red,green,blue,alpha);
|
||||
shader_set_uniform_f(uniprog,1);
|
||||
shader_set_uniform_f(unioutline,outlineWidth);
|
||||
|
||||
surface_reset_target();
|
||||
draw_surface(bitches, x, y);
|
||||
surface_free(bitches);
|
||||
shader_reset();
|
||||
}
|
||||
//number between 1 and 360
|
||||
function draw_outline_progress(x,y,width,height,red,green,blue,alpha,progress,outlineWidth, func){
|
||||
var bitches = surface_create(width, height);
|
||||
surface_set_target(bitches);
|
||||
draw_clear_alpha(c_black, 0);
|
||||
func();
|
||||
shader_set(z_outline);
|
||||
static uniw = shader_get_uniform(z_outline,"pixelW");
|
||||
static unih = shader_get_uniform(z_outline,"pixelH");
|
||||
static unicol = shader_get_uniform(z_outline,"theColor");
|
||||
static uniprog = shader_get_uniform(z_outline,"progress");
|
||||
static unioutline = shader_get_uniform(z_outline,"outlineSize");
|
||||
|
||||
shader_set_uniform_f(uniw,texture_get_texel_width(surface_get_texture(bitches)));
|
||||
shader_set_uniform_f(unih,texture_get_texel_height(surface_get_texture(bitches)));
|
||||
shader_set_uniform_f(unicol,red,green,blue,alpha);
|
||||
shader_set_uniform_f(uniprog,progress/360)
|
||||
shader_set_uniform_f(unioutline,outlineWidth);
|
||||
|
||||
surface_reset_target();
|
||||
draw_surface(bitches, x, y);
|
||||
surface_free(bitches);
|
||||
shader_reset();
|
||||
}
|
12
eastern flames/scripts/draw_outline/draw_outline.yy
Normal file
12
eastern flames/scripts/draw_outline/draw_outline.yy
Normal file
|
@ -0,0 +1,12 @@
|
|||
{
|
||||
"isDnD": false,
|
||||
"isCompatibility": false,
|
||||
"parent": {
|
||||
"name": "drawing",
|
||||
"path": "folders/Scripts/drawing.yy",
|
||||
},
|
||||
"resourceVersion": "1.0",
|
||||
"name": "draw_outline",
|
||||
"tags": [],
|
||||
"resourceType": "GMScript",
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue