# Resource Valleys: Help PLS!

**URL:** <https://discourse.codecombat.com/t/resource-valleys-help-pls/35994>\
**Category:** Level Help\
**Created:** [August 29, 2023, 3:55pm UTC](https://discourse.codecombat.com/t/resource-valleys-help-pls/35994 "2023-08-29T15:55:28Z")\
**Posts on this page:** 11\
**Page:** 1

<div class="post-metadata">

**Author:** ![milescombat](https://sea2.discourse-cdn.com/flex016/user_avatar/discourse.codecombat.com/milescombat/32/34822_2.png) [@milescombat](https://discourse.codecombat.com/u/milescombat)\
**Post date:** [August 29, 2023, 3:55pm UTC](https://discourse.codecombat.com/t/resource-valleys-help-pls/35994/1 "2023-08-29T15:55:28Z")

</div>

I have no idea what to do on line 30. _Please_.

```python
// Collect all the coins!
function commandPeasant(peasant, coins) {
    // Find the nearest coin to the `peasant` from the `coins` array,
    let peasants = hero.findFriends();
    for (let peasant of peasants) {
        let coin = peasant.findNearestItem();
        if (coin) {
            // Command the peasant "move" to the nearest coin.
    hero.command(peasant, "move", coin.pos);
        }
    }
}
let friends = hero.findFriends();
let peasants = {
    "Aurum":friends[0],
    "Argentum":friends[1],
    "Cuprum":friends[2]
};
while(true) {
    let items = hero.findItems();
    let goldCoins = [];
    let silverCoins = [];
    let letnzeCoins = [];
    for(let i = 0; i < items.length; i++) {
        let item = items[i];
        if(item.value == 3) {
            goldCoins.push(item);
        }
        // Put letnze and silver coins in their approriate array:
        
    }
    commandPeasant(peasants.Aurum, goldCoins);
    commandPeasant(peasants.Argentum, silverCoins);
    commandPeasant(peasants.Cuprum, letnzeCoins);
}

```

---

<div class="post-metadata">

**Author:** ![milescombat](https://sea2.discourse-cdn.com/flex016/user_avatar/discourse.codecombat.com/milescombat/32/34822_2.png) [@milescombat](https://discourse.codecombat.com/u/milescombat)\
**Post date:** [August 29, 2023, 3:59pm UTC](https://discourse.codecombat.com/t/resource-valleys-help-pls/35994/2 "2023-08-29T15:59:03Z")

</div>

It is also giving me an error that says this:  
Line 6: TypeError: Can’t read protected property: `findNearestItem`

---

<div class="post-metadata">

**Author:** ![JustALuke](https://sea2.discourse-cdn.com/flex016/user_avatar/discourse.codecombat.com/justaluke/32/43608_2.png) [@JustALuke](https://discourse.codecombat.com/u/JustALuke)\
**Post date:** [August 29, 2023, 7:32pm UTC](https://discourse.codecombat.com/t/resource-valleys-help-pls/35994/3 "2023-08-29T19:32:32Z")

</div>

On line thirty it is asking you to copy the code for the gold coins and use it to put the silver coins and letnze coins in their own arrays (`silverCoins` and `letnzeCoins`).  
For your second error, codecombat sometimes doesn’t like when friendly units use functions, (Idk what causes it) try replacing it with  
`let coin = peasant.findNearest(hero.findItems());`

---

<div class="post-metadata">

**Author:** ![milescombat](https://sea2.discourse-cdn.com/flex016/user_avatar/discourse.codecombat.com/milescombat/32/34822_2.png) [@milescombat](https://discourse.codecombat.com/u/milescombat)\
**Post date:** [August 29, 2023, 9:00pm UTC](https://discourse.codecombat.com/t/resource-valleys-help-pls/35994/4 "2023-08-29T21:00:02Z")

</div>

Now there is something wrong with line 9. It’s giving me another error it says:  
Line 9: ArgumentError: Hero Placeholder can’t command type `"equestrian"` (only types: soldier, archer, griffin-rider, peasant).

---

<div class="post-metadata">

**Author:** ![milescombat](https://sea2.discourse-cdn.com/flex016/user_avatar/discourse.codecombat.com/milescombat/32/34822_2.png) [@milescombat](https://discourse.codecombat.com/u/milescombat)\
**Post date:** [August 29, 2023, 9:00pm UTC](https://discourse.codecombat.com/t/resource-valleys-help-pls/35994/5 "2023-08-29T21:00:37Z")

</div>

here’s my code again

```python
// Collect all the coins!
function commandPeasant(peasant, coins) {
    // Find the nearest coin to the `peasant` from the `coins` array,
    let peasants = hero.findFriends();
    for (let peasant of peasants) {
        let coin = peasant.findNearest(hero.findItems());
        if (coin) {
            // Command the peasant "move" to the nearest coin.
    hero.command(peasant, "move", coin.pos);
        }
    }
}
let friends = hero.findFriends();
let peasants = {
    "Aurum":friends[0],
    "Argentum":friends[1],
    "Cuprum":friends[2]
}
while(true) {
    let items = hero.findItems();
    let goldCoins = [];
    let silverCoins = [];
    let letnzeCoins = [];
    for(let i = 0; i < items.length; i++) {
        let item = items[i];
        if(item.value == 3) {
            goldCoins.push(item);
        }
        // Put letnze and silver coins in their approriate array:
        letnzeCoins.push(item);
        silverCoins.push(item);
    }
    commandPeasant(peasants.Aurum, goldCoins);
    commandPeasant(peasants.Argentum, silverCoins);
    commandPeasant(peasants.Cuprum, letnzeCoins);
}

```

---

<div class="post-metadata">

**Author:** ![JustALuke](https://sea2.discourse-cdn.com/flex016/user_avatar/discourse.codecombat.com/justaluke/32/43608_2.png) [@JustALuke](https://discourse.codecombat.com/u/JustALuke)\
**Post date:** [August 29, 2023, 10:28pm UTC](https://discourse.codecombat.com/t/resource-valleys-help-pls/35994/6 "2023-08-29T22:28:26Z")

</div>

```python
letnzeCoins.push(item);
silverCoins.push(item);

```

You need to check if the item value is correct before adding them to their arrays; like the gold coins. (letnzeCoins are value 1 and silverCoins are value 2)

---

<div class="post-metadata">

**Author:** ![milescombat](https://sea2.discourse-cdn.com/flex016/user_avatar/discourse.codecombat.com/milescombat/32/34822_2.png) [@milescombat](https://discourse.codecombat.com/u/milescombat)\
**Post date:** [August 30, 2023, 3:12pm UTC](https://discourse.codecombat.com/t/resource-valleys-help-pls/35994/7 "2023-08-30T15:12:30Z")

</div>

Alright, I changed that, but it is still giving me an error that says the same thing.

```python
// Collect all the coins!
function commandPeasant(peasant, coins) {
    let peasants = hero.findFriends();
    for (let peasant of peasants) {
        let coin = peasant.findNearest(hero.findItems());
        if (coin) {
            hero.command(peasant, "move", coin.pos);
        }
    }
}
let friends = hero.findFriends();
let peasants = {
    "Aurum": friends[0],
    "Argentum": friends[1],
    "Cuprum": friends[2]
};
while (true) {
    let items = hero.findItems();
    let goldCoins = [];
    let silverCoins = [];
    let letnzeCoins = [];
    for (let i = 0; i < items.length; i++) {
        let item = items[i];
        if (item.value == 3) {
            goldCoins.push(item);
        }
        // Put letnze and silver coins in their approriate array:
        if (item.value == 1) {
            letnzeCoins.push(item);
        }
        if (item.value == 2) {
            silverCoins.push(item);
        }
    }
    commandPeasant(peasants.Aurum, goldCoins);
    commandPeasant(peasants.Argentum, silverCoins);
    commandPeasant(peasants.Cuprum, letnzeCoins);
}

```

---

<div class="post-metadata">

**Author:** ![milescombat](https://sea2.discourse-cdn.com/flex016/user_avatar/discourse.codecombat.com/milescombat/32/34822_2.png) [@milescombat](https://discourse.codecombat.com/u/milescombat)\
**Post date:** [August 30, 2023, 3:16pm UTC](https://discourse.codecombat.com/t/resource-valleys-help-pls/35994/8 "2023-08-30T15:16:39Z")

</div>

There is something wrong with line 7.

---

<div class="post-metadata">

**Author:** ![milescombat](https://sea2.discourse-cdn.com/flex016/user_avatar/discourse.codecombat.com/milescombat/32/34822_2.png) [@milescombat](https://discourse.codecombat.com/u/milescombat)\
**Post date:** [August 30, 2023, 3:19pm UTC](https://discourse.codecombat.com/t/resource-valleys-help-pls/35994/9 "2023-08-30T15:19:41Z")

</div>

Do I need a semicolon on line 16? Can I just delete it?

---

<div class="post-metadata">

**Author:** ![milescombat](https://sea2.discourse-cdn.com/flex016/user_avatar/discourse.codecombat.com/milescombat/32/34822_2.png) [@milescombat](https://discourse.codecombat.com/u/milescombat)\
**Post date:** [August 30, 2023, 4:03pm UTC](https://discourse.codecombat.com/t/resource-valleys-help-pls/35994/10 "2023-08-30T16:03:11Z")

</div>

Never mind, I figured it out!

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/flex016/uploads/codecombat/original/2X/a/a9445509d1a758c41b5ddcddc8c8e20a5dedb67f.png) [@system](https://discourse.codecombat.com/u/system)\
**Post date:** [August 31, 2023, 4:03am UTC](https://discourse.codecombat.com/t/resource-valleys-help-pls/35994/11 "2023-08-31T04:03:18Z")

</div>

This topic was automatically closed 12 hours after the last reply. New replies are no longer allowed.
