Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

Struggling

A topic by guy·de·yoyo created 20 days ago Views: 31 Replies: 2
Viewing posts 1 to 2
(1 edit)

Hi,

First - thank you for your time and effort. I would really be grateful for some advice on this. The documentation link is unfortunately down and I can’t find an answer through google or discord searches.

I am using IDE v2024.11.0.179 / Runtime v2024.11.0.226, Windows with GMS2 YYC compilation.

I have created an empty room, with an object that has only CREATE and STEP scripts, trying to replicate just the bear bones of what your demo shows. That is, either removing the cursor or replacing it with a specific sprite.

That is to say, in CREATE, I only have:

//myCursor = native_cursor_create_from_sprite(spr_cursor, 0);
window_set_cursor(cr_none);
native_cursor_reset();

In STEP, I only have: native_cursor_update();

However, I get this error each time:

Unhandled exception { longMessage : "ERROR in action number 1
of Create Event for object <undefined>:
buffer_get_size argument 1 incorrect type (unknown) expecting a Number (YYGI32)", message : "buffer_get_size argument 1 incorrect type (unknown) expecting a Number (YYGI32)", script : "gml_Script_native_cursor_prepare_buffer", stacktrace : [ "gml_Script_native_cursor_prepare_buffer (line 8)","gml_Script_native_cursor_reset (line 2)","gml_GlobalScript_MouseInitialisation (line 3)" ], line : 0 }

I’ve tried all kinds of different ways, yet always I get errors related to native_cursor and I’m feeling incredibly disheartened! Your advice would be welcomed.

Developer

Allegedly, you have a script called MouseInitialisation that calls native_cursor_reset on game start.

There’s not currently a good way for me to make sure that the extension initializes before any such uses, so don’t do that.

Thank you for clarifying that, it’s appreciated. So in fact, this works:

myCursor = native_cursor_create_from_sprite(spr_cursor, 0);
window_set_cursor(cr_none);
//native_cursor_reset();
native_cursor_set(myCursor);