js

js

mich
// region замена анимации скеттера в зависимости от его положения
game.config.slots.additionalScatterMap = game.flag.get('bonus') ? { '0': 12, '5': 12, '10': 12, '2': 13, '7': 13, '12': 13, '4': 14, '9': 14, '14': 14 } : { '0': 9, '5': 9, '10': 9, '2': 10, '7': 10, '12': 10, '4': 11, '9': 11, '14': 11 };
window.game.pabk_slots.m.actionVwEmbossedBallsLines = function (data) {
    var wrapper, canvas, mask, comb, cells, count, line;
    wrapper = data[0];
    canvas = data[1];
    mask = data[2];
    comb = data[3];
    cells = data[4];
    count = data[5];
    line = data[6];
    var faceParent = document.createElement('div'),
        tempCollection = [],
        symbol;
    var scatterMap = game.config.slots.additionalScatterMap;
    // подготовка спрайтов
    for (var i = 0, len = mask.length; i < len; i += 1) {
        symbol = mask[i];
        if (symbol) {
            var imgNum;
            if (scatterMap) {
                imgNum = comb[cells[i]];
                if (imgNum === game.config.slots.scatter) {
                    for (var key in scatterMap) {
                        if (key === String(imgNum)) {
                            imgNum = scatterMap[cells[i]];
                        }
                    }
                }
            } else {
                imgNum = comb[cells[i]];
            }
            var _data = {
                wrapper: wrapper,
                canvas: canvas,
                mask: mask,
                comb: comb,
                cells: cells,
                count: count,
                line: line,
                cellNum: cells[i],
                imgNum: imgNum
            };

            //
            var parent = canvas.combSystemVwEmbossedBalls()[i % count][line[i]];
            // спрайты ещё не предзагрузились

            var sprite = game.Sprite.create(parent, window.game.pabk_slots.m.setVwEmbossedBallsAnimName(_data));
            sprite.replaceParent = function () {
                // если уже существует этот же спрайт в другой линии, удаляем этот дубликат и ничего не делаем
                if (this.parent.innerHTML) {
                    this.remove();
                    return;
                }
                // добавляем в DOM ростягиваем и проигрываеим
                this.parent.appendChild(this.wrap);
                this.resize();
                if (this.scenarios) {
                    this.playScene();
                } else {
                    this.play();
                }
            };
            tempCollection.push(sprite);
            window.canvas.winLineSpriteCollection.push(sprite);
            //
        }
    }
    return tempCollection;
};
window.game.pabk_slots.m.actionVwEmbossedBallsScatters = function (data) {
    var wrapper, canvas, iColection, comb, count;
    wrapper = data[0];
    canvas = data[1];
    iColection = data[2];
    comb = data[3];
    count = data[4];
    var faceParent = document.createElement('div'),
        tempCollection = [],
        symbol;
    var mainScatterMap = game.config.slots.additionalScatterMap;
    // подготовка спрайтов
    for (var i = 0, len = iColection.length; i < len; i += 1) {
        symbol = iColection[i];
        var imgNum;
        if (mainScatterMap) {
            imgNum = mainScatterMap[symbol];
        } else {
            imgNum = comb[symbol];
        }
        var _data = {
            wrapper: wrapper,
            canvas: canvas,
            iColection: iColection,
            cellNum: symbol,
            comb: comb,
            count: count,
            imgNum: imgNum
        };


        var parent = canvas.combSystemVwEmbossedBalls()[symbol % count][Math.floor(symbol / count)];
        // спрайты ещё не предзагрузились
        /*
                        if (!game.Sprite.enable) {
                            methods.addStaticWinIcon(parent);
                            continue;
                        }
        */

        var sprite = game.Sprite.create(parent, window.game.pabk_slots.m.setVwEmbossedBallsAnimName(_data));
        sprite.replaceParent = function () {
            // если уже существует этот же спрайт в другой линии, удаляем этот дубликат и ничего не делаем
            if (this.parent.innerHTML) {
                this.remove();
                return;
            }
            // добавляем в DOM ростягиваем и проигрываеим
            this.parent.appendChild(this.wrap);
            this.resize();
            if (this.scenarios) {
                this.playScene();
            } else {
                this.play();
            }
        };
        tempCollection.push(sprite);
        window.canvas.winLineSpriteCollection.push(sprite);
        //
    }
    return tempCollection;
};
window.game.pabk_slots.m.actionVwOriginLines = function (data) {
    var wrapper, canvas, mask, comb, cells, count, line;
    wrapper = data[0];
    canvas = data[1];
    mask = data[2];
    comb = data[3];
    cells = data[4];
    count = data[5];
    line = data[6];
    var faceParent = document.createElement('div'),
        tempCollection = [],
        symbol;
    var scatterMap = game.config.slots.additionalScatterMap;
    // подготовка спрайтов
    for (var i = 0, len = mask.length; i < len; i += 1) {
        symbol = mask[i];
        if (symbol) {
            var imgNum;
            if (scatterMap) {
                imgNum = comb[cells[i]];
                if (imgNum === game.config.slots.scatter) {
                    for (var key in scatterMap) {
                        if (key === String(imgNum)) {
                            imgNum = scatterMap[cells[i]];
                        }
                    }
                }
            } else {
                imgNum = comb[cells[i]];
            }
            var _data = {
                wrapper: wrapper,
                canvas: canvas,
                mask: mask,
                comb: comb,
                cellNum: cells[i],
                cells: cells,
                count: count,
                line: line,
                imgNum: imgNum
            };

            //
            var parent = canvas.combSystemVwOrigin()[i % count][line[i]];
            var sprite = game.Sprite.create(parent, window.game.pabk_slots.m.setVwOriginAnimName(_data));
            sprite.replaceParent = function () {
                // если уже существует этот же спрайт в другой линии, удаляем этот дубликат и ничего не делаем
                if (this.parent.innerHTML) {
                    this.remove();
                    return;
                }
                // добавляем в DOM ростягиваем и проигрываеим
                this.parent.appendChild(this.wrap);
                this.resize();
                if (this.scenarios) {
                    this.playScene();
                } else {
                    this.play();
                }
            };
            tempCollection.push(sprite);
            window.canvas.winLineSpriteCollection.push(sprite);
            //
        }
    }
    return tempCollection;
};
window.game.pabk_slots.m.actionVwOriginScatters = function (data) {
    var wrapper, canvas, iColection, comb, count;
    wrapper = data[0];
    canvas = data[1];
    iColection = data[2];
    comb = data[3];
    count = data[4];
    var faceParent = document.createElement('div'),
        tempCollection = [],
        symbol;
    // подготовка спрайтов
    var additionalScatterMap = game.config.slots.additionalScatterMap;
    for (var i = 0, len = iColection.length; i < len; i += 1) {
        symbol = iColection[i];
        var imgNum;
        if (additionalScatterMap) {
            imgNum = additionalScatterMap[symbol];
        } else {
            imgNum = comb[symbol];
        }
        var _data = {
            wrapper: wrapper,
            canvas: canvas,
            iColection: iColection,
            comb: comb,
            count: count,
            cellNum: symbol,
            imgNum: imgNum
        };
        //
        var parent = canvas.combSystemVwOrigin()[symbol % count][Math.floor(symbol / count)];

        var sprite = game.Sprite.create(parent, window.game.pabk_slots.m.setVwOriginAnimName(_data));
        sprite.replaceParent = function () {
            // если уже существует этот же спрайт в другой линии, удаляем этот дубликат и ничего не делаем
            if (this.parent.innerHTML) {
                this.remove();
                return;
            }
            // добавляем в DOM ростягиваем и проигрываеим
            this.parent.appendChild(this.wrap);
            this.resize();
            if (this.scenarios) {
                this.playScene();
            } else {
                this.play();
            }
        };
        tempCollection.push(sprite);
        window.canvas.winLineSpriteCollection.push(sprite);
        //
    }
    return tempCollection;
};
window.game.pabk_slots.m.actionVwOwnLines = function (data) {
    var wrapper, canvas, mask, comb, cells, count, line;
    wrapper = data[0];
    canvas = data[1];
    mask = data[2];
    comb = data[3];
    cells = data[4];
    count = data[5];
    line = data[6];
    var faceParent = document.createElement('div'),
        tempCollection = [],
        symbol;
    var scatterMap = game.config.slots.additionalScatterMap;
    // подготовка спрайтов
    for (var i = 0, len = mask.length; i < len; i += 1) {
        symbol = mask[i];
        if (symbol) {
            var imgNum;
            if (scatterMap) {
                imgNum = comb[cells[i]];
                if (imgNum === game.config.slots.scatter) {
                    for (var key in scatterMap) {
                        if (key === String(imgNum)) {
                            imgNum = scatterMap[cells[i]];
                        }
                    }
                }
            } else {
                imgNum = comb[cells[i]];
            }
            var _data = {
                wrapper: wrapper,
                canvas: canvas,
                mask: mask,
                comb: comb,
                cells: cells,
                count: count,
                line: line,
                cellNum: cells[i],
                imgNum: imgNum
            };

            //
            var parent = canvas.combSystemVwOwn()[i % count][line[i]];
            var sprite = game.Sprite.create(parent, window.game.pabk_slots.m.setVwOwnAnimName(_data));
            sprite.replaceParent = function () {
                // если уже существует этот же спрайт в другой линии, удаляем этот дубликат и ничего не делаем
                if (this.parent.innerHTML) {
                    this.remove();
                    return;
                }
                // добавляем в DOM ростягиваем и проигрываеим
                this.parent.appendChild(this.wrap);
                this.resize();
                if (this.scenarios) {
                    this.playScene();
                } else {
                    this.play();
                }
            };
            tempCollection.push(sprite);
            window.canvas.winLineSpriteCollection.push(sprite);
            //
        }
    }
    return tempCollection;
};
window.game.pabk_slots.m.actionVwOwnScatters = function (data) {
    var wrapper, canvas, iColection, comb, count;
    wrapper = data[0];
    canvas = data[1];
    iColection = data[2];
    comb = data[3];
    count = data[4];
    var faceParent = document.createElement('div'),
        tempCollection = [],
        symbol;
    var mainScatterMap = game.config.slots.additionalScatterMap;
    // подготовка спрайтов
    for (var i = 0, len = iColection.length; i < len; i += 1) {
        symbol = iColection[i];
        var imgNum;
        if (mainScatterMap) {
            imgNum = mainScatterMap[symbol];
        } else {
            imgNum = comb[symbol];
        }
        var _data = {
            wrapper: wrapper,
            canvas: canvas,
            iColection: iColection,
            cellNum: symbol,
            comb: comb,
            count: count,
            imgNum: imgNum
        };
        var parent = canvas.combSystemVwOwn()[symbol % count][Math.floor(symbol / count)];
        var sprite = game.Sprite.create(parent, window.game.pabk_slots.m.setVwOwnAnimName(_data));
        sprite.replaceParent = function () {
            // если уже существует этот же спрайт в другой линии, удаляем этот дубликат и ничего не делаем
            if (this.parent.innerHTML) {
                this.remove();
                return;
            }
            // добавляем в DOM ростягиваем и проигрываеим
            this.parent.appendChild(this.wrap);
            this.resize();
            if (this.scenarios) {
                this.playScene();
            } else {
                this.play();
            }
        };
        tempCollection.push(sprite);
        window.canvas.winLineSpriteCollection.push(sprite);
        //
    }
    return tempCollection;
};
// endregion