Что с этим сбивает с толку ... getters - это функции, которые вызывается, когда вы получаете свойство, сеттеры, когда вы его устанавливаете. Например, если вы выполняете
obj.prop = "abc";
Вы устанавливаете свойство prop, если вы используете геттеры / сеттеры, тогда будет вызываться функция setter, в качестве аргумента будет «abc». Определение функции setter внутри объекта идеально выглядело бы примерно так:
set prop(var) {
// do stuff with var...
}
Я не уверен, насколько хорошо это реализовано в браузерах. Похоже, у Firefox также есть альтернативный синтаксис, с использованием специальных методов («волшебных») с двойным подчеркиванием. Как обычно, Internet Explorer не поддерживает ничего из этого.
Разобрался
public static boolean onFloor;
public void tick() {
if(Main.isStarted()) {
floor();
if(!onFloor) {
Player.setVelY(20);
}else {
Player.setVelY(0);
}
}
}
private void floor() {
clamp(0, 5000, 824, "f");
clamp(5000, 10000, 750, "p");
}
private void clamp(int start, int stop, int minY, String type) {
if(x > start && x < stop) {
if(Player.getY() != minY) {
if(Player.getY() > minY) {
if(type != "p") {
Player.setY(minY);
Player.setVelY(0);
onFloor = true;
return;
}
}
if(!Player.jumping) {
Player.setVelY(10);
onFloor = false;
}
}else if(Player.getY() == minY) {
Player.setY(minY);
Player.setVelY(0);
onFloor = true;
}else if(Player.getY() > minY) {
if(type != "p") {
Player.setY(minY);
Player.setVelY(0);
}
}
}
}