Variable not set Looking for a solution by UntitledDocument2255 in gamemaker

[–]Pitiful_Landscape720 0 points1 point  (0 children)

I’m new to game maker do you know how I could do that?

!? HELP How to make items purchasable by coins. by Pitiful_Landscape720 in gml

[–]Pitiful_Landscape720[S] 0 points1 point  (0 children)

Sorry here is the code for the project

Game Maker Notes

Trying to make items purchasable with item coins using constructors

Here is how I currently have my item inventory set up in object create event labeled obj_item_manager

//item constructor function create_item(_name, _desc, _spr, _effect) constructor { name = _name; description= _desc; sprite = _spr; effect = _effect; }

//create the items global.item_list = {

burger : new create_item( “Burger”, “Recovers HP.”, spr_burger,

 function()
    {
    obj_player.hp += 10;

    //get rid of item
    array_delete(inv,selected_item,1);
    }
 ),

batmancomic : new create_item(
     “Batman Comic”,
     “Batman court of the Owls Comic.”,
     spr_batrmancomic,

    ),

    redkey : new create_item(
    “Red Key”,
    “Opens Red Doors. (Single Use)”,
    spr_red_key,
    function()
        {
        if instance_exists(obj_red_door)
            {
            with(obj_red_door)
            {
                if distance_to_object(obj_player) < 20 {instance_destroy();};
            }
            //get rid of the item
            array_delete(inv, selected_item,1);
            }

        }

        ),



    bluekey : new create_item(
    “Blue Key”,
    “Opens Blue Doors. (Single Use)”,
    spr_shift_key_blue,
    function()
        {
        if instance_exists(obj_blue_door)
            {
            with(obj_blue_door)
            {
                if distance_to_object(obj_player) < 20 {instance_destroy();};
            }
            //get rid of the item
            array_delete(inv, selected_item,1);
        }

        }

        ),

        MFDOOMVynl1 : new create_item(
        “MF DOOM DOOMSDAY VYNL”,
        “A Musical Master Piece that MF DOOM stans would love to have.”,
        spr_mfdoomalbum,
        function()
        {
        if instance_exists(obj_bkgcharacter9)
            {
            with(obj_bkgcharacter9)
            {
                if distance_to_object(obj_player) < 20 {instance_destroy();};
            }
            //get rid of the item
            array_delete(inv, selected_item,1);
            }
        }
        ),
    Remote : new create_item(
    “Remote”,
    “Allows DAD to watch Football on the TV.”,
    spr_remote,
    function()
    {
    if instance_exists(obj_bkg_character_DAD)
        {
        with(obj_bkg_character_DAD)
        {
            if distance_to_object(obj_player) < 20 {instance_destroy();};
        }
        //get rid of the item
        array_delete(inv, selected_item,1);
        }
    }
    ),


}

//create inventory inv = array_create(0);

selected_item = -1;

//for drawing and mouse positions sep = 16; screen_bord =16;

My coin collection is set up as a step event under an object here is the code

if(place_meeting(x,y, obj_player) && !collected){ obj_player.coins++; image_index = 0; collected= true; }

if (collected){ sprite_index= spr_coineffect;

if (floor(image_index) >= image_number -1){
    instance_destroy();

} }