Here's the alternate solution that let's you use the build-in info room type. Don't mind me. I just want to show it's possible ![]()
ffc script DonationRoom{
void run(int amountNeededForReward, int counterToUse int reward, int screenD){
while(true){
if(Game->Counter[counterToUse] >= amountNeededForReward && Screen->D[screenD] == 0){
item rewardItem = Screen->CreateItem(reward);
SetItemPickup(rewardItem, IP_HOLDUP, true);
rewardItem->X = Link->X;
rewardItem->Y = Link->Y;
Screen->D[screenD] = 1;
WaitNoAction();
}
Waitframe();
}
}
}
D0 is the donation amount needed for the reward, D1 is the counter to use (counters 7 to 31 are script counters), D2 is the reward item and D3 is the Screen->D to use (you could leave that at 0).
In the info strings you need to use string control codes to increase the custom counter by the amount the player has spend.

