YoYoGames / GameMaker-Bugs

Public tracking for GameMaker bugs
21 stars 8 forks source link

Ticket: #180934 - Additional DnD Codeblocks #3650

Open iampremo opened 1 year ago

iampremo commented 1 year ago

Ticket: [Ticket #180934]

Description: Hi, I submitted the original question for the Q&A and noted this response from you. "There are many codeblocks missing that are possible within GML, but not in DnD without using execute code blocks and raw GML, so could that be an area of improvement going forward? Please contact us to discuss more about what type of blocks you feel are missing." These functions are used often and don't have codeblocks : 1/ point_direction 2/ point_distance 3/ lengthdir_x 4/ lengthdir_y I know we can call them with the function_call codeblock, but this is not good to use for a few reasons. Firstly, you get no help when entering function arguments. The help you get down in the status window when typing a function in GML is paramount when using the function. To not have the same help in DnD, a part of Gamemaker which is supposed to be more user friendly, is absurd. Secondly, there is no middle click on the function you've typed to allow you to read about the arguments. If you press F1 after typing the function in, you get the help page for function_call instead of the function you are trying to use. It's a very difficult system to use, and could do with a review by someone who actually uses it. While we're on it, context sensitive middle clicks on your own scripts which are in "Execute Script" codeblocks also don't work, so could do with some love too.

An enum codeblock would be very useful as we need to use "Execute Code" codeblocks to set them up now.

When working with switches, there is no codeblock to allow multiple cases to use the same block of code. One case can only service one block of code, as opposed to GML which allows multiple cases to serve one block of code.

I was going to request a destroy codeblock for data structures, but have literally just noticed the free codeblock after working in DnD for years. Mind blown! ha You have "create" codeblocks for data structures, which is the GML term for creating them, but it's confusing because you use the term "free" on the code block that actually destroys them. In the past I've searched for destroy but didn't find anything for data structures. The naming on this should be consistent with GML, or at least destroy should be a tag for the "free" codeblock too.

There are zero layer codeblocks, so anything there would be handy. Things like layer_depth, layer_get_id, layer_create, layer_tilemap_get_id, etc. are all things I've used in DnD before as function calls, or just as assign variables, but it's cumbersome, so having some layer codeblocks would be nice.

That's all I can think of right now, so thanks for listening guys.

Also as a side, while we're talking DnD, inherit event seems to be broken in DnD. It does not add a call parent codeblock to the event that gets created in the child. I can log a support call if needed though.

Benefit: These are all benefits for anyone using DnD in the future. They are also ways in which DnD and GML are staying consistent in their functionality moving forward.

Totobal5 commented 1 year ago

Please !!