poprawa poruszania

This commit is contained in:
Wojciech Łukasik 2020-04-06 20:09:50 +02:00
parent 41d8e99aeb
commit 7ea0001618

View File

@ -5,9 +5,25 @@ class Agent {
this.yField = y; this.yField = y;
} }
getid(){ getId(){
return this.xField + "-" + this.yField; return this.xField + "-" + this.yField;
} }
right(){
this.yField++;
}
left(){
this.yField--;
}
up(){
this.xField--;
}
down(){
this.xField++;
}
} }
class Field { class Field {
@ -61,14 +77,14 @@ class Shelf {
//Objekty i zmienne //Objekty i zmienne
var regaly = ['1-1', '1-3', '1-4', '1-6', '1-7', '1-9', '2-1', '2-9', '3-3', '3-4', '3-6', '3-7', '4-1', '4-9', '5-1', '5-3', '5-4', '5-6', '5-7', '5-9'] var regaly = ['1-1', '1-3', '1-4', '1-6', '1-7', '1-9', '2-1', '2-9', '3-3', '3-4', '3-6', '3-7', '4-1', '4-9', '5-1', '5-3', '5-4', '5-6', '5-7', '5-9']
const agent = new Agent(3, 0); const agent1 = new Agent(3, 0);
//Funkcja uruchamiająca prace calego scriptu //Funkcja uruchamiająca prace calego scriptu
function start(){ function start(){
ponumerujPola(); //ponumerujPola();
pokolorujRegaly(); pokolorujRegaly();
umiescAgenta(); umiescAgenta(agent1);
droga(); droga(agent1);
} }
//Funkcja kolorujaca miejsca na planszy gdzie znajduja sie regaly //Funkcja kolorujaca miejsca na planszy gdzie znajduja sie regaly
@ -90,37 +106,43 @@ function ponumerujPola(){
} }
} }
//Funkcja usuwająca agenta z pola, przed przemieszczeniem
function usunAgenta(agent){
document.getElementById(agent.getId()).style.backgroundImage = "none";
}
//Funckja wyswietlajaca agenta gdy ten zmieni polozenie //Funckja wyswietlajaca agenta gdy ten zmieni polozenie
function umiescAgenta() { function umiescAgenta(agent) {
document.getElementById(id).style.backgroundImage = "none"; document.getElementById(agent.getId()).style.backgroundImage = "url('Agent.jpg')";
id = agent.getid();
document.getElementById(id).style.backgroundImage = "url('Agent.jpg')";
} }
//Funkcja zmieniajaca polozenie agenta o 1 pole //Funkcja zmieniajaca polozenie agenta o 1 pole
function przemieszczenie(side, time){ function przemieszczenie(side, time, agent){
const lastPosition = agent.getId();
setTimeout(function(){ setTimeout(function(){
usunAgenta(agent)
if(side == "left") if(side == "left")
agent.yField--; agent.left();
if(side == "right") if(side == "right")
agent.yField++; agent.right();
if(side == "up") if(side == "up")
agent.xField--; agent.up();
if(side == "down") if(side == "down")
agent.xField++; agent.down();
umiescAgenta(); umiescAgenta(agent);
}, time); }, time);
} }
//Funkcja ktora ustala droge agenta do przebycia //Funkcja ktora ustala droge agenta do przebycia
function droga() { function droga(agent) {
przemieszczenie("right", 1000); przemieszczenie("right", 1000, agent);
przemieszczenie("right", 2000); przemieszczenie("right", 2000, agent);
przemieszczenie("up", 3000); przemieszczenie("up", 3000, agent);
przemieszczenie("right", 4000); przemieszczenie("right", 4000, agent);
przemieszczenie("right", 5000); przemieszczenie("right", 5000, agent);
przemieszczenie("right", 6000); przemieszczenie("right", 6000, agent);
przemieszczenie("right", 7000); przemieszczenie("right", 7000, agent);
przemieszczenie("right", 8000); przemieszczenie("right", 8000, agent);
przemieszczenie("right", 9000); przemieszczenie("right", 9000, agent);
} }