Godot Version
4.3
Question
Hello! I often get very odd autocomplete recommendations in GDScript, attached is what I think is a good example. This is a dictionary of sound effects, and I’m adding more entries. Upon finishing a line and entering a comma, the new() method is recommended. I naturally hit enter to go to the next line and start a new entry but then the autocomplete happens and I have to delete it. This happens to me a lot, is there anything I can do about it other than just shutting all of the autocomplete off?
Hard to tell because you’re not showing us how you are defining the Dictionary. Consider copying and pasting the code and formatting it with ``` above and below the code.
Sorry! Here’s the code, but it is a standard dictionary. As far as I’m aware you can’t make a typed dictionary?
var sounds: Dictionary = {
"bush_rustle" = preload("res://assets/sfx/sfx_bushRUSTLE_02.wav"),
"cauldron_bubbles" = preload("res://assets/sfx/sfx_cauldronBUBBLES_01.wav"),
"cauldron_open" = preload("res://assets/sfx/sfx_cauldronOPEN_(C-Major)_01.wav"),
"cauldron_close" = preload("res://assets/sfx/sfx_cauldronCLOSE_(C-Major)_01.wav"),
"cauldron_fire" = preload("res://assets/sfx/sfx_cauldronFIRE_01.wav"),
"dialogue_begin" = preload("res://assets/sfx/sfx_dialogueBEGIN_(C-Major)_01.wav"),
"dialogue_end" = preload("res://assets/sfx/sfx_dialogueEND_(C-Major)_01.wav"),
"dialogue_navigate" = preload("res://assets/sfx/sfx_dialogueNAVIGATE_01.wav"),
"dialogue_next_a" = preload("res://assets/sfx/sfx_dialogueNEXT_(C-Major)_01(a).wav"),
"dialogue_next_b" = preload("res://assets/sfx/sfx_dialogueNEXT_(C-Major)_01(b).wav"),
"dialogue_next_c" = preload("res://assets/sfx/sfx_dialogueNEXT_(C-Major)_01(c).wav"),
"dialogue_next_d" = preload("res://assets/sfx/sfx_dialogueNEXT_(C-Major)_01(d).wav"),
"dialogue_select" = preload("res://assets/sfx/sfx_dialogueSELECT_01.wav"),
"footsteps_grass_a" = preload("res://assets/sfx/sfx_footstepsGRASS_03(a).wav"),
"footsteps_grass_b" = preload("res://assets/sfx/sfx_footstepsGRASS_03(b).wav"),
"footsteps_stone_a" = preload("res://assets/sfx/sfx_footstepsSTONE_02(a).wav"),
"footsteps_stone_b" = preload("res://assets/sfx/sfx_footstepsSTONE_02(b).wav"),
"footsteps_water_a" = preload("res://assets/sfx/sfx_footstepsWATER_01.wav"),
"footsteps_water_b" = preload("res://assets/sfx/sfx_footstepsWATER_02.wav"),
"footsteps_water_c" = preload("res://assets/sfx/sfx_footstepsWATER_03.wav"),
"inventory_open" = preload("res://assets/sfx/sfx_inventoryOPEN_(C-Major)_01.wav"),
"inventory_close" = preload("res://assets/sfx/sfx_inventoryCLOSE_(C-Major)_01.wav"),
"inventory_navigate" = preload("res://assets/sfx/sfx_inventoryNAVIGATE_01.wav"),
"inventory_tabs" = preload("res://assets/sfx/sfx_inventoryTABS_01.wav"),
"item_pickup" = preload("res://assets/sfx/sfx_itemPICKUP_01.wav"),
"money" = preload("res://assets/sfx/sfx_money.wav"),
"pop" = preload("res://assets/sfx/sfx_pop.wav"),
"shovel_dig" = preload("res://assets/sfx/sfx_shovelDIG_01.wav"),
"tool_unequip" = preload("res://assets/sfx/sfx_shovelUNEQUIP_01.wav"),
"tool_menu_open" = preload("res://assets/sfx/sfx_toolmenuOPEN_01.wav"),
"tool_menu_close" = preload("res://assets/sfx/sfx_toolmenuCLOSE_01.wav"),
"tool_menu_navigate" = preload("res://assets/sfx/sfx_toolmenuMOUSEOVER_01.wav"),
"tool_menu_select" = preload("res://assets/sfx/sfx_toolmenuSELECT_01.wav"),
"tree_rustle" = preload("res://assets/sfx/sfx_treeRUSTLE_02.wav"),
"wind_long" = preload("res://assets/sfx/sfx_windLONG_03.wav"),
"wind_medium" = preload("res://assets/sfx/sfx_windMEDIUM_01.wav"),
"wind_short" = preload("res://assets/sfx/sfx_windSHORT_01.wav"),
}
You cannot in 4.3, but in 4.5.1.stable you can. This would solve your problem I expect. Dunno if it’s enough for you to upgrade.
var sounds: Dictionary[String, AudioStream] = {
"bush_rustle" = preload("res://assets/sfx/sfx_bushRUSTLE_02.wav"),
"cauldron_bubbles" = preload("res://assets/sfx/sfx_cauldronBUBBLES_01.wav"),
"cauldron_open" = preload("res://assets/sfx/sfx_cauldronOPEN_(C-Major)_01.wav"),
"cauldron_close" = preload("res://assets/sfx/sfx_cauldronCLOSE_(C-Major)_01.wav"),
"cauldron_fire" = preload("res://assets/sfx/sfx_cauldronFIRE_01.wav"),
"dialogue_begin" = preload("res://assets/sfx/sfx_dialogueBEGIN_(C-Major)_01.wav"),
"dialogue_end" = preload("res://assets/sfx/sfx_dialogueEND_(C-Major)_01.wav"),
"dialogue_navigate" = preload("res://assets/sfx/sfx_dialogueNAVIGATE_01.wav"),
"dialogue_next_a" = preload("res://assets/sfx/sfx_dialogueNEXT_(C-Major)_01(a).wav"),
"dialogue_next_b" = preload("res://assets/sfx/sfx_dialogueNEXT_(C-Major)_01(b).wav"),
"dialogue_next_c" = preload("res://assets/sfx/sfx_dialogueNEXT_(C-Major)_01(c).wav"),
"dialogue_next_d" = preload("res://assets/sfx/sfx_dialogueNEXT_(C-Major)_01(d).wav"),
"dialogue_select" = preload("res://assets/sfx/sfx_dialogueSELECT_01.wav"),
"footsteps_grass_a" = preload("res://assets/sfx/sfx_footstepsGRASS_03(a).wav"),
"footsteps_grass_b" = preload("res://assets/sfx/sfx_footstepsGRASS_03(b).wav"),
"footsteps_stone_a" = preload("res://assets/sfx/sfx_footstepsSTONE_02(a).wav"),
"footsteps_stone_b" = preload("res://assets/sfx/sfx_footstepsSTONE_02(b).wav"),
"footsteps_water_a" = preload("res://assets/sfx/sfx_footstepsWATER_01.wav"),
"footsteps_water_b" = preload("res://assets/sfx/sfx_footstepsWATER_02.wav"),
"footsteps_water_c" = preload("res://assets/sfx/sfx_footstepsWATER_03.wav"),
"inventory_open" = preload("res://assets/sfx/sfx_inventoryOPEN_(C-Major)_01.wav"),
"inventory_close" = preload("res://assets/sfx/sfx_inventoryCLOSE_(C-Major)_01.wav"),
"inventory_navigate" = preload("res://assets/sfx/sfx_inventoryNAVIGATE_01.wav"),
"inventory_tabs" = preload("res://assets/sfx/sfx_inventoryTABS_01.wav"),
"item_pickup" = preload("res://assets/sfx/sfx_itemPICKUP_01.wav"),
"money" = preload("res://assets/sfx/sfx_money.wav"),
"pop" = preload("res://assets/sfx/sfx_pop.wav"),
"shovel_dig" = preload("res://assets/sfx/sfx_shovelDIG_01.wav"),
"tool_unequip" = preload("res://assets/sfx/sfx_shovelUNEQUIP_01.wav"),
"tool_menu_open" = preload("res://assets/sfx/sfx_toolmenuOPEN_01.wav"),
"tool_menu_close" = preload("res://assets/sfx/sfx_toolmenuCLOSE_01.wav"),
"tool_menu_navigate" = preload("res://assets/sfx/sfx_toolmenuMOUSEOVER_01.wav"),
"tool_menu_select" = preload("res://assets/sfx/sfx_toolmenuSELECT_01.wav"),
"tree_rustle" = preload("res://assets/sfx/sfx_treeRUSTLE_02.wav"),
"wind_long" = preload("res://assets/sfx/sfx_windLONG_03.wav"),
"wind_medium" = preload("res://assets/sfx/sfx_windMEDIUM_01.wav"),
"wind_short" = preload("res://assets/sfx/sfx_windSHORT_01.wav"),
}
1 Like