How to disable a tile layer when press a key.

So, for example, how can i do to desactive the tile layer when i press enter and then reactive it when press enter again?
 
I would write something like this. Hope this helps put you in the right direction!

CREATE function:
GML:
currentStep = 0;
KEY-PRESS ENTER function.
GML:
switch (currentStep) {
     case 0: layer_set_visible("Tile_namehere",false); currentStep = 1; break;
     case 1: layer_set_visible("Tile_namehere",true); currentStep = 0; break;
    }
 

jobjorgos

Member
It works in my game, heres my code:

Create event:
GML:
tilesets_toggle=0;
Deck_Effects_[0] = layer_get_id("Col");
Deck_Effects_[1] = layer_get_id("Silhouette");
Deck_Effects_[2] = layer_get_id("Liquid");
Deck_Effects_[3] = layer_get_id("Pavement");
Deck_Effects_[4] = layer_get_id("Foilage");
Deck_Effects_[5] = layer_get_id("Deck_Gape");
Deck_Platforms_[0] = layer_get_id("Deck_0");
Deck_Platforms_[1] = layer_get_id("Deck_1");
Deck_Platforms_[2] = layer_get_id("Deck_2");
Deck_Platforms_[3] = layer_get_id("Deck_3");

Press Z key event
GML:
/// @description turn on/off visibility deck layers
if tilesets_toggle==0{
    tilesets_toggle=1;
    toggle_all_decks(true);
}else{
    tilesets_toggle=0;
    toggle_all_decks(false);
}

FUNCTION:
GML:
function toggle_all_decks(_toggle) {
    for (var i = 0; i < array_length(Deck_Effects_); i++) {
        layer_set_visible(Deck_Effects_[i], _toggle);
    }
    for (var i = 0; i < array_length(Deck_Platforms_); i++) {
        layer_set_visible(Deck_Platforms_[i], _toggle);
    }
}
 
Last edited:
Top