import{_ as s,c as a,o as e,d as n}from"./app.c95a51e0.js";const d=JSON.parse('{"title":"Clickables","description":"","frontmatter":{},"headers":[],"relativePath":"public/gamedevtree/docs/clickables.md","lastUpdated":null}'),l={name:"public/gamedevtree/docs/clickables.md"},t=n(`

Clickables

Clickables are any kind of thing that you can click for an effect. They're a more generalized version of Buyables.

DO NOT USE THESE TO MAKE THINGS THAT YOU CLICK REPEATEDLY FOR A BONUS BECAUSE THOSE ARE AWFUL.

There are several differences between the two. One is that a buyable's saved data is its amount as a Decimal, while Clickables store a "state" which can be a number or string, but not Decimal, array, or object). Buyables have a number of extra features which you can see on their page. Clickables also have a smaller default size.

You can get and set a clickable's state with getClickableState(layer, id) and setClickableState(layer, id, state). You can use clickableEffect(layer, id) to get the current effects of a clickable.

Clickables should be formatted like this:

js
    clickables: {
        rows: # of rows
        cols: # of columns
        masterButtonPress() // **optional** If this is present, an additional button will appear above the clickables.
                            // pressing it will call the function.
        masterButtonText: "Press me!" // **optional** text to display on the Master Button
        showMasterButton(){} //**optional**, a function determining whether or not to show the button. Defaults to true if absent.
        11: {
            display() {return "Blah"},
            etc
        }
        etc
    }

Features:

`,9),o=[t];function p(c,r,i,y,u,F){return e(),a("div",null,o)}const b=s(l,[["render",p]]);export{d as __pageData,b as default};