hi! just discovered your channel, great video it isn't related to this this video theme at all, but at 8:16 it got me thinking: in other languages i was advised to avoid things like this loop which calls the get_children() function/method every single time, as function calls are expansive and in this case unessessary. so instead i was taught to declare a variable that calls this function only once, and loop through this variable. i know that some languages optimize this automatically, but i'm new to godot, so does godot script also have optimizations like this?
@cashewolddew20 сағат бұрын
That is a nice idea! I think it depends on which resources you want to use. If you want to use more CPU power, you can do it like in the video. If you want to use more memory, you store things in variables. However, in this case, optimization isn't that necessary, as the function is called only once, and it loops over around 100 elements, which is done almost instantly. 🥜 Thanks a lot for subscribing! 🥜
@حاتمإسماعيل-ب7رКүн бұрын
Great tutorial man
@GoDogGameКүн бұрын
I hit subscribe before the plug lol
@cashewolddewКүн бұрын
You're a real one! 🥜
@BenJTGERКүн бұрын
Pressed Subscribe with you <3
@635574Күн бұрын
Another solution for the mouse over passive elements is to add a flat button(it does not render), but that seems to block the tooltips and other properties that require focus underneath.
@cashewolddewКүн бұрын
Hey, that's really smart! Thanks for the cool tip! 🥜
@t.e.e.j.a.yКүн бұрын
Awesome tutorial 🙏🏼
@prajwalparashkar9793Күн бұрын
This is very helpful thanks
@TheWootfish2 күн бұрын
This is really good stuff, and not only for working with cursors - eg the idea you use in implementing apply_cursor_to_node_type seems very broadly useful
@cashewolddewКүн бұрын
Thank you! It would be fun to see what solutions others come up with in regards to changing the cursor for complex UI components. 🥜
@senjos2 күн бұрын
The water at the beginning looks nice ;)
@hi-ef8eh2 күн бұрын
I recently made a virtual PC for my game and had to work with cursor icons. Thanks to this tutorial I know I can make the I-beam icon better using the offsets
@cashewolddewКүн бұрын
I'd love to see that game out one day! Thanks for the support 🥜
@kevinmakesgames2 күн бұрын
Great tutorial! I haven't needed to customize cursors yet but this was very well explained. Definitely a video I'll return to when I need it.
@cashewolddew2 күн бұрын
I'm so happy to hear that! I'd be glad to know it helped you 🥜
@Lowwaels2 күн бұрын
thanks
@danforce42222 күн бұрын
Useful videos! Subscribed
@cashewolddew2 күн бұрын
Thanks for the sub! 🥜 Glad to see you here again!
@simmzzzz3 күн бұрын
Amazing tutorial! Thanks!
@VhnzSanches4 күн бұрын
10:00
@IamTheZachi5 күн бұрын
Very helpful, might look into more tutorials from you. :]
@cashewolddew5 күн бұрын
I'd love to see you more often here! 😊 Glad you liked it 🥜
@thinktanium97895 күн бұрын
will there be an updated version of this tutorial with the new tile-map-layer node?
@cashewolddew5 күн бұрын
Yes. I am waiting for godot 4.4 so that I do not spam everyone with pathfinding videos on each Godot version, but this will for sure be remade.
@Sashiwa_Kepocalm6 күн бұрын
Thank you, I watched tutorials on autotiling and none made sense, except yours. ♥
@cashewolddew6 күн бұрын
I'm glad it helped you! 🥜
@СергейНикитин-д2д6 күн бұрын
Dude, use command pattern.
@cashewolddew6 күн бұрын
That's actually a brilliant idea. Thanks for pointing it out! 🥜🥜
@breckheck6 күн бұрын
Had no idea the match block had so many features. Thanks for posting!
@luckycapgaming59577 күн бұрын
Very comprehensive video, but I still couldn't find what I'm looking for. I'm trying to change my tilemap during runtime for a card game (my tilemap has my cards, and cards are played on two 3x5 grids).
@cashewolddew6 күн бұрын
Thanks for letting me know. This tutorial mostly covers the editor side of tilemaps. I'll be looking into making a video for showcasing things you can do with tilemaps through code.
@snowy82049 күн бұрын
Is it possible to match in any order? like instead doing [meat, potato, potato] [potato, meat, potato] [potato, potato, meat] doing another way that still includes 2 potatos and 1 meat without having to write all possible options? I just started godot and this would be insanely helpfull
@cashewolddew9 күн бұрын
That's a very good question, however, the order matters there.. I had the same issue while trying to make the recipe example in this video. You could, however, always sort the array you pass to match.
@chasmkek10 күн бұрын
I randomly stumbled on this video. I was pretty familiar with tilesets already but I still learned a few amazing things here (especially the scene collection in tiles). Such an amazing and well done video. You have such a likeable personality, dont stop making videos!
@cashewolddew10 күн бұрын
Awh, thank you so much! I'm so excited to make more 🥜
@sebastienmorin902010 күн бұрын
Thank you for giving me one more procrastination tool: making icons for my Godot that no one sees :'D
@cashewolddew10 күн бұрын
Oh nooo! Ha ha ha. I hope this also helps you with organizing your stuff 😄🥜
@sebastienmorin90209 күн бұрын
@@cashewolddew It's great actually, thank you for the informative and fun video. I browsed a couple more, and you are doing some great stuff :D
@alphajaehoon10 күн бұрын
Fantastic tutorial, thank you very much for this! :)
@cashewolddew10 күн бұрын
Thanks a lot for the comment! 🥜
@phazze11 күн бұрын
In my experience, it was too slow. However using AStarGrid2D worked extremely fast and can be further optimized to choose which algorithm it would use as well as jumping points.
@konstantinosmonastiroglu751411 күн бұрын
Switch kiss rizz moskvich
@kostar511 күн бұрын
looks like TS for some reason
@valeriaveraherrera758711 күн бұрын
Great tutorial! Which would be the correct way to keep track of the number of seeds eaten by each chicken? something like an unique score for each one? I tried adding a variable "score" to my chickens and referencing the chicken scene in my food script and calling chicken.score += 1 inside the on body entered function but I get that chicken is always null
@cashewolddew11 күн бұрын
Instead of the chicken being referenced, you could simply modify the score to the node was passed in the body entered function.
@valeriaveraherrera758711 күн бұрын
@@cashewolddew omg I didn't even see that a Node2D was passed to the function and I spent like an hour trying different methods, thank you so much!
@vapor_rains12 күн бұрын
we have the same exact version, did the same exact thing as you only to get tmp files instead of an .exe file when I render..
@cashewolddew11 күн бұрын
Could you give me some more details? On what operating system are you? Are you looking in the location of the export?
@Vexcenot12 күн бұрын
15:20 5:12
@FzAKHocXFt15 күн бұрын
Make a video about the Encryption tab How to compile your template.
@cashewolddew14 күн бұрын
I added it to the list of videos I need to do 😊🥜
@smokelingers15 күн бұрын
16:34 Classic
@thanatos45416 күн бұрын
You can also avoid those warnings by connecting in a different lifetime function that doesn't run more than once, like _init()
@Eaode17 күн бұрын
11:05 quick question: how does is_amount_of() know what array to check? Does structuring the match case this way automatically run that function on that array somehow? I just don't know how that works given that the function is_amount_of was only passed parameters about the type and required quantity, and wasn't passed the array or foods to check.
@cashewolddew16 күн бұрын
Oh no, there's no match magic going on. Actually, since this was just a simple example, I just took the global variable containing the data and filtered that like this: func is_amount_of(type: Food.FOOD_TYPE, number: int): var ingredients_of_type = ingredients.filter( func(ingredient): return ingredient[1] == type ).size() return ingredients_of_type == number I'll add the source code soon so you can see all the details 😊🥜
@playbehnder17 күн бұрын
i didnt know about this. Coool. I think I can use it in my project.
@63557417 күн бұрын
Ok finally someone show how yo make an alpha from an image withiut shaders. I had some plans that wouldnt work without it. Like localised animated texture pools with a dynamic size alpha.
@cashewolddew17 күн бұрын
Are you talking about the Canvas Groups? If so, then I'm really happy I mentioned them 😄🥜
@maxhamilton326018 күн бұрын
This is a really fantastic and insightful video!!! It's a bit weird to introduce terrain sets before painting physics properties, but it's good to actually finally understand terrain sets properly!!
@cashewolddew18 күн бұрын
I'm really happy you found it helpful!
@papastuffy19 күн бұрын
bro, most of this was WAY above my skill level for right now, but it 100% reinforced the idea that game dev is like game play, it's not always about what's easy it's about creative problem solving. look at the problem and then look at it again from a different angle (pun intended). work like this helps me believe i might actually be able to pull off my game idea. and i thank you for that.
@cashewolddew19 күн бұрын
I really, really appreciate your comment! I especially had troubles with transforming the polygon into a mask. When I had the idea of taking a screenshot of the game I thought it had to be the worst idea, but actually, it worked and it made the experience so much fun! I also don't think this is above your skill. Anything can be learn and as long as you stay motivated, you'll make it for sure!