45 lines
1002 B
D
45 lines
1002 B
D
|
module soldoutstate;
|
||
|
|
||
|
import std.stdio : writeln;
|
||
|
import state, gumballmachine;
|
||
|
|
||
|
class SoldOutState : State
|
||
|
{
|
||
|
GumballMachine gumballMachine;
|
||
|
|
||
|
this(GumballMachine gumballMachine)
|
||
|
{
|
||
|
this.gumballMachine = gumballMachine;
|
||
|
}
|
||
|
|
||
|
void insertQuarter()
|
||
|
{
|
||
|
writeln("Вы не можете вставить четвертак, машина распродана");
|
||
|
}
|
||
|
|
||
|
void ejectQuarter()
|
||
|
{
|
||
|
writeln("Вы не можете извлечь, вы еще не вставили четвертак");
|
||
|
}
|
||
|
|
||
|
void turnCrank()
|
||
|
{
|
||
|
writeln("Вы дернули за рычаг, но там нет жевательных шариков");
|
||
|
}
|
||
|
|
||
|
void dispense()
|
||
|
{
|
||
|
writeln("Жевательная резинка не выдается");
|
||
|
}
|
||
|
|
||
|
void refill()
|
||
|
{
|
||
|
gumballMachine.setState(gumballMachine.getNoQuarterState());
|
||
|
}
|
||
|
|
||
|
override string toString() const
|
||
|
{
|
||
|
return "продано";
|
||
|
}
|
||
|
}
|