|
|
|
|
хп реген
|
|
Moddy | Дата: Вторник, 16 Апреля 2013, 20:06:52 | Сообщение # 1 |
4 уровень
Группа: Проверенные
Сообщений: 96
Награды: 0
Репутация: 30
Блокировки:
| На картинке все правильно расставлено для того что бы увеличить регенерацию хп на 50/100/150/200% Добавлено (16 Апреля 2013, 20:06:52) --------------------------------------------- ах, да, можете ли помочь придумать название способности, замедляющей врагов, она пассивная, если вам это нужно
|
|
|
|
Волчачка | Дата: Вторник, 16 Апреля 2013, 20:12:31 | Сообщение # 2 |
САЙТ УМЕР ППЦ
Группа: Проверенные
Сообщений: 1361
Награды: 0
Репутация: 2165
Блокировки:
| Процент повышения "Да", а не "Нет"
Сообщение отредактировал Волчачка - Вторник, 16 Апреля 2013, 20:12:59 |
|
|
|
Moddy | Дата: Вторник, 16 Апреля 2013, 20:19:19 | Сообщение # 3 |
4 уровень
Группа: Проверенные
Сообщений: 96
Награды: 0
Репутация: 30
Блокировки:
| а почему увеличение скорости регена... в скобках стоит %
|
|
|
|
CCTCTCC | Дата: Среда, 17 Апреля 2013, 11:37:38 | Сообщение # 4 |
4 уровень
Группа: Проверенные
Сообщений: 83
Награды: 0
Репутация: 26
Блокировки:
| Moddy, наф тебе такой бешеный реген? Чуть ли не для любой карты 10% и ты не убиваемый))) Все равно больше 100% не отрегенишь.
Сообщение отредактировал CCTCTCC - Среда, 17 Апреля 2013, 11:38:04 |
|
|
|
Naturekid | Дата: Среда, 17 Апреля 2013, 12:48:14 | Сообщение # 5 |
Группа: Заблокированные
Сообщений: 4982
Награды: 3
Репутация: 3347
Блокировки:
| Цитата (Moddy) можете ли помочь придумать название способности, замедляющей враго ,Могильный холод Добавлено (17 Апреля 2013, 12:48:14) --------------------------------------------- и да - имей в виду этот реген будет восстанавливать % от запаса здоровья воина, а не увеличивать на % базовую регенерацию здоровья
|
|
|
|
CCTCTCC | Дата: Среда, 17 Апреля 2013, 16:33:40 | Сообщение # 6 |
4 уровень
Группа: Проверенные
Сообщений: 83
Награды: 0
Репутация: 26
Блокировки:
| Цитата (Naturekid) и да - имей в виду этот реген будет восстанавливать % от запаса здоровья воина, а не увеличивать на % базовую регенерацию здоровья хм, хотя он наверное базовую и пытается увеличить регенерацию хп и если на основе ауры смерти то вполне на скрине все верно
|
|
|
|
Naturekid | Дата: Среда, 17 Апреля 2013, 16:40:49 | Сообщение # 7 |
Группа: Заблокированные
Сообщений: 4982
Награды: 3
Репутация: 3347
Блокировки:
| CCTCTCC, толькр там на фиксированное число, а не на % от нормы.
|
|
|
|
CCTCTCC | Дата: Среда, 17 Апреля 2013, 16:54:48 | Сообщение # 8 |
4 уровень
Группа: Проверенные
Сообщений: 83
Награды: 0
Репутация: 26
Блокировки:
| Цитата (Naturekid) толькр там на фиксированное число, а не на % от нормы. т е 0,50 = 10 силы, 1,00 = 20 силы и т д с учетом 0,05 за базовую единицу силы, тогда проще свиток силы купить или сделать варианты регена в секунду процентно/фиксированно)))
|
|
|
|
Naturekid | Дата: Среда, 17 Апреля 2013, 22:13:12 | Сообщение # 9 |
Группа: Заблокированные
Сообщений: 4982
Награды: 3
Репутация: 3347
Блокировки:
| чего? неважно вообщем это число - дополнительный + к регенерации в секунду, независимый т.е. стоит там 0.5 - у юнитов в сек. дополнительно +0.5 здоровья в сек восстанавливается
|
|
|
|
Волчачка | Дата: Четверг, 18 Апреля 2013, 00:38:05 | Сообщение # 10 |
САЙТ УМЕР ППЦ
Группа: Проверенные
Сообщений: 1361
Награды: 0
Репутация: 2165
Блокировки:
| Moddy, Знаешь как лучше, сие секунду пример кода на jass. Код function Trig_Regen_Aura takes nothing returns nothing local timer t = GetExpiredTimer() local integer id = GetHandleId(t) local unit c = LoadUnitHandle( udg_Hash, id, 1 ) local integer l = LoadInteger( udg_Hash, id, 2 ) local real r = LoadReal( udg_Hash, id, 3 ) local real hpfs = 0. local unit p if l == GetUnitAbilityLevel( c, 'A000') then call GroupEnumUnitsInRange( udg_G, GetUnitX(c), GetUnitY(c), 900 + GetRandomReal( 25., 35. ), null ) loop set p = FirstOfGroup( udg_G ) if GetUnitAbilityLevel( p, 'B000') > 0 then set hpfs = ( GetUnitState( p, UNIT_STATE_MAX_LIFE ) * .01 ) * r call SetUnitState( p, UNIT_STATE_LIFE, GetUnitState( p, UNIT_STATE_LIFE ) + hpfs ) endif call GroupRemoveUnit( udg_G, p ) exitwhen p==null endloop call GroupClear(udg_G) else call DestroyTimer(t) call FlushChildHashtable( udg_Hash, id ) endif set t = null set id = 0 set c = null set l = 0 set r = 0. set hpfs = 0. endfunction
function Trig_Regen_Actions takes nothing returns nothing local unit c = GetTriggerUnit() local timer t = CreateTimer() local integer id = GetHandleId(t) local integer l = GetUnitAbilityLevel( c, 'A000' ) local real r = I2R(l) * .5 call SaveUnitHandle( udg_Hash, id, 1, c ) call SaveInteger( udg_Hash, id, 2, l ) call SaveReal( udg_Hash, id, 3, r ) call TimerStart( t, 1., true, function Trig_Regen_Aura ) set c = null set t = null set id = 0 set l = 0 set r = 0. endfunction
function Trig_Regen_Conditions takes nothing returns boolean return GetLearnedSkill() == 'A000' endfunction
//=========================================================================== function InitTrig_Regen takes nothing returns nothing local integer i = 0 set gg_trg_Regen = CreateTrigger() call TriggerAddAction( gg_trg_Regen, function Trig_Regen_Actions ) call TriggerAddCondition( gg_trg_Regen, Condition( function Trig_Regen_Conditions ) ) loop call TriggerRegisterPlayerUnitEvent( gg_trg_Regen, Player(i), EVENT_PLAYER_HERO_SKILL, null ) set i = i + 1 exitwhen i > 11 endloop set i = 0 endfunction
Регенерация хп при помощи Jass с отслежкой баффа) Лучше так регенерировать 0.5,1,1.5,2% от макс запаса хп. XD
Добавлено (18 Апреля 2013, 00:38:05) --------------------------------------------- Теперь пояснение: udg_Hash - нужная хеш таблица udg_G - группа боевых единиц, тоже нужная хурма. ^ Глобалки l - управляющая аурой переменная r - % регенерации 0.5/1/1.5/2% с - владелец ауры p - выьбраный юнит hpfs - величина которая будет дана в хп id - ID таймера, это для манипуляции над функцией Trig_Regen_Aura A000 - абилка B000 - бафф
Сообщение отредактировал Волчачка - Четверг, 18 Апреля 2013, 00:38:43 |
|
|
|
Extremator | Дата: Четверг, 18 Апреля 2013, 01:09:16 | Сообщение # 11 |
10 уровень
Группа: Проверенные
Сообщений: 3199
Награды: 0
Репутация: 1018
Блокировки:
| Цитата (Волчачка) Процент повышения "Да", а не "Нет" Думаю ему это не нужно...
Цитата (CCTCTCC) Все равно больше 100% не отрегенишь. Отрегенит... только не 100% за 1 сек, а 100% за 0.5 сек (что равно 200% за 1 сек.)
Но я всё равно не понял скольо именно хп он хочет регенить за секунду )
|
|
|
|
Волчачка | Дата: Четверг, 18 Апреля 2013, 01:16:42 | Сообщение # 12 |
САЙТ УМЕР ППЦ
Группа: Проверенные
Сообщений: 1361
Награды: 0
Репутация: 2165
Блокировки:
| Цитата (Moddy) 50/100/150/200% Всё равно слишком много. А если так подумать: если это - текущая регенерация* 0.5/1/1.5/2 Допустим тек регенерация у юнита текущая 2 lvl 1,то 2 + 2 * 0.5 -> 2 + 1 = 3 hpps lvl 2,то 2 + 2 * 1 -> 2 + 2 = 4 hpps lvl 3, то 2 + 2 * 1.5 -> 2 + 3 = 5 hpps lvl 4, то 2 + 2 * 2 -> 2 + 4 = 6 hpps Если так думать правильно)
Сообщение отредактировал Волчачка - Четверг, 18 Апреля 2013, 01:17:27 |
|
|
|
sumert | Дата: Четверг, 18 Апреля 2013, 10:12:41 | Сообщение # 13 |
10 уровень
Группа: Проверенные
Сообщений: 2330
Награды: 2
Репутация: 1094
Блокировки:
| Я вообще в первом посте даже вопроса не вижу, что хочет автор и что не получается. А вот это последняя фраза вообще с логческой отчки зрения абсолютно непонятная. Цитата (Moddy) ах, да, можете ли помочь придумать название способности, замедляющей врагов, она пассивная, если вам это нужно
|
|
|
|
Moddy | Дата: Четверг, 18 Апреля 2013, 15:05:35 | Сообщение # 14 |
4 уровень
Группа: Проверенные
Сообщений: 96
Награды: 0
Репутация: 30
Блокировки:
| да, я хочу увеличить стандартный реген, который равен 0.8 в сек Цитата (sumert) Я вообще в первом посте даже вопроса не вижу, что хочет автор и что не получается. А вот это последняя фраза вообще с логической точки зрения абсолютно непонятная. лень новую тему создавать для такого вопроса, и да я использовал ауру смерти для создания способности
|
|
|
|
Extremator | Дата: Четверг, 18 Апреля 2013, 17:19:14 | Сообщение # 15 |
10 уровень
Группа: Проверенные
Сообщений: 3199
Награды: 0
Репутация: 1018
Блокировки:
| стандартный реген ты не поднимешь... можно лишь имитировать это отлавливать весь реген и добавлять сверху некое число
в общем всё будет триггерно
проще было бы сделать например увеличение базового регена от Силы в 2/3/4/5 раз от 0.05 стандарта т.е. давал бы по +0.05 / 0.10 / 0.15 / 0.20 хп за единицусилы в секунду... хД
а так, ловить общий реген - стрёмно как то... вруг там будет фляска или реджи какой нить, то риггер отлавливающий изменени и его будет вставлять ._. а ином случаи нужно строить БД со всем регенами, артами , баффами и прочими... - гемор
|
|
|
|
Naturekid | Дата: Четверг, 18 Апреля 2013, 18:38:58 | Сообщение # 16 |
Группа: Заблокированные
Сообщений: 4982
Награды: 3
Репутация: 3347
Блокировки:
| Цитата (Extremator) отлавливать весь реген и добавлять сверху некое число это багнуто ... или нет?
|
|
|
|
Extremator | Дата: Четверг, 18 Апреля 2013, 18:48:44 | Сообщение # 17 |
10 уровень
Группа: Проверенные
Сообщений: 3199
Награды: 0
Репутация: 1018
Блокировки:
| Цитата (Naturekid) это багнуто ... или нет? я и говорю... что это хрень полная...
потому что если у гера есть арт/статы на +5 регена, и например глотнул зелье омоложение на 300 за 30 сек (+10 хп/сек) то у юнита уже будет по +15 хп за секунду... ну вот и как триггерно отловить где у него свои +5 а где не свои +10?
поэтому нужно будет делать ряд проверок... бафы, арты, и прочее... оптимальнее сделать это через БД... но это естественно и сложнее чем просто прибавить число
а значит или долбаца с точными данными по БД ... или ... придумать другой реген
Сообщение отредактировал Extremator - Четверг, 18 Апреля 2013, 19:02:56 |
|
|
|
sumert | Дата: Четверг, 18 Апреля 2013, 19:12:06 | Сообщение # 18 |
10 уровень
Группа: Проверенные
Сообщений: 2330
Награды: 2
Репутация: 1094
Блокировки:
| Ну, можно просто создать бд, и там тупо хранить значения регена, а при добавлении артов/бафов изменять значение.
|
|
|
|
|
|
|
|
|
|
|