сигнал приземления стрелы на лук
This commit is contained in:
@@ -318,10 +318,14 @@
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
столкновения: {
|
столкновения: {
|
||||||
стрела: {
|
стрелаНачало: {
|
||||||
объекты: ["кирпич", "сенсор"],
|
объекты: ["кирпич", "сенсор"],
|
||||||
событие: "сенсор стрелы",
|
событие: "сенсор стрелы",
|
||||||
},
|
},
|
||||||
|
стрелаКонец: {
|
||||||
|
объекты: ["стрела", "лук"],
|
||||||
|
событие: "стрела и лук",
|
||||||
|
},
|
||||||
},
|
},
|
||||||
маскиПрыжков: {
|
маскиПрыжков: {
|
||||||
стрела: {
|
стрела: {
|
||||||
@@ -337,7 +341,8 @@ function ПодкидываниеСтрелы() {
|
|||||||
this.времяСтрелы = null;
|
this.времяСтрелы = null;
|
||||||
this.времяПриземления = null;
|
this.времяПриземления = null;
|
||||||
this.подкинули = false;
|
this.подкинули = false;
|
||||||
this.закинули = null;
|
this.закинули = false;
|
||||||
|
this.завершить = null;
|
||||||
|
|
||||||
мир.события.подписать(this);
|
мир.события.подписать(this);
|
||||||
};
|
};
|
||||||
@@ -353,12 +358,21 @@ function ПодкидываниеСтрелы() {
|
|||||||
this.времяПриземления = мир.физика.движок.timing.timestamp;
|
this.времяПриземления = мир.физика.движок.timing.timestamp;
|
||||||
this.подкинуть();
|
this.подкинуть();
|
||||||
}
|
}
|
||||||
else if (событие = "игрок начал прыжок")
|
else if (событие == "игрок начал прыжок")
|
||||||
{
|
{
|
||||||
this.времяСтрелы = null;
|
this.времяСтрелы = null;
|
||||||
this.времяПриземления = null;
|
this.времяПриземления = null;
|
||||||
this.подкинули = false;
|
this.подкинули = false;
|
||||||
}
|
}
|
||||||
|
else if (
|
||||||
|
(событие == "стрела и лук") &&
|
||||||
|
this.закинули &&
|
||||||
|
this.завершить
|
||||||
|
) {
|
||||||
|
мир.события.уведомить("закинули стрелу");
|
||||||
|
мир.события.отписать(this);
|
||||||
|
this.завершить();
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
this.подкинуть = function() {
|
this.подкинуть = function() {
|
||||||
@@ -378,13 +392,9 @@ function ПодкидываниеСтрелы() {
|
|||||||
{ x: 0, y: -мир.игрок.приземление.скорость * 1.2 }
|
{ x: 0, y: -мир.игрок.приземление.скорость * 1.2 }
|
||||||
);
|
);
|
||||||
|
|
||||||
// Уведомить о достижении нужной скорости.
|
if (мир.игрок.приземление.скорость > 16)
|
||||||
if (
|
{
|
||||||
(мир.игрок.приземление.скорость > 16) &&
|
this.закинули = true;
|
||||||
this.закинули
|
|
||||||
) {
|
|
||||||
мир.события.отписать(this);
|
|
||||||
this.закинули();
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -393,6 +403,27 @@ function ПодкидываниеСтрелы() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
мир.подкидываниеСтрелы = new ПодкидываниеСтрелы();
|
мир.подкидываниеСтрелы = new ПодкидываниеСтрелы();
|
||||||
мир.подкидываниеСтрелы.закинули = function() {
|
мир.подкидываниеСтрелы.завершить = function() {
|
||||||
мир.подкидываниеСтрелы = null;
|
мир.подкидываниеСтрелы = null;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
// // // //
|
||||||
|
// Отладка событий
|
||||||
|
// // // //
|
||||||
|
|
||||||
|
|
||||||
|
function ОтладкаСобытий() {
|
||||||
|
this.обработатьСобытие = function(событие) {
|
||||||
|
if (событие == "закинули стрелу")
|
||||||
|
{
|
||||||
|
console.debug("событие", событие);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
// Конструктор.
|
||||||
|
мир.события.подписать(this);
|
||||||
|
}
|
||||||
|
|
||||||
|
мир.отладкаСобытий = new ОтладкаСобытий();
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user