Кажется, что уменьшение переменной приложения никогда не приведет к тому, что она опустится ниже 1. Я понятия не имею, почему это так. Вы можете сделать переменные приложения меньше 1. Этот код, например, начинает переменную с -2 и увеличивает ее оттуда, что прекрасно работает:
app:test += 1 from -2;
Кажется, что снижение не работает ...
Я бы предложил просто изменить количество на 1, чтобы вы притворились, что 1 означает 0. В этом случае ваше приложение может выглядеть так:
rule morePies {
select when web pageview ".*"
if (app:pies > 1) then {
notify("You get a pie", "Yay!");
}
fired {
app:pies -= 1 from 11;
}
}
rules piesAreGone {
select when web pageview ".*"
if (app:pies <= 1) then {
notify("No pies left", "Sorry.");
}
}