Изменнение значения в нескольких переменных при клике по кнопке
Использовал изначально код найденный в данном форуме, преобразовал его под себя, выполнил часть задуманного (делаю-учусь калькулятор талантов для одной игры, но главная часть научиться).
Но теперь нужно сделать так чтобы изменяя значения переменной 'strong' (кликая по кнопке) изменялось и значение переменной 'meleedmg' при этом если начать изменение переменной meleedmg с помощью кнопок для этой переменной то увеличение шло с учетом ранее измененного значения, т.е. при нажатии кнопки "+" strong было увеличено до 10 то и meleedmg увеличилось до 10, но когда начинаешь увеличивать кнопкой "+" присвоенной для meleedmg увеличение шло уже от 10 а не от базового 2! Вот исполняемая функция: function change(a, id) { var ostlvlpoint = +(document.getElementById('ostlvlpoint').value); var ostperkpoint = +(document.getElementById('ostperkpoint').value); // Распределение доступных очков уровня var val = parseInt(document.getElementById(id).value); // Условие для увеличения параметров уровня if (a == 'up') { if (val > 0 && val < 20 && ostlvlpoint > 0) document.getElementById(id).value = val + 1; } // Условие для увеличения уровня else if (a == 'lvlup'){ if (val < 40) document.getElementById(id).value = val + 1; } // Услови увеличения значений навыка if (a == 'perkup') { if (val > 0 && val < 99 && ostperkpoint > 0) document.getElementById(id).value = val + 1; } // Условие для уменьшения параметров уровня else if (a == 'down') { if (val > 2) document.getElementById(id).value = val - 1; } // Условие для уменьшение уровня else if (a == 'lvldown'){ if (val > 0 && ostlvlpoint > 0) document.getElementById(id).value = val - 1; } // Условие для уменьшения значений навыка else if (a == 'perkdown') { if (val > 2) document.getElementById(id).value = val - 1; } // Получение значений параметров уровня var strong = +(document.getElementById('strong').value); var dexterity = +(document.getElementById('dexterity').value); var endurance = +(document.getElementById('endurance').value); var intelligence = +(document.getElementById('intelligence').value); var technology = +(document.getElementById('technology').value); var luck = +(document.getElementById('luck').value); // Получение значения уровня var lvl = +(document.getElementById('lvl').value); // Калькуляция значений доступных очков уровня var lvlpoint = lvl + 30; var ostlvlpoint = lvlpoint - strong - dexterity - endurance - intelligence - technology - luck; document.getElementById('ostlvlpoint').value = ostlvlpoint; // Калькуляция очков навыков Силы var meleedmg = +(document.getElementById('meleedmg').value); var coldsteelarms = +(document.getElementById('coldsteelarms').value); var heavyarms = +(document.getElementById('heavyarms').value); // Калькуляция очков навыков Ловкости var lightarms = +(document.getElementById('lightarms').value); var theft = +(document.getElementById('theft').value); var throwing = +(document.getElementById('throwing').value); // Калькуляция очков навыков Выносливости var travel = +(document.getElementById('travel').value); var heavyarmor = +(document.getElementById('heavyarmor').value); var middlearms = +(document.getElementById('middlearms').value); // Калькуляция очков навыков Интелекта var trading = +(document.getElementById('trading').value); var medicine = +(document.getElementById('medicine').value); var oratory = +(document.getElementById('oratory').value); // Калькуляция очков навыков Технологии var techweapon = +(document.getElementById('techweapon').value); var mastery = +(document.getElementById('mastery').value); var science = +(document.getElementById('science').value); // Калькуляция очков навыков Удачи var lucky = +(document.getElementById('lucky').value); var camouflage = +(document.getElementById('camouflage').value); var traps = +(document.getElementById('traps').value); var perkpoint = lvl * (5 + intelligence * 2) + 9; var ostperkpoint = perkpoint - (meleedmg - 2) - (middlearms - 2) - (travel - 2) - (trading - 2) - (techweapon - 2) - (lucky - 2) - (coldsteelarms - 2) - (theft - 2) - (heavyarmor - 2) - (medicine - 2) - (mastery - 2) - (camouflage - 2) - (heavyarms - 2) - (throwing - 2) - (lightarms - 2) - (oratory - 2) - (science - 2) - (traps - 2); document.getElementById('ostperkpoint').value = ostperkpoint; } В работе глянуть можно тут: http://skies-calc.clan.su |
Часовой пояс GMT +3, время: 17:32. |