Post

Replies

Boosts

Views

Activity

Reply to Bug in learn to code 2
Here is my solution. Character is looped and checking Gems count. let totalGems = randomNumberOfGems let expert = Expert()  let character = Character() var gemCounter = 0 func go() {         if character.isBlocked {             character.jump()         }         else {             character.moveForward()         }             if character.isOnGem {                 character.collectGem()                 gemCounter += 1             }         } func went() {     for i in 1 ... 6 {         go()     } } world.place(expert, facing: .north, atColumn: 0, row: 4) expert.turnLockUp() world.place(character, facing: .south, atColumn: 4, row: 6) while gemCounter != totalGems {  went() if !character.isBlockedRight {     character.turnRight()     character.moveForward()     character.turnRight() } if character.isOnGem {     character.collectGem() } went() if !character.isBlockedLeft {     character.turnLeft() character.moveForward()     character.turnLeft() } went()     world.place(character, facing: .south, atColumn: 4, row: 6) }
Aug ’21