--- deliantra/server/common/button.C 2007/01/08 01:19:02 1.23 +++ deliantra/server/common/button.C 2007/01/09 16:38:23 1.24 @@ -834,6 +834,7 @@ void check_inv (object *op, object *trig) { + sint32 prev_state = trig->value; trig->value = 0; // deactivate if none of the following conditions apply if (object *pl = trig->ms ().player ()) @@ -851,6 +852,7 @@ trig->value = 1; } - push_button (trig); + if (prev_state != trig->value) + push_button (trig); }