Как добавить триггерно очки брони(не бонусные) герою?
  • без прибавки к ловкости
  • нужно оригинальное повышение брони, не бонусное.

Лучший ответ:
Мемхак
function GetUnitArmor takes unit u returns real
        set LastConvertedHandle = ConvertHandle( u )
        if LastConvertedHandle > 0 then
            return mI2R( RMem( LastConvertedHandle + 0xE0 ) )
        endif
        return 0.
    endfunction

    function SetUnitArmor takes unit u, real r returns nothing
        set LastConvertedHandle = ConvertHandle( u )
        if LastConvertedHandle > 0 then
            call WMem( LastConvertedHandle + 0xE0, mR2I( r ) )
        endif
    endfunction
    
    function AddUnitArmor takes unit u, real r returns nothing
        call SetUnitArmor(u, GetUnitArmor(u) + r)
    endfunction



Просмотров: 381

ClotPh #1 - 3 месяца назад 0
Вроде мемхаком только.
FrigatPlay #2 - 3 месяца назад 0
Уже было "куча и немного" таких вопросов пользуйтесь поиском, и да только мемхаком.
ssbbssc #3 - 3 месяца назад (отредактировано ) 0
а еще есть исследования, и каждому юниту нужно указать, сколько брони от исследований он получит
их понадобится много, потому что откатить исследы на 0 уровень нельзя
и снизить броню соответственно можно будет только абилкой уже
quq_CCCP #4 - 3 месяца назад 0
Frozen_Cat, апгрейды или морфы в другого юнита.
Так же есть мемхак, но он не подходит для ясельников, так что пока пробуем сделать апргрейдами или морфами.
pro100master #5 - 3 месяца назад 0

Мемхак
function GetUnitArmor takes unit u returns real
        set LastConvertedHandle = ConvertHandle( u )
        if LastConvertedHandle > 0 then
            return mI2R( RMem( LastConvertedHandle + 0xE0 ) )
        endif
        return 0.
    endfunction

    function SetUnitArmor takes unit u, real r returns nothing
        set LastConvertedHandle = ConvertHandle( u )
        if LastConvertedHandle > 0 then
            call WMem( LastConvertedHandle + 0xE0, mR2I( r ) )
        endif
    endfunction
    
    function AddUnitArmor takes unit u, real r returns nothing
        call SetUnitArmor(u, GetUnitArmor(u) + r)
    endfunction
ClotPh #6 - 3 месяца назад 0
Кстати, все пока не юзаю и хочу узнать: мемхак считает броню с учётом зелёного бонуса или без?
pro100master #7 - 3 месяца назад 0
ClotPh, там 2 адрес белый и зеленый
ClotPh #8 - 3 месяца назад 0
JyHgle, SetUnitArmor пишет в белый?
/Прим. себе - надо будет ее в таком виде срейнеймить в SetUnitArmorMemhack, а AddUnitArmor не брать, т. к. у меня через имеющуюся функцию будет с бонусной считать, т. е. косо.
pro100master #9 - 3 месяца назад 2
ClotPh, да. Меняет только белые. А зеленый не нашел адрес вот с атакой нашел белый и зеленый.
ClotPh, белые для эпикировки, а зеленые впомогательные ауры и скилы. дабы было перерасчет белые в процент тогда будет как вов =)
ClotPh #10 - 3 месяца назад 0
JyHgle, спасибо, да про атаку-то я знаю, ее мемхаковские функции у меня давно юзаются.
Ну збс, значит, все как надо, крокодил почти составился.
ClotPh #11 - 3 месяца назад 0
/
Сотые доли брони будут норм добавляться? Т. е. добавлю я 0.02, потом, например, 0.24, потом 0.74 - у меня единичка соберётся?
pro100master #12 - 3 месяца назад 0
ClotPh, целые вроде показывает а зеленый с дробями!
ClotPh #13 - 3 месяца назад 0
JyHgle, ты вопрос-то понял?
Короче, у него ровно 3 белой своей брони.
Я добавляю через мемхак 0.02 (так вообще сотыми можно же?)
Потом, допустим, через пять секунд 0.24.
Потом, допустим, еще через десять секунд 0.74.
У него станет четыре? Или там как-то эти сотые доли не досчитаются по-нормальному?
В принципе, я думаю, что всё должно просчитаться, просто пока будет меньше четырёх, показываться будет три. Это нормально. Но просто на всякий случай уточняю (именно потому, что белые-то даже десятые, тем более сотые доли не отображаются).
Frozen_Cat #14 - 3 месяца назад 0
JyHgle, а этот мемхак (код) что ты мне скинул вставлять в шапку или как новый триггер? и как правильно его использовать/ какая у него специфика работы..
если можно тут поподробней то каких то гайдов на эту фцию в инете я вообще не нашел.(
ClotPh #15 - 3 месяца назад 0
Frozen_Cat, вот всё про мемхак
Бтв, пока, наверное, заберу армор функцию из "старого", если еще "новый" не стоит...