• Hey Guest! Ever feel like entering a Game Jam, but the time limit is always too much pressure? We get it... You lead a hectic life and dedicating 3 whole days to make a game just doesn't work for you! So, why not enter the GMC SLOW JAM? Take your time! Kick back and make your game over 4 months! Interested? Then just click here!

Question - General I need a Transparent Borderless Window Extension. Willing to commission

Hi, I was wondering if there was an existing marketplace extension that allows for a transparent window. I've found a few topics on this, but all the links are dead and they're years old anyway. I'm sure this is possible using dll and bmp masks. I'm using 2.3, so if anyone knows of a working extension, or knows how to make one I would be willing to pay to commission the needed script to get this working.

My only requirements are that the window shows the desktop instead of the "black space" background. I would also run the game in borderless window mode and allow the window to be moved, so that background would need to update if the window is moved, or just be straight up transparent somehow. My goal is to have a small character in the corner of your window, that you could possibly play games with. Thank you!
 

FoxyOfJungle

Kazan Games
Hello !
About the transparent window I don't have it (I already had one on GM 8, but I don't know if it works yet), but I have the code that drags the window and I believe it can be useful for you:

GML:
// CREATE:
w_drag = false;
a_x1 = 0;
a_y1 = 0;

//STEP:
if !window_get_fullscreen()
{
    if (w_drag)
    {
        a_x1 = window_get_x() + window_mouse_get_x() - b_x1;
        a_y1 = window_get_y() + window_mouse_get_y() - b_y1;
        window_set_position(a_x1, a_y1);
    }
    
    if window_get_y()<0 {window_set_position(a_x1, 0)};

    if point_in_rectangle(window_mouse_get_x(),window_mouse_get_y(),0,0,display_get_gui_width(),display_get_gui_height())
    {
        if mouse_check_button_pressed(mb_left)
        {
            b_x1 = window_mouse_get_x();
            b_y1 = window_mouse_get_y();
            w_drag = true;
        }
    }
    if (mouse_check_button_released(mb_left)) {w_drag = false};
}
 
Top