# Бэквудский лес Долгая дорога

**URL:** <https://discourse.codecombat.com/t/topic/25636>\
**Category:** русский (Russian)\
**Created:** [November 23, 2020, 5:44pm UTC](https://discourse.codecombat.com/t/topic/25636 "2020-11-23T17:44:24Z")\
**Posts on this page:** 12\
**Page:** 1

<div class="post-metadata">

**Author:** ![11180](https://sea2.discourse-cdn.com/flex016/user_avatar/discourse.codecombat.com/11180/32/15793_2.png) [@11180](https://discourse.codecombat.com/u/11180)\
**Post date:** [November 23, 2020, 5:44pm UTC](https://discourse.codecombat.com/t/topic/25636/1 "2020-11-23T17:44:25Z")

</div>

Проблема с кодом. Питомец не собирает зелье. Ошибка указателя. Что я не так делаю?

```python
# Иди направо.

# Заверши эту функцию:
def onSpawn(event):
    pass
    # Внутри цикла `while-true`:
    while-true:
        # Используй `hero.findNearestItem()`
        potion = pet.findNearestItem()
        # Если есть предмет:
        if potion:
            # Используй `pet.fetch(item)`, чтобы взять предмет.
            pet.fetch("potion")

# Используй `pet.on()`, чтобы назначить функцию на событие "spawn"
pet.on("spawn", onSpawn)   
hero.moveXY(78, 35)
type or paste code here

```

---

<div class="post-metadata">

**Author:** ![abc](https://avatars.discourse-cdn.com/v4/letter/a/2bfe46/32.png) [@abc](https://discourse.codecombat.com/u/abc)\
**Post date:** [November 23, 2020, 5:49pm UTC](https://discourse.codecombat.com/t/topic/25636/2 "2020-11-23T17:49:30Z")

</div>

Возможно, питомец не может найти ближайший предмет, поэтому вместо `pet.findNearestItem()` используйте `hero.findNearestItem()`.

The pet probably can’t find the nearest item, so instead of `pet.findNearestItem()`, use `hero.findNearestItem()`.

---

<div class="post-metadata">

**Author:** ![abc](https://avatars.discourse-cdn.com/v4/letter/a/2bfe46/32.png) [@abc](https://discourse.codecombat.com/u/abc)\
**Post date:** [November 23, 2020, 5:51pm UTC](https://discourse.codecombat.com/t/topic/25636/3 "2020-11-23T17:51:07Z")

</div>

Также удалите строку из `pet.fetch("potion")`.

Also, remove the string from the `pet.fetch("potion")`.

---

<div class="post-metadata">

**Author:** ![milton.jinich](https://sea2.discourse-cdn.com/flex016/user_avatar/discourse.codecombat.com/milton.jinich/32/21419_2.png) [@milton.jinich](https://discourse.codecombat.com/u/milton.jinich)\
**Post date:** [November 23, 2020, 6:00pm UTC](https://discourse.codecombat.com/t/topic/25636/4 "2020-11-23T18:00:32Z")

</div>

hey @abc tell @11180 that he need to tell the pet to find by type not the hero

---

<div class="post-metadata">

**Author:** ![abc](https://avatars.discourse-cdn.com/v4/letter/a/2bfe46/32.png) [@abc](https://discourse.codecombat.com/u/abc)\
**Post date:** [November 23, 2020, 6:09pm UTC](https://discourse.codecombat.com/t/topic/25636/5 "2020-11-23T18:09:59Z")

</div>

Yo don’t need to do that, you can just have the hero find the nearest.

---

<div class="post-metadata">

**Author:** ![milton.jinich](https://sea2.discourse-cdn.com/flex016/user_avatar/discourse.codecombat.com/milton.jinich/32/21419_2.png) [@milton.jinich](https://discourse.codecombat.com/u/milton.jinich)\
**Post date:** [November 23, 2020, 6:14pm UTC](https://discourse.codecombat.com/t/topic/25636/6 "2020-11-23T18:14:02Z")

</div>

okay but I usually do it the other way

---

<div class="post-metadata">

**Author:** ![11180](https://sea2.discourse-cdn.com/flex016/user_avatar/discourse.codecombat.com/11180/32/15793_2.png) [@11180](https://discourse.codecombat.com/u/11180)\
**Post date:** [November 23, 2020, 6:40pm UTC](https://discourse.codecombat.com/t/topic/25636/7 "2020-11-23T18:40:14Z")

</div>

Я вообще запутался. Что мне нужно, а что не нужно делать? Напишите пожалуйста все в одном сообщении, а то так трудно разобраться.

---

<div class="post-metadata">

**Author:** ![abc](https://avatars.discourse-cdn.com/v4/letter/a/2bfe46/32.png) [@abc](https://discourse.codecombat.com/u/abc)\
**Post date:** [November 23, 2020, 8:13pm UTC](https://discourse.codecombat.com/t/topic/25636/8 "2020-11-23T20:13:59Z")

</div>

Вам нужно будет заменить `potion = pet.findNearestItem()` на `potion = hero.findNearestItem()` или вы можете заменить его на `potion = pet.findNearestByType("potion")`. Вам также необходимо удалить строку из `pet.fetch("potion")`, поскольку это должно быть `pet.fetch(potion)`.

You will need to replace `potion = pet.findNearestItem()` with `potion = hero.findNearestItem()` or you can replace it with `potion = pet.findNearestByType("potion")`. You also need to remove the line `pet.fetch("potion")` as it should be `pet.fetch(potion)`.

---

<div class="post-metadata">

**Author:** ![11180](https://sea2.discourse-cdn.com/flex016/user_avatar/discourse.codecombat.com/11180/32/15793_2.png) [@11180](https://discourse.codecombat.com/u/11180)\
**Post date:** [November 23, 2020, 8:24pm UTC](https://discourse.codecombat.com/t/topic/25636/9 "2020-11-23T20:24:59Z")

</div>

Если так, то все равно не работает.

```python
# Иди направо.

# Заверши эту функцию:
def onSpawn(event):
    pass
    # Внутри цикла `while-true`:
    while-true:
        # Используй `hero.findNearestItem()`
        potion = hero.findNearestItem()
        
        # Если есть предмет:
        if potion:
            # Используй `pet.fetch(item)`, чтобы взять предмет.
            pet.fetch(potion)

# Используй `pet.on()`, чтобы назначить функцию на событие "spawn"
pet.on("spawn", onSpawn)
hero.moveXY(78, 35)
type or paste code here

```

---

<div class="post-metadata">

**Author:** ![abc](https://avatars.discourse-cdn.com/v4/letter/a/2bfe46/32.png) [@abc](https://discourse.codecombat.com/u/abc)\
**Post date:** [November 23, 2020, 8:56pm UTC](https://discourse.codecombat.com/t/topic/25636/10 "2020-11-23T20:56:42Z")

</div>

Измените свой цикл while true с

```python
while-true:

```

к

```python
while True:

```

и удалите это

```python
type or paste code here

```

---

<div class="post-metadata">

**Author:** ![11180](https://sea2.discourse-cdn.com/flex016/user_avatar/discourse.codecombat.com/11180/32/15793_2.png) [@11180](https://discourse.codecombat.com/u/11180)\
**Post date:** [November 23, 2020, 9:03pm UTC](https://discourse.codecombat.com/t/topic/25636/11 "2020-11-23T21:03:14Z")

</div>

Спасибо большое! Код работает. Но в чем разница между " while-true" и “while True” ? Объясните пожалуйста.  
(type or paste code here - это не строка. В моем коде ее нет. Она добавляется автоматически к сообщению)

---

<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:** [November 24, 2020, 9:03am UTC](https://discourse.codecombat.com/t/topic/25636/12 "2020-11-24T09:03:16Z")

</div>

Closed on November 24, 2020, 9:03am UTC

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