1<!doctype html> 2<html lang="es"> 3 <head> 4 <title>Buscaminas Hugames - Jugar al Buscaminas en línea - Nivel Experto</title> 5<meta charset="utf-8"> 6<meta name="description" content="Juega al Buscaminas en lÃnea gratis, sin instalación ni registro. Pon a prueba tus habilidades con el nivel Experto y otros niveles exclusivos más difÃciles, con tableros densos y desafÃos exigentes." /> 7<link rel="canonical" href="https://demineur.nhtdev.com/es/" /> 8<link rel="icon" type="image/png" href="/img/favicon.png" /> 9<link rel="stylesheet" href="/css/style.css?20260904"> 10<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no"> 11<meta name="og:site_name" content="Buscaminas Hugames" />
12<script type="application/ld+json"> 13{ 14 "@context": "https://schema.org", 15 "@type": "WebSite", 16 "@id": "https://demineur.nhtdev.com/es/#website", 17 "name": "Buscaminas Hugames", 18 "url": "https://demineur.nhtdev.com/es/", 19 "description": "Juega al Buscaminas en lÃnea gratis, sin instalación ni registro. Pon a prueba tus habilidades con el nivel Experto y otros niveles exclusivos más difÃciles, con tableros densos y desafÃos exigentes.", 20 "inLanguage": "es" 21}</script>
21 22 23 24<link rel="alternate" hreflang="en" href="https://demineur.nhtdev.com/en/" /> 25<link rel="alternate" hreflang="de" href="https://demineur.nhtdev.com/de/" /> 26<link rel="alternate" hreflang="es" href="https://demineur.nhtdev.com/es/" /> 27<link rel="alternate" hreflang="fr" href="https://demineur.nhtdev.com/" /> 28<link rel="alternate" hreflang="it" href="https://demineur.nhtdev.com/it/" /> 29<link rel="alternate" hreflang="pt" href="https://demineur.nhtdev.com/pt/" /> 30<link rel="alternate" hreflang="pl" href="https://demineur.nhtdev.com/pl/" /> 31<link rel="alternate" hreflang="uk" href="https://demineur.nhtdev.com/uk/" /> 32<link rel="alternate" hreflang="nl" href="https://demineur.nhtdev.com/nl/" /> 33<link rel="alternate" hreflang="x-default" href="https://demineur.nhtdev.com/en/" /> 34 <meta property="og:title" content="Buscaminas Hugames - Jugar al Buscaminas en línea - Nivel Experto" /> 35 <meta property="og:type" content="website" /> 36 <meta property="og:url" content="https://demineur.nhtdev.com/es/" /> 37 <meta property="og:image" content="https://demineur.nhtdev.com/img/screenshot.png" /> 38 <meta property="og:description" content="Juega al Buscaminas en línea gratis, sin instalación ni registro. Pon a prueba tus habilidades con el nivel Experto y otros niveles exclusivos más difíciles, con tableros densos y desafíos exigentes." /> 39 <meta name="twitter:image" content="https://demineur.nhtdev.com/img/screenshot.png"> 40 41
41<script type="application/ld+json"> 42{ 43 "@context": "https://schema.org", 44 "@type": "VideoGame", 45 "name": "Buscaminas Hugames", 46 "url": "https://demineur.nhtdev.com/es/", 47 "description": "Juega al Buscaminas en lÃnea gratis, sin instalación ni registro. Pon a prueba tus habilidades con el nivel Experto y otros niveles exclusivos más difÃciles, con tableros densos y desafÃos exigentes.", 48 "inLanguage": "es", 49 "genre": "Minesweeper Puzzle Game", 50 "applicationCategory": "GameApplication", 51 "operatingSystem": "Any (web browser)", 52 "gamePlatform": "Web", 53 "image": "https://demineur.nhtdev.com/img/screenshot.png", 54 "offers": { 55 "@type": "Offer", 56 "price": "0", 57 "priceCurrency": "EUR" 58 } 59} </script>
59 60 61 <meta name="version" content="20260904" /> 62 63 <meta name="all-skins" content="checkerboard-gray,cell-gray-light,retro,checkerboard-blue,checkerboard-green,checkerboard-purple,checkerboard-pink,checkerboard-orange,checkerboard-dark,cell-dark,special-octobre-rose" /> 64 <meta name="default-skin" content="checkerboard-gray" /> 65 66 <meta name="level" content="{"width":"30","height":"16","mines":"99","continues":"3","skin":"free"}" /> 67 <meta name="level-name" content="Experto" /> 68 <meta name="level-id" content="3" /> 69 <meta name="level-size" content="30x16" /> 70 <meta name="level-continues" content="3" /> 71 <meta name="level-no-guess" content="on" /> 72 <meta name="unlock-level-id" content="" /> 73 <meta name="unlock-message" content="" /> 74 <meta name="unlock-score" content="" /> 75 <meta name="unlockable" content="{"3":[{"id":"14","name":"\u00c9lite","unlock_level_id":"3","unlock_score":"0"}]}" /> 76 </head> 77 78 <body class="typexx-light" data-typexx="light"> 79 80
80<script> 81 if (localStorage.getItem('darkMode') === '1') { 82 document.body.classList.add('dark'); 83 } 84 </script>
84 85 86 <div id="preroll"></div> 87 88 <div id="whole-page" class="ads-on-top-bottom"> 89 <header> 90 91<div id="lang-container"> 92 <a class="current-lang lang-detail" href="#" id="lang-picker" title="Cambiar el idioma del sitio"> 93 <svg xmlns="http://www.w3.org/2000/svg" height="24" viewBox="0 -960 960 960" width="24"> 94 <path d="m476-80 182-480h84L924-80h-84l-42-122H604L560-80h-84Zm152-192h144l-70-198h-4l-70 198Zm-468 72-56-56 202-202q-38-42-66.5-87T190-640h84q18 36 38.5 65t49.5 61q44-48 73-98.5T484-720H40v-80h280v-80h80v80h280v80H564q-21 71-57 138t-89 126l96 98-30 82-124-124-200 200Z" /> 95 </svg> 96 <span class="lang-label">Español</span> 97 </a> 98 <ul class="languages hidden"> 99 <li> 100 <a lang="en" href="https://demineur.nhtdev.com/en/" class="lang-detail lang-link"> 101 English </a> 102 </li> 103 <li> 104 <a lang="de" href="https://demineur.nhtdev.com/de/" class="lang-detail lang-link"> 105 Deutsch </a> 106 </li> 107 <li> 108 <a lang="es" href="https://demineur.nhtdev.com/es/" class="lang-detail lang-link"> 109 Español </a> 110 </li> 111 <li> 112 <a lang="fr" href="https://demineur.nhtdev.com/" class="lang-detail lang-link"> 113 Français </a> 114 </li> 115 <li> 116 <a lang="it" href="https://demineur.nhtdev.com/it/" class="lang-detail lang-link"> 117 Italiano </a> 118 </li> 119 <li> 120 <a lang="pt" href="https://demineur.nhtdev.com/pt/" class="lang-detail lang-link"> 121 Português </a> 122 </li> 123 <li> 124 <a lang="pl" href="https://demineur.nhtdev.com/pl/" class="lang-detail lang-link"> 125 Polski </a> 126 </li> 127 <li> 128 <a lang="uk" href="https://demineur.nhtdev.com/uk/" class="lang-detail lang-link"> 129 УкÑаÑнÑÑка </a> 130 </li> 131 <li> 132 <a lang="nl" href="https://demineur.nhtdev.com/nl/" class="lang-detail lang-link"> 133 Nederlands </a> 134 </li> 135 </ul> 136</div> 137 138<div class="main-title"> 139 <img src="/img/mine.svg?20260904" alt="Mina" width="30" height="30" class="hide-dark"> 140 <img src="/img/mine-dark.svg?20260904" alt="Mina" width="30" class="show-dark"> 141 Buscaminas Hugames</div> 142 143<nav> 144 <ul> 145 <li><a href="/es/?level=principiante" title="Jugar al Buscaminas en lÃnea - Nivel Principiante" >Principiante</a></li> 146 <li><a href="/es/?level=intermedio" title="Jugar al Buscaminas en lÃnea - Nivel Intermedio" >Intermedio</a></li> 147 <li><a href="/es/?level=experto" title="Jugar al Buscaminas en lÃnea - Nivel Experto" class="active">Experto</a></li> 148 <li><a href="/es/plus" id="play-plus" title="Jugar al Buscaminas en lÃnea - Todos los niveles" >Más...</a></li> 149 <li class="nav-item-right"><a href="/es/rules" title="Reglas y trucos del Buscaminas" >Reglas</a></li> 150 </ul> 151</nav> 152 <div class="end-game" id="game-over" style="display: none;"> 153 <div> 154 <div class="result-title">Fin del juego</div> 155 <p> 156 Lo siento, ¡has perdido! </p> 157 <a href="#" id="game-over-restart" class="btn btn-primary">Nueva partida</a> 158 <a href="#" id="game-over-continue" class="btn btn-secondary">Continuar partida</a> 159 <a href="#" id="game-over-reveal" class="btn btn-secondary">Ver solución</a> 160 </div> 161 </div> 162 163 <div class="end-game" id="game-win" style="display: none;"> 164 <div> 165 <div class="result-title">
165¡Felicidades, has ganado!</div> 166 <p class="win-subtitle"> 167 Nivel <span id="win-level-name"></span> completado en <span id="win-score"></span> segundos </p> 168 <div class="new-best-score" id="new-best-score"> 169 <svg xmlns="http://www.w3.org/2000/svg" height="1em" viewBox="0 0 576 512"><path d="M400 0H176c-26.5 0-48.1 21.8-47.1 48.2c.2 5.3 .4 10.6 .7 15.8H24C10.7 64 0 74.7 0 88c0 92.6 33.5 157 78.5 200.7c44.3 43.1 98.3 64.8 138.1 75.8c23.4 6.5 39.4 26 39.4 45.6c0 20.9-17 37.9-37.9 37.9H192c-17.7 0-32 14.3-32 32s14.3 32 32 32H384c17.7 0 32-14.3 32-32s-14.3-32-32-32H357.9C337 448 320 431 320 410.1c0-19.6 15.9-39.2 39.4-45.6c39.9-11 93.9-32.7 138.2-75.8C542.5 245 576 180.6 576 88c0-13.3-10.7-24-24-24H446.4c.3-5.2 .5-10.4 .7-15.8C448.1 21.8 426.5 0 400 0zM48.9 112h84.4c9.1 90.1 29.2 150.3 51.9 190.6c-24.9-11-50.8-26.5-73.2-48.3c-32-31.1-58-76-63-142.3zM464.1 254.3c-22.4 21.8-48.3 37.3-73.2 48.3c22.7-40.3 42.8-100.5 51.9-190.6h84.4c-5.1 66.3-31.1 111.2-63 142.3z" fill="#ffcc00"/></svg> 170 ¡Nuevo récord! </div> 171 <div class="new-best-score" id="new-best-score-continued"> 172 <svg xmlns="http://www.w3.org/2000/svg" height="1em" viewBox="0 0 576 512"><path d="M400 0H176c-26.5 0-48.1 21.8-47.1 48.2c.2 5.3 .4 10.6 .7 15.8H24C10.7 64 0 74.7 0 88c0 92.6 33.5 157 78.5 200.7c44.3 43.1 98.3 64.8 138.1 75.8c23.4 6.5 39.4 26 39.4 45.6c0 20.9-17 37.9-37.9 37.9H192c-17.7 0-32 14.3-32 32s14.3 32 32 32H384c17.7 0 32-14.3 32-32s-14.3-32-32-32H357.9C337 448 320 431 320 410.1c0-19.6 15.9-39.2 39.4-45.6c39.9-11 93.9-32.7 138.2-75.8C542.5 245 576 180.6 576 88c0-13.3-10.7-24-24-24H446.4c.3-5.2 .5-10.4 .7-15.8C448.1 21.8 426.5 0 400 0zM48.9 112h84.4c9.1 90.1 29.2 150.3 51.9 190.6c-24.9-11-50.8-26.5-73.2-48.3c-32-31.1-58-76-63-142.3zM464.1 254.3c-22.4 21.8-48.3 37.3-73.2 48.3c22.7-40.3 42.8-100.5 51.9-190.6h84.4c-5.1 66.3-31.1 111.2-63 142.3z" fill="#aaaaaa"/></svg> 173 ¡Nuevo récord! (con ayuda) </div> 174 <div class="new-best-score" id="unlocked-levels"> 175 <svg height="1em" version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 122.88 122.88" style="enable-background:new 0 0 122.88 122.88" xml:space="preserve"><style type="text/css">.st0{fill-rule:evenodd;clip-rule:evenodd;}</style><g><polygon class="st0" points="19.44,50.16 8.22,30.72 30.72,30.72 30.72,8.13 50.16,19.44 61.44,0 72.72,19.44 92.16,8.13 92.16,30.72 114.75,30.72 103.44,50.16 122.88,61.44 103.44,72.72 114.75,92.16 92.16,92.16 92.16,114.66 72.72,103.44 61.44,122.88 50.16,103.44 30.72,114.66 30.72,92.16 8.22,92.16 19.44,72.72 0,61.44 19.44,50.16" fill="#ff0000"/></g></svg> 176 ¡Has desbloqueado el nivel <span id="unlocked-level-name"></span>! <a href="/es/plus" id="unlocked-levels-link">Mostrar</a> 177 </div> 178 <div class="win-buttons"> 179 <a href="#" id="game-win-restart" class="btn btn-primary">Nueva partida</a> 180 <a href="#" id="game-win-share" class="btn btn-secondary">Compartir</a> 181 <a href="#" id="game-save-image" class="btn btn-secondary">Guardar como imagen</a> 182 <div> 183 </div> 184 </div> 185 </header> 186 187 <div id="col-top-container"> 188 <div id="col-top" style="min-width:970px; height:250px; overflow:hidden;"></div> 189 </div> 190 191 <div id="columns"> 192 193 <div id="col-left-container"> 194 <div id="col-left"> 195 </div> 196 </div> 197 198 <div id="column-center"> 199 <article id="game"> 200 201 <h1> 202 Jugar al Buscaminas en lÃnea - 203 Nivel Experto </h1> 204 205 206 207<div class="game-toolbar" id="game-toolbar" style="height:41px;"> 208 <div class="toolbar-left"> 209 <button id="screenshot" class="btn btn-secondary" title="Guardar como imagen"> 210 <svg xmlns="http://www.w3.org/2000/svg" width="22" height="22" fill="currentColor" class="bi bi-camera" viewB
210ox="0 0 16 16"> 211 <path d="M15 12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1h1.172a3 3 0 0 0 2.12-.879l.83-.828A1 1 0 0 1 6.827 3h2.344a1 1 0 0 1 .707.293l.828.828A3 3 0 0 0 12.828 5H14a1 1 0 0 1 1 1zM2 4a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2h-1.172a2 2 0 0 1-1.414-.586l-.828-.828A2 2 0 0 0 9.172 2H6.828a2 2 0 0 0-1.414.586l-.828.828A2 2 0 0 1 3.172 4z"/> 212 <path d="M8 11a2.5 2.5 0 1 1 0-5 2.5 2.5 0 0 1 0 5m0 1a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7M3 6.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0"/> 213 </svg> 214 </button> 215 </div> 216 <div class="toolbar-zoom"> 217 <button id="zoom-out" class="btn btn-secondary" title="Alejar"> 218 <svg xmlns="http://www.w3.org/2000/svg" width="22" height="22" fill="currentColor" class="bi bi-zoom-out" viewBox="0 0 16 16"> 219 <path fill-rule="evenodd" d="M6.5 12a5.5 5.5 0 1 0 0-11 5.5 5.5 0 0 0 0 11zM13 6.5a6.5 6.5 0 1 1-13 0 6.5 6.5 0 0 1 13 0z"/> 220 <path d="M10.344 11.742c.03.04.062.078.098.115l3.85 3.85a1 1 0 0 0 1.415-1.414l-3.85-3.85a1.007 1.007 0 0 0-.115-.1 6.538 6.538 0 0 1-1.398 1.4z"/> 221 <path fill-rule="evenodd" d="M3 6.5a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5z"/> 222 </svg> 223 </button> 224 <button id="zoom-in" class="btn btn-secondary" title="Acercar"> 225 <svg xmlns="http://www.w3.org/2000/svg" width="22" height="22" fill="currentColor" class="bi bi-zoom-in" viewBox="0 0 16 16"> 226 <path fill-rule="evenodd" d="M6.5 12a5.5 5.5 0 1 0 0-11 5.5 5.5 0 0 0 0 11zM13 6.5a6.5 6.5 0 1 1-13 0 6.5 6.5 0 0 1 13 0z"/> 227 <path d="M10.344 11.742c.03.04.062.078.098.115l3.85 3.85a1 1 0 0 0 1.415-1.414l-3.85-3.85a1.007 1.007 0 0 0-.115-.1 6.538 6.538 0 0 1-1.398 1.4z"/> 228 <path fill-rule="evenodd" d="M6.5 3a.5.5 0 0 1 .5.5V6h2.5a.5.5 0 0 1 0 1H7v2.5a.5.5 0 0 1-1 0V7H3.5a.5.5 0 0 1 0-1H6V3.5a.5.5 0 0 1 .5-.5z"/> 229 </svg> 230 </button> 231 </div> 232 <div class="toolbar-settings"> 233 <button id="theme" class="btn btn-secondary" title="Tema"> 234 <svg xmlns="http://www.w3.org/2000/svg" width="22" height="22" fill="currentColor" class="bi bi-palette" viewBox="0 0 16 16"> 235 <path d="M8 5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3m4 3a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3M5.5 7a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0m.5 6a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3"/> 236 <path d="M16 8c0 3.15-1.866 2.585-3.567 2.07C11.42 9.763 10.465 9.473 10 10c-.603.683-.475 1.819-.351 2.92C9.826 14.495 9.996 16 8 16a8 8 0 1 1 8-8m-8 7c.611 0 .654-.171.655-.176.078-.146.124-.464.07-1.119-.014-.168-.037-.37-.061-.591-.052-.464-.112-1.005-.118-1.462-.01-.707.083-1.61.704-2.314.369-.417.845-.578 1.272-.618.404-.038.812.026 1.16.104.343.077.702.186 1.025.284l.028.008c.346.105.658.199.953.266.653.148.904.083.991.024C14.717 9.38 15 9.161 15 8a7 7 0 1 0-7 7"/> 237 </svg> 238 </button> 239 <button id="settings" class="btn btn-secondary" title="Opciones"> 240 <svg xmlns="http://www.w3.org/2000/svg" width="22" height="22" fill="currentColor" class="bi bi-gear" viewBox="0 0 16 16"> 241 <path d="M8 4.754a3.246 3.246 0 1 0 0 6.492 3.246 3.246 0 0 0 0-6.492zM5.754 8a2.246 2.246 0 1 1 4.492 0 2.246 2.246 0 0 1-4.492 0z"/> 242 <path d="M9.796 1.343c-.527-1.79-3.065-1.79-3.592 0l-.094.319a.873.873 0 0 1-1.255.52l-.292-.16c-1.64-.892-3.433.902-2.54 2.541l.159.292a.873.873 0 0 1-.52 1.255l-.319.094c-1.79.527-1.79 3.065 0 3.592l.319.094a.873.873 0 0 1 .52 1.255l-.16.292c-.892 1.64.901 3.434 2.541 2.54l.292-.159a.873.873 0 0 1 1.255.52l.094.319c.527 1.79 3.065 1.79 3.592 0l.094-.319a.873.873 0 0 1 1.255-.52l.292.16c1.64.893 3.434-.902 2.54-2.541l-.159-.292a.873.873 0 0 1 .52-1.255l.319-.094c1.79-.527 1.79-3.065 0-3.592l-.319-.094a.873.873 0 0 1-.52-1.255l.16-.292c.893-1.64-.902-3.433-2.541-2.54l-.292.159a.873.873 0 0 1-1.255-.52l-.094-.319zm-2.633.283c.246-.835 1.428-.835 1.674 0l.094.319a1.873 1.873 0 0 0 2.693 1.115l.291-.16c.764-.415 1.6.42 1.184 1.185l-.159.292a1.873 1.873 0 0 0 1.116 2.692l.318.094c.835.246.835 1.428 0 1.674l-.319.094a1.873 1.873 0 0 0-1.115 2.693l.16.291c.415.764-.42 1.6-1.185 1.184l-.291-.159a1.873 1.873 0 0 0-2.693 1.116l-.094.318c-.246.835-1.428.835-1.674 0l-.094-.319a1.873 1.873 0 0 0-2.692-1.115l-.292.16c-.764.415-1.6-.42-1.184-1.185l.159-.291A1.873 1.873 0 0 0 1.945 8.93l-.319-.094c-.835-.246-.835-1.428 0-1.674l.319-.094A1.873 1.873 0 0 0 3.06 4.377l-.16-.292c-.415-.764.42-1.6 1.185-1.184l.292.159a1.873 1.873 0 0 0 2.692-1.115l.094-.319z"/> 243 </svg> 244 </button> 245 </div> 246</div> 247 <div class="game-container"> 248 <div id="canvas-container" class="game-loading">
249 <canvas id="canvas" width="400" height="400" class="game-img"></canvas> 250 <canvas id="canvas2" width="400" height="400"></canvas> 251 <canvas id="canvas3" width="400" height="400"></canvas> 252 </div> 253 <div id="loading-error" class="error" style="display:none;"> 254 Error al cargar el juego. Verifica tu conexión a internet y vuelve a cargar la página. </div> 255 <div class="best-score" id="best-score"> </div> 256 </div> 257 <div style="display:none"> 258 <canvas id="canvas-export" width="400" height="400" data-share-url="/es/share"></canvas> 259 </div> 260 261
261<script type="text/javascript"> 262 263 function clsGetZoomLevel() 264 { 265 let zoomLevel = localStorage.getItem('zoomLevel'); 266 if (zoomLevel) { 267 return zoomLevel; 268 } else { 269 if (window.innerWidth < 768) { 270 return 5; 271 } else { 272 return 3; 273 } 274 } 275 } 276 277 function clsGetSkin() 278 { 279 let skin = localStorage.getItem('skin'); 280 if (!skin) { 281 skin = 'checkerboard-gray'; 282 } 283 284 let metaLevel = document.querySelector('meta[name="level"]'); 285 if (metaLevel) { 286 let json = metaLevel.getAttribute('content'); 287 let level = JSON.parse(json); 288 289 if (level.skin === 'free') { 290 return skin; 291 } else if (level.skin === 'free-checkerboard') { 292 return 'checkerboard-gray'; 293 } else if (level.skin === 'free-non-retro') { 294 return 'checkerboard-gray'; 295 } else if (level.skin === 'retro') { 296 return 'retro'; 297 } else { 298 return 'checkerboard-gray'; 299 } 300 } 301 302 return skin; 303 } 304 305 function clsGetGameSize() 306 { 307 let metaLevel = document.querySelector('meta[name="level-size"]'); 308 let level = metaLevel.getAttribute('content'); 309 level = level.split('x'); 310 return [parseInt(level[0]), parseInt(level[1])]; 311 } 312 313 function computeStdSize(zoom, width, height) 314 { 315 const zoomLevelToCellSize = { 316 1: 15, 317 2: 19, 318 3: 24, 319 4: 30, 320 5: 40, 321 6: 50, 322 7: 60 323 }; 324 let cellSize = zoomLevelToCellSize[zoom]; 325 326 let margins = 30; 327 let marginTop = 80; 328 let minWidth = 270; 329 330 if (width * cellSize + 2 * margins < minWidth) { 331 margins = Math.floor((minWidth - width * cellSize) / 2); 332 } 333 334 let resultWidth = width * cellSize + 2 * margins; 335 let resultHeight = height * cellSize + margins + marginTop; 336 337 return [resultWidth, resultHeight]; 338 } 339 340 function computeRetroSize(zoom, width, height) 341 { 342 if (zoom < 2) { 343 zoom = 2; 344 } 345 if (zoom > 6) { 346 zoom = 6; 347 } 348 349 const zoomLevelToCellSize = { 350 2: 16, 351 3: 24, 352 4: 32, 353 5: 48, 354 6: 64 355 }; 356 let cellSize = zoomLevelToCellSize[zoom]; 357 358 const zoomLevelToSizeRatio = { 359 2: 1, 360 3: 1.5, 361 4: 2, 362 5: 3, 363 6: 4 364 }; 365 let sizeRatio = zoomLevelToSizeRatio[zoom]; 366 let margins = 12 * sizeRatio; 367 let marginTop = 52 * sizeRatio + margins; 368 369 let resultWidth = width * cellSize + 2 * margins; 370 let resultHeight = height * cellSize + margins + marginTop; 371 372 return [resultWidth, resultHeight]; 373 } 374 375 function getDimensions() 376 { 377 let skin = clsGetSkin(); 378 let zoom = clsGetZoomLevel(); 379 let size = clsGetGameSize(); 380 381 if (skin === 'retro') { 382 return computeRetroSize(zoom, size[0], size[1]); 383 } else { 384 return computeStdSize(zoom, size[0], size[1]); 385 } 386 } 387 388 function presizeGame() 389 { 390 let dim = getDimensions(); 391 392 let allCanvas = [document.getElementById('canvas'), document.getElementById('canvas2'), document.getElementById('canvas3')]; 393 for (let i = 0; i < allCanvas.length; i++) { 394 allCanvas[i].width = dim[0]; 395 allCanvas[i].height = dim[1]; 396 } 397 398 let canvasContainer = document.getElementById('canvas-container'); 399 if (canvasContainer) { 400 canvasContainer.style.width = dim[0] + 'px'; 401 canvasContainer.style.height = dim[1] + 'px'; 402 } 403 } 404 405 function chooseAdType() { 406 let newType = null; 407 let canvasContainer = document.getElementById('canvas-container'); 408 let wholePage = document.getElementById('whole-page'); 409 410 if (canvasContainer && wholePage) { 411 let pageWidth = wholePage.offsetWidth; 412 let playWidth = canvasContainer.offsetWidth; 413 if (playWidth < 700) { 414 playWidth = 700; 415 } 416 if (pageWidth > 16 + 300 + 16 + playWidth + 16 + 300 + 16 + 10) { 417 // newType = 'ads-on-sides'; // Pour test : mettre toujours les pubs en haut et en bas
418 newType = 'ads-on-top-bottom'; 419 } else { 420 newType = 'ads-on-top-bottom'; 421 } 422 wholePage.setAttribute('class', newType); 423 } 424 return newType; 425 } 426 presizeGame(); 427 chooseAdType(); 428 429</script>
429 430 431 432 <div class="news-container"> 433 <div class="news" style="position:relative; background-color:#fabced;"> 434 <img src="/img/flag-octobre-rose-30.png" width="30" height="30" alt="" style="position: absolute; top: 5px;" /> 435 <span style="padding-left: 30px; color: #333;">En octubre, prueba el tema especial: "Mes de la concienciación sobre el cáncer de mama".</span> 436 <br /> 437 <a href="#" style="color: #000;" 438 onmouseover="this.style.textDecoration='underline'" onmouseout="this.style.textDecoration='none'" 439 onclick="document.querySelector('.skin[data-change-skin=\'special-octobre-rose\']').click(); return false;" 440 >Activar tema</a> 441 </div> 442 </div> 443 444 <h2 id="no-guess-container"> 445 <div id="no-guess-intro" class="js-simple-tooltip" data-simpletooltip-text="Si el modo sin adivinanzas (no-guess) está activado, todos los juegos se podrán resolver puramente por lógica, sin tener situaciones en las que se deba hacer clic al azar." 446 data-simpletooltip-prefix-class="minimalist-left"> 447 <i class="tooltip-icon"></i> 448 Modo sin adivinanzas: </div> 449 <label class="switch"> 450 <input type="checkbox" id="no-guess" autocomplete="off"> 451 <span class="slider round"></span> 452 </label> 453 <span id="no-guess-label"> 454 <span class="label-on" style="display:none" id="no-guess-on">Activado</span> 455 <span class="label-off" style="display:none" id="no-guess-off">Off</span> 456 </span> 457 </h2> 458 <div id="no-guess-info" class="hide-on-new-game hidden"> 459 El cambio se aplicará a partir del próximo juego. </div> 460 461 462 </article> 463 464 465<article id="help"> 466 467<div class="help-intro"> 468 469<h2>¿Cómo jugar al Buscaminas?</h2> 470<div> 471 El Buscaminas es un clásico juego de reflexión cuyo objetivo es sencillo: 472 vaciar una cuadrÃcula sin hacer estallar las minas ocultas. Esta versión del Buscaminas en lÃnea 473 es accesible directamente desde tu navegador, sin descarga ni registro. 474 <br /> 475 Para progresar, debes apoyarte en la lógica y en el análisis de los números. 476 477 <h3>Los controles básicos</h3> 478 <p> 479 <strong>El clic izquierdo</strong> permite abrir una casilla. Si la casilla está vacÃa, 480 revela un número o un espacio vacÃo. Si haces clic en una mina, has perdido 481 y la partida termina. 482 <br /> 483 <strong>El clic derecho</strong> sirve para colocar una bandera. Ãsalo para marcar 484 las casillas que sospechas que contienen una mina. 485 </p> 486 487 <h3>Entender las pistas y los números</h3> 488 <p> 489 Cada casilla descubierta muestra un número del 1 al 8. Este número indica con precisión 490 cuántas minas hay en las 8 casillas adyacentes (en horizontal, en vertical y en diagonal). 491 <br /> 492 Es cruzando estas diferentes pistas visuales como podrás deducir qué casillas 493 son totalmente seguras y cuáles deben bloquearse con una bandera. 494 </p> 495 496 <h3>Interfaz y modos de juego</h3> 497 <p> 498 Para seguir tu progreso, dos contadores enmarcan la cuadrÃcula: 499 <ul> 500 <li><strong>A la izquierda</strong>: la cantidad de minas que quedan por identificar.</li> 501 <li><strong>A la derecha</strong>: un cronómetro para evaluar tu velocidad y seguir tus récords personales.</li> 502 </ul> 503 </p> 504 <p> 505 El juego se adapta a tu nivel con tres modos estándar: Principiante, Intermedio y Experto, 506 que ofrecen cuadrÃculas cada vez más grandes y llenas de trampas. También hay nuevos desafÃos 507 accesibles a través de la pestaña 508 <a href="/es/plus" style="text-decoration:underline">Más</a>, 509 que se desbloquean a medida que vas ganando.<br /> 510 También puedes activar el modo sin adivinanzas (no-guess) para un desafÃo basado puramente en la lógica. 511 </p> 512 513 <h3>Más información</h3> 514 <p>
515 Para aprender más sobre el juego, consulta nuestras guÃas: 516 <br /> 517 <a href="/es/rules" class="btn btn-primary"> 518 Ver las reglas completas 519 </a> 520 <a href="/es/rules/example" class="btn btn-primary"> 521 Ejemplo de partida 522 </a> 523 <a href="/es/rules/logic" class="btn btn-primary"> 524 Deducciones lógicas avanzadas y patrones 525 </a> 526 </p> 527</div> 528 529</div> 530 531</article> 532 533 <article id="level-desc"><h2>Acerca del nivel Experto</h2> 534<p> 535 El nivel Experto de Buscaminas está pensado para jugadores a los que les gustan los retos exigentes.<br /> 536 La cuadrÃcula contiene muchas minas y cada decisión requiere un buen análisis de los números.<br /> 537 Se necesitan lógica, concentración y a veces un poco de suerte para conseguir terminar la partida.<br /> 538 Tamaño de la cuadrÃcula: 30x16 casillas, 99 minas. 539</p> 540</article> </div> 541 542 543 <div id="col-right-container"> 544 <div id="col-right"> 545 </div> 546 </div> 547 548 </div><!-- /#columns --> 549 550 <div class="modal" id="cookies-modal" style="display: none"> 551 <div class="modal-title"> 552 Elija sus preferencias de cookies 553 </div> 554 <div class="modal-body"> 555 556 <p class="strong">Utilizamos cookies y otros datos para:</p> 557 <ul> 558 <li>Guardar sus mejores puntuaciones</li> 559 <li>Guardar la lista de niveles que ha iniciado, completado o desbloqueado</li> 560 <li>Guardar sus opciones de juego y visualización</li> 561 </ul> 562 <p class="strong">Si hace clic en "Aceptar todo", utilizaremos y compartiremos con terceros cookies y otros datos para:</p> 563 <ul> 564 <li>Personalizar los anuncios publicitarios que ve</li> 565 </ul> 566 <p class="strong">Si hace clic en "Aceptar solo las cookies esenciales", no utilizaremos cookies para estos fines adicionales.</p> 567 <p> 568 Haga clic en "Más opciones" para ver más información, incluido cómo administrar su configuración de privacidad. 569 Puede cambiar sus opciones en cualquier momento haciendo clic en "Cookies" en la parte inferior de esta página. 570 También puede consultar la página 571 <a href="/es/legal-cookies" style="text-decoration:underline">PolÃtica de cookies</a> 572 en cualquier momento. 573 </p> 574 </div> 575 <div class="modal-footer"> 576 <a href="#" class="btn btn-primary" id="modal-cookies-no">Aceptar solo las cookies esenciales</a> 577 <a href="#" class="btn btn-primary" id="modal-cookies-yes">Aceptar todo</a> 578 <a href="#" id="modal-cookies-custom" class="more-options">Más opciones</a> 579 </div> 580</div> 581 582<div class="modal" id="cookies-light-modal" style="display: none; width: 475px;"> 583 <div class="modal-title"> 584 Elija sus preferencias de cookies 585 </div> 586 <div class="modal-body"> 587 <p style="text-align:center; padding-bottom:12px"> 588 <img src="/img/game-cookies.png?20260904" alt="Cookies" width="241" height="97" /> 589 </p> 590 <p> 591 Utilizamos y compartimos cookies y otros datos para guardar sus mejores puntuaciones, 592 los niveles iniciados, completados y desbloqueados, 593 sus opciones de juego y visualización, y mostrar anuncios personalizados. 594 Puede cambiar sus opciones en cualquier momento haciendo clic en "Cookies" en la parte inferior de esta página. 595 </p> 596 <p> 597 <a href="#" style="text-decoration:underline" id="cookies-show-more">Mostrar más</a> 598 </p> 599 600 </div> 601 <div class="modal-footer"> 602 <a href="#" class="btn btn-primary" id="modal-cookies-no-light">Aceptar solo las cookies esenciales</a> 603 <a href="#" class="btn btn-primary" id="modal-cookies-yes-light">Aceptar todo</a> 604 </div> 605</div> <div class="modal" id="adblock-modal" style="display: none"> 606 <div class="modal-title"> 607 Error al mostrar el video 608 <a href="#" class="modal-close" data-hide-modal="adblock-modal">×</a> 609 </div> 610 <div class="modal-body"> 611 <p class="strong"> 612 No se puede mostrar el video: parece que estás utilizando un bloqueador de anuncios (adblock). 613 </p> 614 <p> 615 Para permitirte tener una segunda oportunidad y continuar el juego, vamos a mostrar un breve video publicitario. 616 Desactiva tu bloqueador de anuncios para este sitio y luego actualiza la página. No podrás continuar este juego, pero la funcionalidad estará activa para la próxima vez. 617 </p> 618 <p> 619 También puedes mantener tu bloqueador de anuncios activado, pero no podrás continuar los juegos perdidos. 620 </p> 621 </div> 622 <div class="modal-footer"> 623 <a href="#" class="btn btn-secondary" data-hide-modal="adblock-modal">Cerrar</a> 624 </div> 625</div> 626 627 628<div class="modal" id="aderror-modal" style="display: none"> 629 <div class="modal-title"> 630 Error al cargar el video 631 <a href="#" class="modal-close" data-hide-modal="aderror-modal">×</a> 632 </div> 633 <div class="modal-body"> 634 <p> 635 Para permitirte tener una segunda oportunidad y continuar el juego, vamos a mostrar un breve video publicitario. 636 Se produjo un problema al cargar el video. 637 </p> 638 <ul> 639 <li>Verifica tu conexión a internet y vuelve a intentarlo.</li> 640 <li>Si estás utilizando un bloqueador de anuncios, desactÃvalo para este sitio y luego actualiza la página. No podrás continuar este juego, pero la funcionalidad estará activa para la próxima vez.</li> 641 <li>Si el problema persiste, intenta con otro navegador.</li> 642 </ul> 643 </div> 644 <div class="modal-footer"> 645 <a href="#" class="btn btn-secondary" data-hide-modal="aderror-modal">Cerrar</a> 646 </div> 647</div> 648 649 650<div class="modal modal-sm" id="toomanycontinue-modal" style="display: none"> 651 <div class="modal-title"> 652 Juego terminado 653 <a href="#" class="modal-close" data-hide-modal="toomanycontinue-modal">×</a> 654 </div> 655 <div class="modal-body"> 656 <p class="strong"> 657 En este nivel, solo puedes continuar el mismo juego 3 veces. 658 </p> 659 <p> 660 ¡Ya has utilizado tus 3 oportunidades para este juego !<br /> 661 Puedes comenzar un nuevo juego. 662 </p> 663 </div> 664 <div class="modal-footer"> 665 <a href="#" id="toomanycontinue-restart" class="btn btn-primary" data-hide-modal="toomanycontinue-modal">Nuevo juego</a> 666 <a href="#" class="btn btn-secondary" data-hide-modal="toomanycontinue-modal">Cerrar</a> 667 </div> 668</div> 669 <div class="modal modal-sm" id="settings-modal" style="display: none"> 670 <div class="modal-title"> 671 Opciones 672 <a href="#" class="modal-close" data-hide-modal="settings-modal">×</a> 673 </div> 674 <div class="modal-body"> 675 676 <fieldset> 677 <legend>Inicio de partida</legend> 678 <div> 679 <input type="radio" name="startType" id="start-noMineAround" value="noMineAround" /> 680 <label for="start-noMineAround">Gran área libre</label> 681 682 <i class="js-simple-tooltip tooltip-icon" data-simpletooltip-text="Si esta opción está seleccionad
682a, el juego comenzará con un gran área libre alrededor del primer clic. La casilla clicada y todas las casillas adyacentes nunca tendrán minas."></i> 683 </div> 684 <div> 685 <input type="radio" name="startType" id="start-noMine" value="noMine" /> 686 <label for="start-noMine">Sin mina</label> 687 <i class="js-simple-tooltip tooltip-icon" data-simpletooltip-text="Si esta opción está seleccionada, la primera casilla clicada nunca será una mina."></i> 688 </div> 689 <div> 690 <input type="radio" name="startType" id="start-random" value="random" /> 691 <label for="start-random">Aleatorio</label> 692 <i class="js-simple-tooltip tooltip-icon" data-simpletooltip-text="Si esta opción está seleccionada, la primera casilla clicada será aleatoria. Puede haber una mina en esta casilla."></i> 693 </div> 694 <em>Nota: esta opción se ignora cuando el modo sin adivinanzas (no-guess) está activado.</em> 695 </fieldset> 696 697 <fieldset> 698 <legend> 699 Activar casillas adyacentes 700 <i class="js-simple-tooltip tooltip-icon" data-simpletooltip-text="Cuando todas las minas están colocad
700as alrededor de una casilla con un número, hacer clic en ese número libera todas las casillas adyacentes restantes. Elija aquà los tipos de clics que se pueden usar para activar esta acción."></i> 701 </legend> 702 <div> 703 <input type="checkbox" name="specialClick-click" id="specialClick-click" /> 704 <label for="specialClick-click">Clic izquierdo</label> 705 </div> 706 <div> 707 <input type="checkbox" name="specialClick-both" id="specialClick-both" /> 708 <label for="specialClick-both">Clic izquierdo + derecho</label> 709 </div> 710 <div> 711 <input type="checkbox" name="specialClick-double" id="specialClick-double" /> 712 <label for="specialClick-double">Doble clic izquierdo</label> 713 </div> 714 <div> 715 <input type="checkbox" name="specialClick-center" id="specialClick-center" /> 716 <label for="specialClick-center">Clic de la rueda</label> 717 </div> 718 </fieldset> 719 720 <fieldset> 721 <legend>Opciones de juego</legend> 722 <div> 723 <input type="checkbox" name="gameOption-question" id="gameOption-question" /> 724 <label for="gameOption-question">Activar el marcador "?"</label> 725 <i class="js-simple-tooltip tooltip-icon" data-simpletooltip-text="Un primer clic derecho coloca una bandera, un segundo clic derecho coloca un marcador de indicación "?"."></i> 726 </div> 727 </fieldset> 728 729 <fieldset> 730 <legend>Partida perdida</legend> 731 <div> 732 <input type="radio" name="endAction" id="end-ask" value="ask" /> 733 <label for="end-ask">Ofrecer continuar o mostrar la solución</label> 734 </div> 735 <div> 736 <input type="radio" name="endAction" id="end-show" value="show" /> 737 <label for="end-show">Mostrar directamente la solución</label> 738 </div> 739 </fieldset> 740 741 </div> 742 <div class="modal-footer"> 743 <a href="#" class="btn btn-primary" id="modal-settings-save">Guardar</a> 744 <a href="#" class="btn btn-secondary" data-hide-modal="settings-modal">Cancelar</a> 745 </div> 746</div> <div class="modal" id="theme-modal" style="display: none"> 747 <div class="modal-title"> 748 Tema <a href="#" class="modal-close" data-hide-modal="theme-modal">×</a> 749 </div> 750 <div class="modal-body"> 751 <div class="skin-list"> 752 <div class="skin" data-change-skin="checkerboard-gray"> 753 <img src="/img/skins/skin-checkerboard-gray.png?20260904" width="122" height="74" alt="Tema Tablero de ajedrez" /> 754 <div class="skin-name">Tablero de ajedrez</div> 755 </div> 756 <div class="skin" data-change-skin="cell-gray-light"> 757 <img src="/img/skins/skin-cell-gray-light.png?20260904" width="122" height="74" alt="Tema Clásico" /> 758 <div class="skin-name">Clásico</div> 759 </div> 760 <div class="skin" data-change-skin="retro"> 761 <img src="/img/skins/skin-retro.png?20260904" width="122" height="74" alt="Tema Retro" /> 762 <div class="skin-name">Retro</div> 763 </div> 764 <div class="skin" data-change-skin="checkerboard-blue"> 765 <img src="/img/skins/skin-checkerboard-blue.png?20260904" width="122" height="74" alt="Tema Azul" /> 766 <div class="skin-name">Azul</div> 767 </div> 768 <div class="skin" data-change-skin="checkerboard-green"> 769 <img src="/img/skins/skin-checkerboard-green.png?20260904" width="122" height="74" alt="Tema Verde" /> 770 <div class="skin-name">Verde</div> 771 </div> 772 <div class="skin" data-change-skin="checkerboard-purple"> 773 <img src="/img/skins/skin-checkerboard-purple.png?20260904" width="122" height="74" alt="Tema Morado" /> 774 <div class="skin-name">Morado</div> 775 </div> 776 <div class="skin" data-change-skin="checkerboard-pink"> 777 <img src="/img/skins/skin-checkerboard-pink.png?20260904" width="122" height="74" alt="Tema Rosa" /> 778 <div class="skin-name">Rosa</div> 779 </div> 780 <div class="skin" data-change-skin="checkerboard-orange"> 781 <img src="/img/skins/skin-checkerboard-orange.png?20260904" width="122" height="74" alt="Tema Naranja" /> 782 <div class="skin-name">Naranja</div> 783 </div> 784 <div class="skin" data-change-skin="checkerboard-dark"> 785 <img src="/img/skins/skin-checkerboard-dark.png?20260904" width="122" height="74" alt="Tema Modo oscuro" /> 786 <div class="skin-name">Modo oscuro</div> 787 </div> 788 <div class="skin" data-change-skin="cell-dark"> 789 <img src="/img/skins/skin-cell-dark.png?20260904" width="122" height="74" alt="Tema Modo oscuro 2" /> 790 <div class="skin-name">Modo oscuro 2</div> 791 </div> 792 <div class="skin" data-change-skin="special-octobre-rose"> 793 <img src="/img/skins/skin-special-octobre-rose.png?20260904" width="122" height="74" alt="Tema Mes de la concienciación sobre el cáncer de mama" /> 794 <div class="skin-name">Mes de la concienciación sobre el cáncer de mama</div> 795 </div> 796 </div> 797 </div> 798 <div class="modal-footer"> 799 <a href="#" class="btn btn-secondary" data-hide-modal="theme-modal">Cerrar</a> 800 </div> 801</div> 802 803<div class="modal modal-sm" id="locked-modal" style="display: none"> 804 <div class="modal-title"> 805 Nivel bloqueado </div> 806 <div class="modal-body"> 807 808 <p> 809 </p> 810 811 </div> 812 <div class="modal-footer"> 813 <a href="/es/plus" class="btn btn-primary">OK</a> 814 </div> 815</div> 816 <div id="bottom-container"> 817 <div id="col-bottom" style="height:90px; overflow:hidden;"> 818 </div> 819 </div> 820
821 <div class="bottom-spacer"> </div> 822 <footer> 823 <div class="footer-container"> 824 © 2026 Hugames - 825 <a href="/es/legal">Aviso legal y cookies</a> 826 - 827 <a href="/es/contact">Enviar un comentario</a> 828</div> </footer> 829 830 <form id="upload-form" enctype="multipart/form-data" style="display:none" id="form-share" action="/es/share"> 831 <input type="file" id="image-input" name="image" accept="image/png, image/jpeg"> 832 <button type="submit">OK</button> 833 </form> 834 835 <!-- Polyfill --> 836
836<script src="https://cdn.jsdelivr.net/npm/promise-polyfill@8/dist/polyfill.min.js"></script>
836 837
837<script src="/jsfinal/fetch.umd.js?20260904"></script>
837 838
838<script src="/jsfinal/foreach.js?20260904"></script>
838 839 840
840<script src="https://cdnjs.cloudflare.com/ajax/libs/chroma-js/2.4.2/chroma.min.js"></script>
840 841
841<script src="/jstranslations/es.js?20260904"></script>
841 842
842<script src="/jsfinal/minesweeper-all.min.js?20260904"></script>
842 843 844
844<script src="/jsfinal/minesweeper.min.js?20260904"></script>
844 845 846 847
847<script async src="//api.adinplay.com/libs/aiptag/pub/NHT/nhtdev.com/tag.min.js"></script>
847 848 849 </div> 850 </body> 851</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.