Анимация.переключитьКадр

This commit is contained in:
2022-05-24 17:19:24 +03:00
parent 86bc931b3e
commit df55d08da3

View File

@@ -2,20 +2,11 @@ function Анимация(элемент, параметры)
{ {
this.анимировать = function() this.анимировать = function()
{ {
this.номерКадра += 1; if (!this.переключитьКадр())
if (this.номерКадра >= this.колвоКадров)
{ {
this.номерВоспроизведения += 1; this.идёт = false;
this.номерКадра = 0; return;
if (
this.воспроизведений > 0 &&
this.номерВоспроизведения >= this.воспроизведений
) {
this.идёт = false;
return;
}
} }
let x0 = this.началоДиапазона[0]; let x0 = this.началоДиапазона[0];
let y0 = this.началоДиапазона[1]; let y0 = this.началоДиапазона[1];
let x = this.поГоризонтали ? x0 + this.номерКадра * this.кадр[0] : x0; let x = this.поГоризонтали ? x0 + this.номерКадра * this.кадр[0] : x0;
@@ -46,6 +37,23 @@ function Анимация(элемент, параметры)
this.номерОтрисовки = итерация; this.номерОтрисовки = итерация;
}; };
this.переключитьКадр = function()
{
this.номерКадра += 1;
if (this.номерКадра >= this.колвоКадров)
{
this.номерВоспроизведения += 1;
this.номерКадра = 0;
if (
this.воспроизведений > 0 &&
this.номерВоспроизведения >= this.воспроизведений
) {
return false;
}
}
return true;
};
this.подготовитьДиапазон = function(н) this.подготовитьДиапазон = function(н)
{ {
let ширинаДиапазона = Math.abs(this.диапазоны[н][2] - this.диапазоны[н][0]); let ширинаДиапазона = Math.abs(this.диапазоны[н][2] - this.диапазоны[н][0]);