ĐÈN FLASH PIXEL X800 PRO FOR CANON
            
        
        
         Giá từ: 
                             1,190,000đ
        
        
            
        
     
 
    
    
        
            
ĐÈN FLASH GODOX V1 FOR NIKON
            
        
        
         Đơn giá 
                 3,500,000đ
        
        
            
        
     
 
    
    
        
            
Đèn Flash Godox V1 cho Nikon
            
        
        
         Đơn giá 
                 3,500,000đ
        
        
            
        
     
 
    
    
        
            
Đèn Flash Godox V1 cho Sony
            
        
        
         Đơn giá 
                 3,500,000đ
        
        
            
        
     
 
    
    
        
            
Đế gắn phụ kiện tản sáng Godox (S-R1)
            
        
        
         Đơn giá 
                 130,000đ
        
        
            
        
     
 
    
    
        
            
Choá đèn chớp Godox cho dòng AD600 (AD-R6)
            
        
        
         Đơn giá 
                 180,000đ
        
        
            
        
     
 
    
    
        
            
Softbox adapter cho ngàm Bowens SA-01-BW
            
        
        
         Đơn giá 
                 300,000đ
        
        
            
        
     
 
    
    
        
            
Túi đựng đèn Godox AD600 (PB-600)
            
        
        
         Đơn giá 
                 300,000đ
        
        
            
        
     
 
    
    
        
            
Sạc pin cho đèn flash V860 – VC18
            
        
        
         Đơn giá 
                 380,000đ
        
        
            
        
     
 
    
    
        
            
Đế đỡ Godox S2 – Type
            
        
        
         Đơn giá 
                 450,000đ
        
        
            
        
     
 
    
    
        
            
Sạc cho pin Godox WB87 - AD600
            
        
        
         Đơn giá 
                 680,000đ
        
        
            
        
     
 
    
    
        
            
Điều khiển Godox XT-16
            
        
        
         Đơn giá 
                 800,000đ
        
        
            
        
     
 
    
    
        
            
Đầu đèn nối dài cho AD200 (EC200)
            
        
        
         Đơn giá 
                 960,000đ
        
        
            
        
     
 
    
    
        
            
Đầu gắn đèn kéo dài cho Godox AD600 (AD-H600B)
            
        
        
         Đơn giá 
                 1,200,000đ
        
        
            
        
     
 
    
    
        
            
Bộ phát không dây TTL Godox XPRO (For Canon)
            
        
        
         Đơn giá 
                 1,300,000đ
        
        
            
        
     
 
    
    
        
            
Bộ chuyển đổi điện AC-DC Godox AD600
            
        
        
         Đơn giá 
                 1,600,000đ
        
        
            
        
     
 
    
    
        
            
Bộ đổi nguồn AC26 cho đèn Godox AD600 Pro
            
        
        
         Đơn giá 
                 2,380,000đ
        
        
            
        
     
 
    
    
        
            
Pin sạc Godox WB87 cho Godox AD600B/BM
            
        
        
         Đơn giá 
                 2,380,000đ
        
        
            
        
     
 
    
    
        
            
Đèn Flash Godox QS400II
            
        
        
         Đơn giá 
                 3,480,000đ
        
        
            
        
     
 
    
    
        
            
Pin cho AD600pro (WB-26)
            
        
        
         Đơn giá 
                 3,600,000đ
        
        
            
        
     
 
    
    
        
            
Đèn Flash Godox QS600II
            
        
        
         Đơn giá 
                 4,200,000đ
        
        
            
        
     
 
    
    
 
    
    
        
            
Đèn Flash Godox QT400IIM
            
        
        
         Đơn giá 
                 6,800,000đ
        
        
            
        
     
 
    
    
        
            
Pin Godox WB30P cho đèn AD300 Pro
            
        
        
         Đơn giá 
                 7,990,000đ
        
        
            
        
     
 
    
    
        
            
Đèn Flash Godox QT1200IIM
            
        
        
        
        
        
            
        
     
 
    
    
        
            
Đèn Flash Godox AD600 Pro
            
        
        
         Đơn giá 
                 14,200,000đ
        
        
            
        
     
 
    
    
        
            
Chóa đèn Godox AD-R12 cho dòng AD300 Pro / AD400 Pro
            
        
        
        
                
                    Vui lòng gọi
                
        
        
            
        
     
 
    
    
        
            
ĐÈN FLASH FUJIFILM EF-X500
            
        
        
         Giá từ: 
                             2,790,000đ
        
        
            
        
     
 
    
    
        
            
ĐÈN FLASH FUJIFILM EF-X8
            
        
        
        
                
                    Vui lòng gọi
                
        
        
            
        
     
 
    
    
        
            
