Вампиризм

Yarpi

Heir
Customer
Подскажите плз. Как можно реализовать вампиризм у магом?
СХ бьет хуриканом, за каждый удар у него востанавливаеться ХП.
Заранее балагадарю за подсказку.
 
скил берешь вампирик и от него эффект в хурик прикручиваешь

<skill id="1235" levels="28" name="Hydro Blast">
<table name="#effectPoint">360 379 399 418 438 457 477 495 514 532 541 549 558 566 574 582 590 597 604 611 617 624 630 635 641 646 650 655</table>
<table name="#mpConsume2">27 28 30 31 33 35 36 38 39 41 42 43 44 44 45 46 47 48 48 49 50 51 51 52 53 53 54 55</table>
<table name="#mpConsume1">7 7 8 8 9 9 9 10 10 11 11 11 11 11 12 12 12 12 12 13 13 13 13 13 14 14 14 14</table>
<table name="#absorbPart">0.5</table>
<table name="#magicLevel">38 40 42 44 46 48 50 52 54 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74</table>
<table name="#power">49 52 55 58 61 65 68 72 75 78 80 82 84 85 87 89 90 92 94 96 97 99 100 102 104 105 107 108</table>
<table name="#save">NONE</table>
<table name="#levelModifier">0</table>
<set name="levelModifier" val="#levelModifier"/>
<set name="magicType" val="MAGIC"/>
<set name="icon" val="icon.skill1235"/>
<set name="reuseDelay" val="6000"/>
<set name="power" val="#power"/>
<set name="magicLevel" val="#magicLevel"/>
<set name="castRange" val="900"/>
<set name="hitTime" val="4000"/>
<set name="hitCancelTime" val="500"/>
<set name="mpConsume1" val="#mpConsume1"/>
<set name="mpConsume2" val="#mpConsume2"/>
<set name="effectPoint" val="#effectPoint"/>
<set name="target" val="TARGET_ONE"/>
<set name="element" val="water"/>
<set name="skillType" val="DRAIN"/>
<set name="operateType" val="OP_ACTIVE"/>
<set name="saveVs" val="#save"/>
<set name="absorbPart" val="#absorbPart"/>
<enchant1 levels="30" name="Power">
<table name="#power">109 109 110 111 111 112 113 113 114 115 115 116 116 117 118 118 119 120 120 121 122 122 123 124 124 125 125 126 127 127</table>
<table name="#magicLevel">76 76 76 77 77 77 78 78 78 79 79 79 80 80 80 81 81 81 82 82 82 83 83 83 84 84 84 85 85 85</table>
</enchant1>
<enchant2 levels="30" name="Cost">
<table name="#magicLevel">76 76 76 77 77 77 78 78 78 79 79 79 80 80 80 81 81 81 82 82 82 83 83 83 84 84 84 85 85 85</table>
<table name="#mpConsume1">13 13 13 12 12 12 12 11 11 11 11 10 10 10 10 10 9 9 9 9 8 8 8 8 7 7 7 7 7 6</table>
<table name="#mpConsume2">54 53 52 51 50 49 48 47 46 45 44 43 42 42 41 40 39 38 37 36 35 34 33 32 31 30 29 29 28 27</table>
</enchant2>
<for/>
</skill>

зеленым эффект вампирика и сила , дальше сам)
 
Дабы не плодить темы спрошу тут.


Вампирик при уроне с лука. Реально ли реализовать?
 
натолкни на правильную мысль плз, не пойму за что уцепиться и что взять за основу
По той же схеме , как и здесь , рофлишь чтоли, даже не пытался ?)
 
натолкни на правильную мысль плз, не пойму за что уцепиться и что взять за основу
Тут логический вариант, можно сделать по аналогии с Са на дрейн. И т.к. ЛУК = тип Оружия. Тебе надо добавить в каждый лук данный стат или же создать скил и добавить скил к лукам.
Может тут есть конечно какие то параметры, аля (*Если лук = даёт скил*),скорее всего такое можно кастомным скриптом легко сделать, чтобы не прописывать к каждому.

Создаёшь skill, например:
<skill id="9500" levels="1" name="Bow HP Drain">
<set name="icon" val="icon.skill1268"/>
<set name="magicLevel" val="84"/>
<set name="target" val="TARGET_SELF"/>
<set name="skillType" val="BUFF"/>
<set name="operateType" val="OP_PASSIVE"/>
<for>
<add order="0x40" stat="absorbDam" val="5"/> <!-- Прибавляет 5% от урона, нанесенного в бою, к вашим HP. -->
</for>
</skill>

