Всем доброго времени суток.
Случилось так, что необходима небольшая помощь программиста javascript. Есть такая игра, Fallen Earth, и есть к ней
планировщик персонажей. Все в нем отлично, однако планировать персонажа крайне неудобно вследствие того, что при изменении уровня, изменяется количество вложенных баллов (АР) в атрибут (attributes). Нужна привязка значения атрибута к количеству вложенных АР. Исходники имеются, но смотрю на них как конь на старые ворота. Подробнее - ниже:
Если добавляешь/убавляешь к старшему значению (level), то по имеющейся формуле младшее значение (attribute) елозят как хотят, в прямой зависимости от старшего. Т.е., вычитаешь 1 из старшего значения, младшее значение остается на том же уровне, а по факту прибавляет +1. А надо, чтобы было (текущее значение) = (минимум + уже добавленное в младшее значение, но не выше максимума и не ниже минимума).
Нагляднее, в самом планировщике ставим level, скажем, на 10. вычитаем -1, получаем 9-й уровень и +1 ко всем атрибутам. А атрибуты не трогали, они не должны прибавляться. Но прибавляются по исходной формуле. Второй вариант, не трогаешь уровень, ставишь любой атрибут на, скажем, 15 (+4). прибавляешь +1 level, атрибут остается на том же значении 15, а должен оставаться на (+4), т.е. увеличиться до 16.
В общем, необходимо задать основную привязку к (+вложенные в атрибуты баллы, не выше максимума и не ниже минимума), а не как сейчас. Т.е., добавил +5 в атрибут и спокоен, что добавляй уровни, убирай, они там останутся при любом раскладе. И тебе не надо вспоминать, откатив персонажа на 5 уровней, сколько ты куда вложил.
Как объяснил один знакомый программер, здесь дел на 10 минут, необходимо ввести массив, в котором собственно будут храниться эти вложенные баллы. К сожалению, для меня это все равно что собственноручно построить дом - теорию то могу подучить, но практики все равно нет. А через год мне эти изменения уже может и не понадобятся.
Может кто-нибудь возьмется для общего образования и просто ради помощи ближнему? : ) Если вдруг такой добрый самаритянин появится,
andrleslie@gmail.com.