ĐÈN FLASH CANON SPEEDLITE 600EX
            
        
        
        
                
                    Vui lòng gọi
                
        
        
            
        
     
 
             
            
                
            
         
        
        
     
    
    
    
	ĐÈN FLASH CANON SPEEDLITE 270EX II
	FLASH YONGNUO SPEEDLITE 565EX
	ĐÈN FLASH CANON SPEEDLITE 540EZ
	ĐÈN FLASH GODOX TT600
	ĐÈN FLASH NIKON SB-600
	ĐÈN FLASH NIKON SB-700
	ĐÈN FLASH NIKON SB-22
	ĐÈN FLASH NIKON SB-26
	ĐÈN FLASH NIKON SB-28
	ĐÈN FLASH NIKON SB-910
	ĐÈN FLASH NIKON SB-900
	ĐÈN FLASH YONGNUO SPEEDLITE 565EX II
	ĐÈN FLASH CANON SPEEDLITE 600EX-RT II
	ĐÈN FLASH CANON SPEEDLITE X800 PRO
	ĐÈN FLASH NIKON SB-28DX
	ĐÈN FLASH NIKON SB-800
	ĐÈN FLASH NIKON SB-24
	ĐÈN FLASH NIKON SB-80DX
	ĐÈN FLASH GODOX TT685 II FOR NIKON
	ĐÈN FLASH GODOX TT685 II FOR CANON
	ĐÈN FLASH GODOX TT685 II FOR SONY
	ĐÈN FLASH GODOX TT685 FOR SONY
	ĐÈN FLASH GODOX TT685 FOR NIKON
	ĐÈN FLASH CANON SPEEDLITE 430EX
	ĐÈN FLASH CANON SPEEDLITE 550EX
	ĐÈN FLASH CANON SPEEDLITE 430EX II
	ĐÈN FLASH CANON SPEEDLITE 600EX-RT
	ĐÈN FLASH CANON SPEEDLITE 580EX II
	ĐÈN FLASH NISSIN I40 FOR FUJIFILM
	ĐÈN FLASH GODOX TT685 FOR CANON
	ĐÈN FLASH NIKON SPEEDLIGHT SB-28
	ĐÈN FLASH GODOX ML-100 BI
	Nikon Speedlight SB-300
	Nikon Speedlight SB-700
	Nikon Speedlight SB-5000
	Nikon R1C1 Wireless Close-Up Speedlight System
	Viltrox Vintage Z1 On-Camera Flash – chính hãng
	Olympus STF-8 Macro Flash – Đèn flash macro đôi
	Ngàm chuyển cáp quang PFCA-03 Optical Cable Adaptor
	Ngàm giữ đèn PTSA-02 Flash holder
	ĐÈN FLASH GODOX AD-100 PRO
	ĐÈN FLASH GODOX TT350 FOR FUJIFILM
	ĐÈN FLASH GODOX AD-200
	ĐÈN GODOX TT520II
	ĐÈN FLASH GODOX TT685 II FOR FUJIFILM
	ĐÈN FLASH GODOX TT685 FOR FUJIFILM
	ĐÈN FLASH MEIKE SPEEDLITE MK-950II FOR CANON
	ĐÈN FLASH NIKON SB-25
	FLASH SONY HVL-F7S
	ĐÈN FLASH GODOX V860 II FOR LUMIX
	FLASH CANON SPEEDLITE 90EX
	ĐÈN FLASH OLYMPUS FL-LM2
	ĐÈN FLASH SONY HVL-F20M
	ĐÈN GODOX RETRO LUX JUNIOR
	ĐÈN FLASH CANON SPEEDLITE 470EX-AI
	ĐÈN FLASH GODOX V860 III FOR LUMIX
	ĐÈN FLASH CANON SPEEDLITE 244T
	ĐÈN FLASH GODOX V1 FOR OLYMPUS
	ĐÈN FLASH PIXEL X800N PRO FOR NIKON
	ĐÈN FLASH GODOX V1 FOR LUMIX
	ĐÈN FLASH YONGNUO SPEEDLITE 600EX - RT II
	ĐÈN FLASH GODOX TT350 FOR NIKON
	ĐÈN FLASH GODOX TT350 FOR CANON
	ĐÈN FLASH GODOX V1 FOR FUJIFILM
	ĐÈN FLASH GODOX V860 II FOR FUJIFILM
	ĐÈN FLASH GODOX V860 II FOR CANON
	ĐÈN FLASH GODOX V860 II FOR NIKON
	Đèn Flash Godox Lux Cadet Retro
	ĐÈN FLASH GODOX IT30 PRO CANON
	ĐÈN FLASH GODOX IT30 PRO SONY
	CHÂN VỊT
	TẢN VUÔNG
	TAI GẤU
	TẢN SÁNG GODOX AK-R11
	KẸP FLASH
	CHÂN ĐÈN FLASH GODOX TT685 FOR FUJIFILM
	CHÂN ĐÈN FLASH GODOX TT685 FOR SONY
	CHÂN ĐÈN FLASH GODOX TT685 FOR NIKON
	CHÂN ĐÈN FLASH GODOX TT685 FOR CANON
	LED FLASH HEAD FOR AD200
	NGÀM TẢN SÁNG GODOX S-R1
	TẢN SÁNG GODOX AK-R12
	TẢN SÁNG GODOX AK-R22
	BỘ TẢN SÁNG ĐÈN FLASH GODOX AK-R1
	ĐÈN FLASH GODOX TT350 FOR SONY
	BÓNG ĐÈN AD-600 PRO
	ĐÈN FLASH GODOX V480
	ĐÈN FLASH GODOX V860 III FOR SONY
	ĐÈN FLASH GODOX V860 III FOR CANON
	ĐÈN FLASH GODOX V860 III FOR NIKON
	Đèn flash Godox V860III For Fujifilm
	ĐÈN FLASH GODOX V1 FOR CANON
	Đèn Flash Godox V1 cho Canon
	Đèn Flash Godox V1 cho Fujifilm
	ĐÈN FLASH MACRO GODOX MF12 - K2
	ĐÈN FLASH GODOX V1 PRO FOR SONY
	ĐÈN FLASH GODOX V1 PRO FOR CANON
	ĐÈN FLASH GODOX V1 PRO FOR NIKON
	Flash Sony HVL-F28RM
	Flash Sony HVL F32M
	Đèn Flash Godox - AD200 Pro II
	Đèn Flash Godox AD600BM
	ĐÈN FLASH CANON SPEEDLITE 430EX III
	ĐÈN FLASH GODOX AD300 PRO
	Đèn Flash Sony HVL-F45RM
	Đèn Flash Sony HVL-F46RM
	Đèn Flash Sony HVL-F60RM
	ĐÈN FLASH SONY HVL-F60RM2
	Đèn Led Video Light Sony HVL LBPC
	Đèn Flash Godox QT600IIM
	Pin cho Godox V1 (VB26)
	Bộ Barndoor & Snoot Godox BD-10-SN-04 cho dòng AD300 Pro / AD400 Pro
	Đầu đèn đôi Godox AD-B2
	Đèn Flash GODOX V860II cho Canon
	Đèn Flash GODOX V860II cho Nikon
	Đèn Flash GODOX V860II cho Sony
	Đèn Flash GODOX V860II cho Fujifilm
	Đèn Flash GODOX AD200 PRO
    (function () {
        const requestAnimFrame = (function () {
            return window.requestAnimationFrame ||
                window.webkitRequestAnimationFrame ||
                window.mozRequestAnimationFrame ||
                function (callback) {
                    window.setTimeout(callback, 1000 / 60);
                };
        })();
        const hieuUngPhaoHoa = {
            canvas: document.getElementById('hieuUngPhaoHoa__canvas'),
            ctx: null,
            cw: window.innerWidth,
            ch: window.innerHeight,
            fireworks: [],
            particles: [],
            colors: [0, 60, 300], // Mảng các màu
            hue: 0,
            timerTotal: 30, // Giảm thời gian giữa các lần bắn
            timerTick: 0,
            isActive: true, // Biến để kiểm soát trạng thái hoạt động
            init: function () {
                this.ctx = this.canvas.getContext('2d');
                this.canvas.width = this.cw;
                this.canvas.height = this.ch;
                this.loop();
                // Tự động dừng sau 5 giây
                setTimeout(() => {
                    this.isActive = false;
                }, 5000);
            },
            calculateDistance: function (p1x, p1y, p2x, p2y) {
                const xDistance = p1x - p2x;
                const yDistance = p1y - p2y;
                return Math.sqrt(Math.pow(xDistance, 2) + Math.pow(yDistance, 2));
            },
            random: function (min, max) {
                return Math.random() * (max - min) + min;
            },
            createParticles: function (x, y) {
                let particleCount = 30;
                // Chọn màu ngẫu nhiên từ mảng
                this.hue = this.colors[Math.floor(Math.random() * this.colors.length)];
                while (particleCount--) {
                    this.particles.push(new Particle(x, y, this));
                }
            },
            // Main loop
            loop: function () {
                if (!this.isActive && this.fireworks.length === 0 && this.particles.length === 0) {
                    return; // Dừng animation khi hết pháo hoa
                }
                requestAnimFrame(this.loop.bind(this));
                this.hue += 0.5;
                this.ctx.globalCompositeOperation = 'destination-out';
                this.ctx.fillStyle = 'rgba(0, 0, 0, 0.5)';
                this.ctx.fillRect(0, 0, this.cw, this.ch);
                this.ctx.globalCompositeOperation = 'lighter';
                let i = this.fireworks.length;
                while (i--) {
                    this.fireworks[i].draw();
                    this.fireworks[i].update(i);
                }
                i = this.particles.length;
                while (i--) {
                    this.particles[i].draw();
                    this.particles[i].update(i);
                }
                // Tự động bắn pháo hoa nếu đang hoạt động
                if (this.isActive && this.timerTick >= this.timerTotal) {
                    this.fireworks.push(new Firework(
                        this.cw / 2, this.ch,
                        this.random(0, this.cw),
                        this.random(0, this.ch / 2),
                        this
                    ));
                    this.timerTick = 0;
                } else {
                    this.timerTick++;
                }
            }
        };
        // Firework class
        class Firework {
            constructor(sx, sy, tx, ty, main) {
                this.main = main;
                this.x = sx;
                this.y = sy;
                this.sx = sx;
                this.sy = sy;
                this.tx = tx;
                this.ty = ty;
                this.distanceToTarget = main.calculateDistance(sx, sy, tx, ty);
                this.distanceTraveled = 0;
                this.coordinates = [];
                this.coordinateCount = 3;
                while (this.coordinateCount--) {
                    this.coordinates.push([this.x, this.y]);
                }
                this.angle = Math.atan2(ty - sy, tx - sx);
                this.speed = 2;
                this.acceleration = 1.05;
                this.brightness = main.random(50, 70);
                this.targetRadius = 1;
            }
            update(index) {
                this.coordinates.pop();
                this.coordinates.unshift([this.x, this.y]);
                if (this.targetRadius < 8) {
                    this.targetRadius += 0.3;
                } else {
                    this.targetRadius = 1;
                }
                this.speed *= this.acceleration;
                const vx = Math.cos(this.angle) * this.speed;
                const vy = Math.sin(this.angle) * this.speed;
                this.distanceTraveled = this.main.calculateDistance(
                    this.sx, this.sy, this.x + vx, this.y + vy
                );
                if (this.distanceTraveled >= this.distanceToTarget) {
                    this.main.createParticles(this.tx, this.ty);
                    this.main.fireworks.splice(index, 1);
                } else {
                    this.x += vx;
                    this.y += vy;
                }
            }
            draw() {
                this.main.ctx.beginPath();
                this.main.ctx.moveTo(
                    this.coordinates[this.coordinates.length - 1][0],
                    this.coordinates[this.coordinates.length - 1][1]
                );
                this.main.ctx.lineTo(this.x, this.y);
                this.main.ctx.strokeStyle = `hsl(${this.main.hue}, 100%, ${this.brightness}%)`;
                this.main.ctx.stroke();
            }
        }
        // Particle class
        class Particle {
            constructor(x, y, main) {
                this.main = main;
                this.x = x;
                this.y = y;
                this.coordinates = [];
                this.coordinateCount = 5;
                while (this.coordinateCount--) {
                    this.coordinates.push([this.x, this.y]);
                }
                this.angle = main.random(0, Math.PI * 2);
                this.speed = main.random(1, 10);
                this.friction = 0.95;
                this.gravity = 1;
                this.hue = main.random(main.hue - 20, main.hue + 20);
                this.brightness = main.random(50, 80);
                this.alpha = 1;
                this.decay = main.random(0.015, 0.03);
            }
            update(index) {
                this.coordinates.pop();
                this.coordinates.unshift([this.x, this.y]);
                this.speed *= this.friction;
                this.x += Math.cos(this.angle) * this.speed;
                this.y += Math.sin(this.angle) * this.speed + this.gravity;
                this.alpha -= this.decay;
                if (this.alpha <= this.decay) {
                    this.main.particles.splice(index, 1);
                }
            }
            draw() {
                this.main.ctx.beginPath();
                this.main.ctx.moveTo(
                    this.coordinates[this.coordinates.length - 1][0],
                    this.coordinates[this.coordinates.length - 1][1]
                );
                this.main.ctx.lineTo(this.x, this.y);
                this.main.ctx.strokeStyle = `hsla(${this.hue}, 100%, ${this.brightness}%, ${this.alpha})`;
                this.main.ctx.stroke();
            }
        }
        // Khởi chạy khi trang load xong
        //window.addEventListener('load', () => hieuUngPhaoHoa.init());
    })();