К лукам тогда необходимо добавить строки:
<skills>
<skill id="9500" level="1"/>
</skills>

Думаю, что такой вариант должен работать, по логике. Если что поправьте
 
Тут логический вариант, можно сделать по аналогии с Са на дрейн. И т.к. ЛУК = тип Оружия. Тебе надо добавить в каждый лук данный стат или же создать скил и добавить скил к лукам.
Может тут есть конечно какие то параметры, аля (*Если лук = даёт скил*),скорее всего такое можно кастомным скриптом легко сделать, чтобы не прописывать к каждому.

Создаёшь skill, например:
<skill id="9500" levels="1" name="Bow HP Drain">
<set name="icon" val="icon.skill1268"/>
<set name="magicLevel" val="84"/>
<set name="target" val="TARGET_SELF"/>
<set name="skillType" val="BUFF"/>
<set name="operateType" val="OP_PASSIVE"/>
<for>
<add order="0x40" stat="absorbDam" val="5"/> <!-- Прибавляет 5% от урона, нанесенного в бою, к вашим HP. -->
</for>
</skill>

К лукам тогда необходимо добавить строки:
<skills>
<skill id="9500" level="1"/>
</skills>

Думаю, что такой вариант должен работать, по логике. Если что поправьте
понял, спасибо
 
Тут логический вариант, можно сделать по аналогии с Са на дрейн. И т.к. ЛУК = тип Оружия. Тебе надо добавить в каждый лук данный стат или же создать скил и добавить скил к лукам.
Может тут есть конечно какие то параметры, аля (*Если лук = даёт скил*),скорее всего такое можно кастомным скриптом легко сделать, чтобы не прописывать к каждому.

Создаёшь skill, например:
<skill id="9500" levels="1" name="Bow HP Drain">
<set name="icon" val="icon.skill1268"/>
<set name="magicLevel" val="84"/>
<set name="target" val="TARGET_SELF"/>
<set name="skillType" val="BUFF"/>
<set name="operateType" val="OP_PASSIVE"/>
<for>
<add order="0x40" stat="absorbDam" val="5"/> <!-- Прибавляет 5% от урона, нанесенного в бою, к вашим HP. -->
</for>
</skill>

К лукам тогда необходимо добавить строки:
<skills>
<skill id="9500" level="1"/>
</skills>

Думаю, что такой вариант должен работать, по логике. Если что поправьте
данный пример работает только если луку указать тип блант, а не лук. но тогда чар бежит впритык к цели и только тогда начинает стрелять

есть варианты решения?
 
данный пример работает только если луку указать тип блант, а не лук. но тогда чар бежит впритык к цели и только тогда начинает стрелять

есть варианты решения?
Значит данный параметр только для ближнего боя, попробуй возьми параметр от маг вампирика, который тут указан
 
Значит данный параметр только для ближнего боя, попробуй возьми параметр от маг вампирика, который тут указан
да я уже все варианты попробовал, не хочет на дистанции работать
 
да я уже все варианты попробовал, не хочет на дистанции работать
absorbPart вампірить тільки з скіла (тобто він працює тільки за умови
<set name="skillType" val="DRAIN"/>
<set name="operateType" val="OP_ACTIVE"/>


absorbDam має умову яка не дозволяє вампіритись з лука

Creature
if (skill == null && !bow)
{
damage = (double)((int)(damage - target.getCurrentCp()));
if (damage <= 0.0) {
return false;
} else {
poleMod = this._poleAttackCount < POLE_VAMPIRIC_MOD.length ? POLE_VAMPIRIC_MOD[this._poleAttackCount] : 0.0;
double absorb = poleMod * this.calcStat(Stats.ABSORB_DAMAGE_PERCENT, 0.0, target, (Skill)null);
if (absorb > 0.0 && !target.isDamageBlocked()) {
double limit = this.calcStat(Stats.HP_LIMIT, (Creature)null, (Skill)null) * (double)this.getMaxHp() / 100.0;
if (this.getCurrentHp() < limit) {
this.setCurrentHp(Math.min(this._currentHp + damage * absorb * Config.ALT_ABSORB_DAMAGE_MODIFIER / 100.0, limit), false);
}
}

return false;
}
 
данный пример работает только если луку указать тип блант, а не лук. но тогда чар бежит впритык к цели и только тогда начинает стрелять

есть варианты решения?
создаешь пасивку с эффектом варпира - крутишь ее в каждый лук и радуешься)
 
Back
Top