-
Notifications
You must be signed in to change notification settings - Fork 320
ElevatorSaga: grey29boss solutions
grey29boss edited this page Jul 13, 2021
·
2 revisions
Привет всем! Я заинтересовался JS, и случайно нашёл эту игру. Первое моё решение было такое:
{ init: function(elevators, floors) { var elevator = elevators[0]; // Let's use the first elevator // Каждый раз, когда лифт простаивает (больше нет пунктов назначения в очереди) ... elevator.on("idle", function() { // Пойдем на все этажи (или один забыли?) elevator.goToFloor(2); elevator.goToFloor(1); elevator.goToFloor(0); }); update: function(dt, elevators, floors) { // We normally don't need to do anything here} }
Лифт просто подымается без остановок на верхний этаж и спускается на самый нижний, с остановками на каждом этаже, это было самое простое, что я мог сделать. Для 1 и 2 уровня это срабатывает, не всегда. Но все равно не понятно как писать код.
Второе решение было использовать
elevator.on("up_button_pressed", function(floorNum)
// Слушайте событие «up_button_pressed»,
получился такой код:
{ init: function(elevators, floors) { var elevator = elevators[0]; // Let's use the first elevator // Каждый раз, когда лифт простаивает (больше нет пунктов назначения в очереди) ... elevator.on("idle", function() { // Пойдем на все этажи (или один забыли?) elevator.goToFloor(0); elevator.goToFloor(4); }); // Слушайте событие «up_button_pressed», которое возникает, //когда пассажир нажимает кнопку «вверх» на полу, на котором он ожидает. //Это указывает на то, что пассажир хочет перейти на другой этаж. elevator.on("up_button_pressed", function(floorNum) { elevator.goToFloor(floorNum); } ); elevator.on("floor_button_pressed", function(floorNum) // Может, сказать лифту, чтобы он поднялся на этот этаж? { elevator.goToFloor(floorNum); }); }, update: function(dt, elevators, floors) { // We normally don't need to do anything here }}
Лифт подымается на верхний этаж и спускается вниз, и реагирует на кнопки в лифте, как сделать, что бы лифт реагировал на кнопки этажей я так и не понял.
Play it yourself at play.elevatorsaga.com