Любой игрок может легко обмануть эту игру, изменив количество кексов через консоль браузера. Я хотел знать, есть ли способ предотвратить использование пользователем. Это также размещено на github.Запретить пользователю изменять значения игры в консоли браузера
var numberOfCupcakesDisplay = document.getElementById("numberOfCupcakes");
var cupcake = document.getElementById("cupcake");
function updateValues() {
numberOfCupcakesDisplay.innerHTML = amountOfCupcakes.toString();
//displays number of cupcakes to screen
document.getElementById("amountOfToasters").innerHTML = amountOfToasters.toString();
//displays number of toasters to screen
document.getElementById("toasterButton").innerHTML = "        " + Math.round(costOfToasters).toString() + " cc";
//changes cost of toaster every time it is bought by 110%
}
cupcake.addEventListener('webkitAnimationEnd', function(e){
e.preventDefault();
this.style.webkitAnimationName = '';
}, false);
function clickCupcake() {
++amountOfCupcakes;
cupcake.style.animation = "shiftCupcake";
cupcake.style.webkitAnimationName = "shiftCupcake";
}
updateValues();
Любая защита, которую вы пытаетесь вставить, люди могут отменить. Это невозможно. – epascarello
JS - ** клиентская сторона **. Это невозможно изменить. – Doorknob
Создайте локальную переменную, которая содержит значение для защиты и никогда не будет напрямую использовать предоставленные пользователем значения, чтобы изменить его значение. Конечно, если вы отправляете баллы на раскол, тогда все труднее (поскольку HTTP-запросы могут быть легко подделаны). Если бы вы предоставили больше информации, мы могли бы помочь вам лучше. –