Edit of asset "Gremlins Toolbox" Accepted

Old/Current New/Edit
Title Gremlins Toolbox
Description A collection of 2D nodes that act as components, to drag and drop into your games. Been very useful to me when crunching thrue game jams :D

Latest addition:
--> code to help you debug, now by enabling the "print_debug" variable of many components (some don't need it as they're very straightforward)

Now includes these components:
2D:
-> area_checking_group lets you chek for an area/body of a target group
-> area_that_counts lets you count the number of elements from a target group inside an area
-> blinking_anim makes things blink
-> bullet creates projectiles that can damage and pierce a given number of bodies
-> damageable makes something damageable, with a given number of hp (bullet and damageable components work well together)
-> draggable makes anything draggable by your mouse cursor or a given area (if needed). currently can only be dragged from the middle of the object, and supports multiple modes
-> dyn_index_setter makes the z_index of its parent dependant on its global_position.y ; when a character is lower than an object on screen, it will appear "in front" of that object
-> follow_cursor makes its parent follow the mouse cursor, with configurable latency
-> grow is a versatile component that can be used for grow animation, random scale between two values, and despawn shrinking animations
-> image_based_dialogue is a small simple dialogue manager where you show images/animations as dialogue and you can make it go both ways. Use it for small simple dialogless games personnally :))
-> index_setter is basically dyn_index_setter but that runs only on _ready(). For static objects
-> link_two_nodes link is a line2D that links two nodes, and refreshes this link every frame
-> look_at makes a node use the _look_at() function on another node / on the mouse cursor
-> platformer_chara is a basic template for a 2D platformer character
-> platformer_npc is a basic template for a 2D character npc. Can chase, walk around, flee...
-> pos_switch is a node I included and forgot what it does. Probably makes a node switch between two position ..?
-> push is a node I included and forgot what it does. Probably makes a node push something ..? i dunno really
-> rand_flip is a node that makes a node2D flip_h random on _ready
-> random_modulate changes the modulate value of parent, making variations in color between different instance of a same object
-> selection_indicator makes a given node smoothly scale up when activated, and return it to its previous size when deactivated. Great for some sweet UI game juice when the UI is image-based
-> simple_anims lets you do some simple animations on a node, hassle free ! Make them wiggle, breath, vibrate, etc !
-> spawn lets you spawn a node, simple.
-> stylish_button makes any node grow on contact with mouse/area, and react to given input ! I think thats the node I use the most to make some quick image-based UI
-> top_down_chara is a simple template for a top-down character2D that can move around using 8 way movement
-> top_down_npc is a template to make top-down npcs that can chase, wander, or flee
-> top_down_motion_sensor is a node that checks the velocity of a top_down character2D. But I don't remember why I even made it
-> up_down makes a node go up and down, in a simple manner. granny of the simple_animations node. might be deprecated and deleted in favor of the simple_animations component

TODO:
-the platformer_chara, platformer_npc, top_down_chara and top_down_npc need to be made classes, unusable for the moment as components (but work well, the code can be copy-pasted
-add some 3D traductions of some of the components
-investigate wtf is pos_switch and push
-clean up the @icon statements (they use icons from an icon pack online, it's bloat)
A collection of 2D nodes that act as components, to drag and drop into your games. Been very useful to me when crunching thrue game jams :D

Latest addition:
--> code to help you debug, now by enabling the "print_debug" variable of many components (some don't need it as they're very straightforward)

Now includes these components:
2D:
-> area_checking_group lets you chek for an area/body of a target group
-> area_that_counts lets you count the number of elements from a target group inside an area
-> blinking_anim makes things blink
-> bullet creates projectiles that can damage and pierce a given number of bodies
-> damageable makes something damageable, with a given number of hp (bullet and damageable components work well together)
-> draggable makes anything draggable by your mouse cursor or a given area (if needed). currently can only be dragged from the middle of the object, and supports multiple modes
-> dyn_index_setter makes the z_index of its parent dependant on its global_position.y ; when a character is lower than an object on screen, it will appear "in front" of that object
-> follow_cursor makes its parent follow the mouse cursor, with configurable latency
-> grow is a versatile component that can be used for grow animation, random scale between two values, and despawn shrinking animations
-> image_based_dialogue is a small simple dialogue manager where you show images/animations as dialogue and you can make it go both ways. Use it for small simple dialogless games personnally :))
-> index_setter is basically dyn_index_setter but that runs only on _ready(). For static objects
-> link_two_nodes link is a line2D that links two nodes, and refreshes this link every frame
-> look_at makes a node use the _look_at() function on another node / on the mouse cursor
-> platformer_chara is a basic template for a 2D platformer character
-> platformer_npc is a basic template for a 2D character npc. Can chase, walk around, flee...
-> pos_switch is a node I included and forgot what it does. Probably makes a node switch between two position ..?
-> push is a node I included and forgot what it does. Probably makes a node push something ..? i dunno really
-> rand_flip is a node that makes a node2D flip_h random on _ready
-> random_modulate changes the modulate value of parent, making variations in color between different instance of a same object
-> selection_indicator makes a given node smoothly scale up when activated, and return it to its previous size when deactivated. Great for some sweet UI game juice when the UI is image-based
-> simple_anims lets you do some simple animations on a node, hassle free ! Make them wiggle, breath, vibrate, etc !
-> spawn lets you spawn a node, simple.
-> stylish_button makes any node grow on contact with mouse/area, and react to given input ! I think thats the node I use the most to make some quick image-based UI
-> top_down_chara is a simple template for a top-down character2D that can move around using 8 way movement
-> top_down_npc is a template to make top-down npcs that can chase, wander, or flee
-> top_down_motion_sensor is a node that checks the velocity of a top_down character2D. But I don't remember why I even made it
-> up_down makes a node go up and down, in a simple manner. granny of the simple_animations node. might be deprecated and deleted in favor of the simple_animations component

TODO:
-the platformer_chara, platformer_npc, top_down_chara and top_down_npc need to be made classes, unusable for the moment as components (but work well, the code can be copy-pasted
-add some 3D traductions of some of the components
-investigate wtf is pos_switch and push
-clean up the @icon statements (they use icons from an icon pack online, it's bloat)
Category Scripts
License MIT
Repository Provider Gogs/Gitea/Codeberg
Repository Url https://codeberg.org/filemon_filemon/gremlins-toolbox
Issues Url https://codeberg.org/filemon_filemon/gremlins-toolbox/issues
Godot version Godot 4.1
Version String 0.15 0.15
Download Commit 472d50bd049ab170d95fa49a4a8c9c69346a5109 472d50bd049ab170d95fa49a4a8c9c69346a5109
Download Url (Computed) https://codeberg.org/filemon_filemon/gremlins-toolbox/archive/472d50bd049ab170d95fa49a4a8c9c69346a5109.zip https://codeberg.org/filemon_filemon/gremlins-toolbox/archive/472d50bd049ab170d95fa49a4a8c9c69346a5109.zip
Icon Url https://gram.social/storage/m/_v2/893089312342452930/3dc769ff5-aadbb1/t4Yrat8DgMer/JSxrskOBdOJJ2XLXC8JdANhhl4q9TM7A1wFIEwoh.jpg