Простой метод AI, чтобы заставить спрайта следовать за игроком, используя физику автомобиля? - PullRequest
2 голосов
/ 25 октября 2019

Я делаю нативную игру о битвах с использованием JavaScript. Мне нужен простой метод, чтобы вражеская машина следовала за игроком по карте на основе координат игроков. Сложность для меня заключается в том, что мне нужно убедиться, что вражеская машина использует ту же физику вращения, что и игрок.

Что я ищу, так это помощь в создании простой формулы движения, которая решит, когда двигаться вперед / назад и / или когда вращать противника, чтобы приблизить его к игроку.

Я пробовал много разных «if врага.х> player.x ..», но я думаю, что это потребует математической функции, выходящей за рамки простой логики, может быть, что-то с использованием перехвата склона или что-то, но я не знаю, какреализовать

//this is the actual movement algorithm I am using
this.move=function(){
this.angle += this.rotation * Math.PI / 180;
this.nextX = this.x + this.speed * Math.sin(this.angle);
this.nextY = this.y - this.speed * Math.cos(this.angle

//This is how I am moving the player character atm
 if(LEFT) { 
        this.rotation = -1;
    }else if(RIGHT) {
        this.rotation = 1;   
    }else {this.rotation = 0;}

    if(UP && !BOOST) { 
        this.speed = 1;
    }else if(DOWN) {
        this.speed = -1;   
    }else if(UP && BOOST) {
        this.speed = 4;   
    }else {this.speed = 0;}
...