Allow turning on/off the rotor advance
This commit is contained in:
parent
f6f870d7dd
commit
700ad655c2
1 changed files with 5 additions and 1 deletions
|
@ -14,6 +14,8 @@ class Machine {
|
|||
let reflector: Reflector
|
||||
let plugboard: Plugboard
|
||||
|
||||
var rotorAdvanceEnabled: Bool = true
|
||||
|
||||
init(rotors: [Rotor], reflector: Reflector, plugboard: Plugboard) {
|
||||
self.rotors = rotors
|
||||
self.reflector = reflector
|
||||
|
@ -21,7 +23,9 @@ class Machine {
|
|||
}
|
||||
|
||||
func encode(c: Character) throws -> Character {
|
||||
advanceRotors()
|
||||
if rotorAdvanceEnabled {
|
||||
advanceRotors()
|
||||
}
|
||||
var output = c
|
||||
output = try plugboard.encode(output)
|
||||
for rotor in rotors.reverse() {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue