State Design Pattern – Simple Java Example

WeaponState.java

WeaponHasAmmoState.java

WeaponHasNoAmmoState.java

Weapon.java

Starter.java