Господа, вопрос жизни и смерти.
Создал процентное пожирание МП, как mpConsume, вроде бы ввел проверки (спасибо Деня).
но что-то все равно не так.
Юзаю скилл жущий 25% МП.
Даже когда остается 0 манны, он юзается...
код
Код:
В [color=Red]L2Character[/color] внес:
double mpConsumePercent = (getStat().getMpConsumePercent(skill)*getMaxMp())/100;
if(mpConsumePercent > 0)
{
if(skill.isMagic())
{
getStatus().reduceMp(calcStat(Stats.MAGICAL_MP_CONSUME_RATE, mpConsumePercent, null, null));
}
else
{
getStatus().reduceMp(calcStat(Stats.PHYSICAL_MP_CONSUME_RATE, mpConsumePercent, null, null));
}
su.addAttribute(StatusUpdate.CUR_MP, (int) getCurrentMp());
isSendStatus = true;
}
====================================================
В [color=red]L2PcInstance[/color] внес:
if(getCurrentMp() < getStat().getMpConsumePercent(skill))
{
// Отправляем системное сообщение кастеру
sendPacket(new SystemMessage(SystemMessageId.NOT_ENOUGH_MP));
// Отправляем Server -> Client пакет о том что "дейтвие прерванно" для L2PcInstance
sendPacket(ActionFailed.STATIC_PACKET);
return;
}
Где я ошибся? что не дописал?