- struct demoscreen *scr = dsys_act_scr;
- while(scr) {
- if(scr->mouse) {
- scr->mouse(bn, pressed, x, y);
- }
- scr = scr->next;
+ int i;
+
+ if(dsys.scr_override && dsys.scr_override->mouse) {
+ dsys.scr_override->mouse(bn, pressed, x, y);
+ return;
+ }
+
+ for(i=0; i<dsys.num_act; i++) {
+ struct demoscreen *scr = dsys.act[i];
+ if(scr->mouse) scr->mouse(bn, pressed, x, y);