so I think that will be to complex for me at this stage
Why?
What I do when I'm faced with a complex program that I don't know enough to write is to break it down into smaller pieces, by calling non-existent functions with non-existent variables.
void loop()
{
// Get current "time"
unsigned long now = millis();
// Is it time to decrement the time remaining?
if(now - lastDecrement > oneSecond)
{
lastDecrement = now;
timeRemaining--;
}
// Did a coin get dumped in?
if(gotCoin())
timeRemaining += 1000UL * 10 * 60; // Add 10 minutes
if(timeRemaining == 0 && deviceIsOn)
turnDeviceOff();
if(timeRemaining > 0 && !deviceIsOn)
turnDeviceOn();
}
So, you can see that you need to declare some variables, with appropriate values - lastDecrement, oneSecond, deviceIsOn - and that you need to develop some functions - gotCoin(), turnDeviceOn(), and turnDeviceOff().
None of those functions seem particularly difficult to develop.
If you need help, take a stab at it, and post your attempt. We promise not to laugh. Too hard.