Я только начинаю сбрасывать простую игру, где ваша точка, которая нуждается в еде, или вы умираете. Просто, это просто забавная вещь.При вращении персонажа он вращает определенное количество, а затем возвращается
Я пытаюсь использовать другой метод, чем я обычно делаю, когда персонаж вращается, а затем движется.
Когда символ вращается, он проходит определенное количество, а затем вращается в другом направлении на определенную величину. Затем он повторяется. Как заставить его просто вращать в одном направлении, а не чередовать (и просто все время в одном и том же направлении).
Rotate сценарий:
self.rotationy = 0;
self.rotationx = 0;
self.turnLeft = function() {
self.rotationy -= 0.1;
};
self.turnRight = function() {
self.rotationy += 0.1;
};
self.move = function() {
var posX = Math.sin(self.rotationy);
var posZ = Math.cos(self.rotationy);
self.locationx += posX + 3;
self.locationy += posZ + 3;
};
Если это важно, вот скрипт обновления:
self.update = function() {
self.hunger -= 0.003;
self.updateColour();
if (self.hunger <= 0) {
self.die();
} else if (self.hunger >= 1) {
self.die();
}
if (self.locationx <= 20) {
self.locationx = canvas.width - 21;
} else if (self.locationx >= canvas.width - 20) {
self.locationx = 21;
} else if (self.locationy <= 20) {
self.locationy = canvas.height - 21;
} else if (self.locationy >= canvas.height) {
self.locationy = 21;
}
drawCircle(ctx, self.locationx, self.locationy, 20, self.colour);
};
self.die = function() {
};
setInterval(self.update, 50);
};
Вот JSFiddle: http://jsfiddle.net/hzhubf8o/
Также обратите внимание, что я не создал функцию очистите пройденный путь.
Заранее благодарен!
Не удается воспроизвести вашу «переменный» проблемы, но «же общее направление» из-за '+ 3' вас там - он всегда будет идти в положительное направление вдоль X и Y. – Siguza
Oh. Благодаря! Так оно и было. Но теперь это идет медленно, как мне ускорить его? – Xelipho
Вы можете попробовать '*' для начала ... – Siguza