So I should try
typedef void f_type(void);
void glasscheck( f_type *f) {
switch (dataread)
{
case 1:
Serial.println("1 shotglass present");
turnwheel(1);
(f);
turnwheel(0);
break;
case 3:
Serial.println("2 shotglasses present");
turnwheel(1);
(f);
turnwheel(2);
(f);
turnwheel(0);
break;
case 7:
Serial.println("3 shotglasses present");
turnwheel(1);
(f);
turnwheel(2);
(f);
turnwheel(3);
(f);
turnwheel(0);
break;
case 15:
Serial.println("4 shotglasses present");
turnwheel(1);
(f);
turnwheel(2);
(f);
turnwheel(3);
(f);
turnwheel(4);
(f);
turnwheel(0);
break;
case 31:
Serial.println("5 shotglasses present");
turnwheel(1);
(f);
turnwheel(2);
(f);
turnwheel(3);
(f);
turnwheel(4);
(f);
turnwheel(5);
(f);
turnwheel(0);
break;
case 32:
Serial.println("1 old fashioned glass present");
turnwheel(6);
(f);
turnwheel(0);
break;
case 64:
Serial.println("1 highball glass present");
turnwheel(7);
(f);
turnwheel(0);
break;
}
}
void VodkaOnRocks(void) {
pour(1, vodkas, 8);
End();
}
And then call it like
glasscheck(VodkaOnRocks);
?