weaponFactory.getSemiRandomWeapon