const functions = require('firebase-functions'); const admin = require('firebase-admin'); admin.initializeApp(); exports.resetCoinsEveryFiveDays = functions.pubsub .schedule('0 0 */5 * *') .timeZone('America/Mexico_City') .onRun(async (context) => { const db = admin.firestore(); const adminEmail = "dimensionalpulsar@gmail.com"; try { // Buscamos solo usuarios que NO sean el administrador const snapshot = await db.collection('users') .where('email', '!=', adminEmail) .get(); if (snapshot.empty) return null; const batch = db.batch(); snapshot.docs.forEach((userDoc) => { batch.update(userDoc.ref, { coins: 0, lastReset: admin.firestore.FieldValue.serverTimestamp() }); }); await batch.commit(); return null; } catch (error) { console.error("Error en el reseteo:", error); return null; } });