This definitely solved that issue! Thank you so much, this means more than you know since I've been trying to get a system like this working for many days!
Theres another smaller issue that was created from the code you gave me though. I had this piece of code in my chunks placeholder step event:
//Set 3 random instances as chest sprites
while (global.chest_minimum < 3) {
inst = instance_find(chunks,irandom(instance_number(chunks)-1));
if (inst.sprite_index != spr_chunks_chest) {
inst.sprite_index = spr_chunks_chest;
}
global.chest_minimum++;
}
It seems that because GMRoomPack activates on room start, it doesn't give the placeholder object time to change its sprite, therefore I'm not able to target specific sprites. I can easily target different sprites and say:
with(obj_room) {
if sprite_index = chest {
//activate the code you sent me, but for a script containing chest rooms
} //and then and else if statement for a different sprite index, for a script containing normal rooms.
I've tried different variations, but there's either errors or the code just doesn't replace the placeholders. For context, I want rooms like chests and shops which ALWAYS appear on a map (like in Binding of Isaac, or Enter the Gungeon). How would you approach doing this?