XGM Forum
Сайт - Статьи - Проекты - Ресурсы - Блоги

Форуме в режиме ТОЛЬКО ЧТЕНИЕ. Вы можете задать вопросы в Q/A на сайте, либо создать свой проект или ресурс.
Вернуться   XGM Forum > Warcraft> Академия: форум для вопросов> Jass
Ник
Пароль
Войти через VK в один клик
Сайт использует только имя.

Ответ
 
IceInfernal
...где распостерся мрак
offline
Опыт: 2,317
Активность:
Как сохранить предметы?
Как сохранить 100(например) предметов где-нибудь(способ "поставим где-то этот предмет, потом вернем его герою" не сгодится), и потом достать их?
Старый 11.02.2009, 17:29
PlayerDark
Coraline
offline
Опыт: 10,569
Активность:
Что значит "сохранить" ?
Старый 11.02.2009, 17:43
IceInfernal
...где распостерся мрак
offline
Опыт: 2,317
Активность:
Занести куда-нибудь(глоб. переменная, кэш). При этом они не должны существовать на карте.

Отредактировано IceInfernal, 11.02.2009 в 18:58.
Старый 11.02.2009, 17:47
Enein
Silenced by ZlaYa1000
offline
Опыт: 43,453
Активность:
тебе поидее нужно сохранять не сам предмет, а его тип/рав-код

Enein добавил:
Код:
globals
    integer array it
endglobals

...
Код:
set it[x] = GetItemTypeId(<твой предмет>)

Отредактировано Enein, 11.02.2009 в 18:04.
Старый 11.02.2009, 17:54
IceInfernal
...где распостерся мрак
offline
Опыт: 2,317
Активность:
Надо безграничное количество предметов занести в одну переменную-массив.
А как это потом загрузить?

IceInfernal добавил:
На одного игрока одна ячейка массива...

IceInfernal добавил:
...а не на один предмет.

IceInfernal добавил:
10 предметов надо загрузить. Или все сразу, но разбить на 10 предметов.

Отредактировано IceInfernal, 11.02.2009 в 18:10.
Старый 11.02.2009, 17:57
Hellfim
Новичок
offline
Опыт: 79,707
Активность:
IceInfernal
Код:
globals
    item array it=null
endglobals
//...
function Save takes item sit returns nothing
    local integer i=0
    loop
        exitwhen i>8191
        if it[i]==null then
            set it[i]=sit
            call SetItemPosition(sit,GetRectMaxX(bj_mapInitialPlayableArea), GetRectMaxY(bj_mapInitialPlayableArea))//Переносим предмет в правый верхний угол
        return
        endif
    endloop
endfunction

function Get takes integer i, real x, real y returns nothing
    call SetItemPosition(it[i],x,y)//возвращаем предмет в точку с координатами x,y
    set it[i]=null
endfunction

как вариант.
Старый 11.02.2009, 18:16
IceInfernal
...где распостерся мрак
offline
Опыт: 2,317
Активность:
Спасибо Enein и Hellfim. Через пару дней, надеюсь, выложу то, что получилось.
Старый 12.02.2009, 13:58
Ответ

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы можете скачивать файлы

BB-коды Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход



Часовой пояс GMT +3, время: 23:22.