patterns/state/gumballmachinestate/noquarterstate.d

42 lines
893 B
D

module noquarterstate;
import std.stdio : writeln;
import state, gumballmachine;
class NoQuarterState : State
{
GumballMachine gumballMachine;
this(GumballMachine gumballMachine)
{
this.gumballMachine = gumballMachine;
}
void insertQuarter()
{
writeln("Вы вставили четвертак");
gumballMachine.setState(gumballMachine.getHasQuarterState());
}
void ejectQuarter()
{
writeln("Вы не вставили четвертак");
}
void turnCrank()
{
writeln("Вы дернули за рычаг, но нет четвертака");
}
void dispense()
{
writeln("Сначала вам нужно заплатить");
}
void refill() { }
override string toString() const
{
return "в ожидании четвертака";
}
}