I was working on a delay and i got below logic. Try this one:
einbech,39,215,5 script Train Station Staff#ein3 852,{
if(warpdelay > gettimetick(2)){ // Checks timer, if active it will block you from doing the quest.
set .@delayremaining,(((warpdelay-gettimetick(2))+1)/60);
mes "[Staff]";
mes "You just have used the warper!";
mes "Please wait "+.@delayremaining+" minutes longer.";
close;
}
mes "[Staff]";
mes "Welcome to";
mes "the Train Station.";
mes "The fare to take the";
mes "train to Einbroch is";
mes "200 zeny. Would";
mes "you like to ride?";
next;
switch(select("Yes.:No.")) {
case 1:
if (Zeny > 199) {
mes "[Staff]";
mes "Thank you and";
mes "we hope you enjoy";
mes "the ride. All aboard!";
close2;
set Zeny, Zeny-200;
warp "einbroch",226,276;
set warpdelay,gettimetick(2)+60; // Sets delay for 60s
end;
}
else {
mes "[Staff]";
mes "I'm sorry,";
mes "but you don't";
mes "have enough zeny";
mes "to pay the train fare.";
close;
}
case 2:
mes "[Staff]";
mes "Please enjoy";
mes "your stay here";
mes "in Einbech.";
close;
}