{"id":6616,"date":"2025-09-03T14:36:46","date_gmt":"2025-09-03T13:36:46","guid":{"rendered":"https:\/\/edenalvor.com\/cartao-de-pontuacao-de-minigolfe\/"},"modified":"2025-10-22T12:02:21","modified_gmt":"2025-10-22T11:02:21","slug":"cartao-de-pontuacao-de-minigolfe","status":"publish","type":"page","link":"https:\/\/edenalvor.com\/pt-pt\/cartao-de-pontuacao-de-minigolfe\/","title":{"rendered":"Cart\u00e3o de pontua\u00e7\u00e3o de minigolfe"},"content":{"rendered":"\n\n\n\n<meta charset=\"UTF-8\"\/>\n<title>Cart\u00e3o de pontua\u00e7\u00e3o de minigolfe<\/title>\n<style>\n    body {\n    font-family: Arial, sans-serif;\n    background: #f4f7f9;\n    color: #333;\n  }\n\n  h2, h3 {\n    color: #222;\n  }\n\n  .hidden {\n    display: none;\n  }\n\n  button {\n    background: linear-gradient(135deg, #4CAF50, #43A047);\n    color: white;\n    border: none;\n    border-radius: 12px;\n    padding: 12px 20px;\n    font-size: 16px;\n    font-weight: bold;\n    cursor: pointer;\n    box-shadow: 0 4px 12px rgba(0,0,0,0.2);\n    transition: all 0.3s ease;\n    margin: 5px;\n  }\n\n  button:hover {\n    background: linear-gradient(135deg, #66BB6A, #4CAF50);\n    transform: translateY(-2px);\n    box-shadow: 0 6px 16px rgba(0,0,0,0.25);\n  }\n\n  button:active {\n    transform: translateY(0);\n    box-shadow: 0 3px 8px rgba(0,0,0,0.2);\n  }\n\n  input[type=\"number\"], input[type=\"text\"] {\n    padding: 6px;\n    border-radius: 8px;\n    border: 1px solid #ccc;\n    margin: 5px 0;\n    font-size: 14px;\n  }\n\n  \/* inputs de score menores *\/\n  .score-input {\n    width: 40px;\n    text-align: center;\n  }\n\n  \/* Container da tabela *\/\n  .table-container {\n    overflow-x: auto;\n    -webkit-overflow-scrolling: touch;\n    width: 100%;   \/* ocupa todo o espa\u00e7o do container do site *\/\n    margin: 0;      \/* sem margem extra *\/\n  }\n\n  table {\n    border-collapse: collapse;\n    width: 100%;     \/* ocupa toda a largura do container *\/\n    background: white;\n    border-radius: 10px;\n    overflow: hidden;\n    box-shadow: 0 4px 12px rgba(0,0,0,0.1);\n    min-width: 400px; \/* garante que inputs n\u00e3o fiquem apertados *\/\n    margin: 0;        \/* sem margem extra *\/\n  }\n\n  th, td {\n    padding: 10px;\n    text-align: center;\n    border-bottom: 1px solid #eee;\n  }\n\n  th {\n    background: #4CAF50;\n    color: white;\n  }\n\n  tr:nth-child(even) {\n    background: #f9f9f9;\n  }\n<\/style>\n\n\n\n<div id=\"setup\">\n  <label for=\"numJogadores\">N\u00famero de jogadores (1-8): <\/label>\n  <input type=\"number\" id=\"numJogadores\" min=\"1\" max=\"8\" value=\"2\"\/>\n  <button onclick=\"definirJogadores()\">continuar<\/button>\n<\/div>\n\n<div id=\"nomesJogadores\" class=\"hidden\">\n  <hr\/>\n  <h2>Nomes dos jogadores<\/h2>\n  <div id=\"inputsNomes\"><\/div>\n  <br\/>  <button onclick=\"iniciarJogo()\">Iniciar jogo<\/button>\n<\/div>\n\n<div id=\"jogo\" class=\"hidden\">\n  <hr\/>\n  <h2>Pontua\u00e7\u00e3o<\/h2>\n\n  <div class=\"table-container\">\n    <table id=\"tabela\">\n      <thead>\n        <tr>\n          <th>Buraco<\/th>\n        <\/tr>\n      <\/thead>\n      <tbody><\/tbody>\n    <\/table>\n  <\/div>\n\n  <hr\/>\n  <button onclick=\"calcularTotais()\">Ver totais<\/button>\n  <button onclick=\"limparJogo()\">novo jogo<\/button>\n  <div id=\"totais\"><\/div>\n  <br\/><\/div>\n\n<script>\n  let jogadores = [];\n  let pontuacoes = {};\n\n  function definirJogadores() {\n    let num = document.getElementById(\"numJogadores\").value;\n    if (num < 1 || num > 8) {\n      alert(\"Choose between 1 to 8 players.\");\n      return;\n    }\n\n    let inputsDiv = document.getElementById(\"inputsNomes\");\n    inputsDiv.innerHTML = \"\";\n    for (let i = 0; i < num; i++) {\n      inputsDiv.innerHTML += \n        `Player ${i+1}: <input type=\"text\" id=\"nome${i}\" placeholder=\"Nome\"><br>`;\n    }\n\n    document.getElementById(\"setup\").classList.add(\"hidden\");\n    document.getElementById(\"nomesJogadores\").classList.remove(\"hidden\");\n  }\n\n  function iniciarJogo() {\n    jogadores = [];\n    let num = document.getElementById(\"numJogadores\").value;\n    for (let i = 0; i < num; i++) {\n      let nome = document.getElementById(\"nome\"+i).value || `Player ${i+1}`;\n      jogadores.push(nome);\n    }\n\n    pontuacoes = {};\n    jogadores.forEach(j => pontuacoes[j] = Array(18).fill(\"\"));\n\n    desenharTabela();\n    document.getElementById(\"nomesJogadores\").classList.add(\"hidden\");\n    document.getElementById(\"jogo\").classList.remove(\"hidden\");\n\n    salvarNoLocalStorage();\n  }\n\n  function desenharTabela() {\n    let thead = document.querySelector(\"#tabela thead tr\");\n    let tbody = document.querySelector(\"#tabela tbody\");\n    thead.innerHTML = \"<th>Hole\";\n    jogadores.forEach(j => {\n      thead.innerHTML += `<th>${j}`;\n    });\n\n    tbody.innerHTML = \"\";\n    for (let buraco = 1; buraco <= 18; buraco++) {\n      let linha = `<tr><td>${buraco}`;\n      jogadores.forEach(j => {\n        let valor = pontuacoes[j][buraco-1] || \"\";\n        linha += `<td><input class=\"score-input\" type=\"number\" min=\"1\" max=\"6\" value=\"${valor}\" \n                    onchange=\"atualizarPontuacao('${j}', ${buraco-1}, this.value)\">`;\n      });\n      linha += \"\";\n      tbody.innerHTML += linha;\n    }\n  }\n\n  function atualizarPontuacao(jogador, buraco, valor) {\n    pontuacoes[jogador][buraco] = valor ? parseInt(valor) : \"\";\n    salvarNoLocalStorage();\n  }\n\n  function calcularTotais() {\n    let div = document.getElementById(\"totais\");\n    div.innerHTML = \"<br><h3>Totais\";\n    jogadores.forEach(j => {\n      let total = pontuacoes[j].reduce((acc, v) => acc + (parseInt(v) || 0), 0);\n      div.innerHTML += `${j}: ${total}<br>`;\n    });\n  }\n\n  function salvarNoLocalStorage() {\n    localStorage.setItem(\"jogoMiniGolfe\", JSON.stringify({\n      jogadores: jogadores,\n      pontuacoes: pontuacoes\n    }));\n  }\n\n  function carregarDoLocalStorage() {\n    let dados = localStorage.getItem(\"jogoMiniGolfe\");\n    if (dados) {\n      let obj = JSON.parse(dados);\n      jogadores = obj.jogadores;\n      pontuacoes = obj.pontuacoes;\n      if (jogadores.length > 0) {\n        desenharTabela();\n        document.getElementById(\"setup\").classList.add(\"hidden\");\n        document.getElementById(\"nomesJogadores\").classList.add(\"hidden\");\n        document.getElementById(\"jogo\").classList.remove(\"hidden\");\n      }\n    }\n  }\n\n  function limparJogo() {\n    localStorage.removeItem(\"jogoMiniGolfe\");\n    location.reload();\n  }\n\n  carregarDoLocalStorage();\n<\/script>\n\n<hr\/>\n<div id=\"regras\">\n  <h2>Regras \/ regras<\/h2>\n  <div style=\"display: flex; flex-wrap: wrap; gap: 20px;\">\n    <div style=\"flex: 1; min-width: 300px;\">\n      <ul>\n        <li>Todos os jogadores devem usar cal\u00e7ado adequado no percurso (sapatos rasos);<\/li>\n        <li>Crian\u00e7as com menos de 13 anos devem ser acompanhadas por um adulto ou j\u00fanior (+ 13 anos) pagantes;<\/li>\n        <li>M\u00e1ximo de 4 jogadores por grupo;<\/li>\n        <li>Espere at\u00e9 que o grupo \u00e0 sua frente termine a sua jogada para poder avan\u00e7ar para o pr\u00f3ximo buraco;<\/li>\n        <li>M\u00e1ximo de 6 tacadas por buraco. Se n\u00e3o conseguir siga para o pr\u00f3ximo buraco e marque 6 tacadas no seu cart\u00e3o de pontua\u00e7\u00e3o; <\/li>\n        <li>Se a sua bola sair do percurso, marque mais uma tacada como penaliza\u00e7\u00e3o;<\/li>\n        <li>Se a sua bola estiver numa zona que n\u00e3o seja poss\u00edvel dar a tacada substitua-a, sem penaliza\u00e7\u00e3o, por duas tacadas (incluindo o crocodilo no buraco 3);<\/li>\n        <li>Caminhe apenas pela relva e pelos caminhos de pedra (por favor, n\u00e3o ande nas \u00e1reas que cont\u00eam plantas);<\/li>\n        <li>Por quest\u00f5es de seguran\u00e7a, nunca levante o taco acima da altura do joelho;<\/li>\n        <li>Pode trazer a sua bebida consigo, mas por favor, coloque-a nas mesas de apoio enquanto joga;<\/li>\n        <li>Por favor, n\u00e3o toque nos recursos animatr\u00f4nicos ou outros elementos decorativos;<\/li>\n        <li>Por favor, n\u00e3o perturbe os outros jogadores;<\/li>\n        <li>O tempo de jogo recomendado para os 18 buracos \u00e9 de 40-50 minutos;<\/li>\n        <li>Depois de terminar todos os buracos, por favor, deixe o seu taco e a sua bola no local marcado;<\/li>\n        <li>S\u00f3 \u00e9 permitido uma volta pelo campo (a segunda volta no mesmo dia \u00e9 cobrada por metade do pre\u00e7o);<\/li>\n        <li>Em caso de danos materiais causados pelo cliente, o cliente assume total responsabilidade;<\/li>\n        <li>Os pais s\u00e3o totalmente respons\u00e1veis por garantir que os seus filhos sigam estas regras;<\/li>\n      <\/ul>\n    <\/div>\n    <div style=\"flex: 1; min-width: 300px;\">\n      <ul>\n        <li>Todos os jogadores devem usar cal\u00e7ado adequado (sapatos rasos);<\/li>\n        <li>Crian\u00e7as com menos de 13 anos devem ser acompanhadas por um adulto ou j\u00fanior (+ 13 anos) pagantes;<\/li>\n        <li>M\u00e1ximo de 4 jogadores por grupo;<\/li>\n        <li>Espere at\u00e9 que o grupo \u00e0 sua frente termine o buraco antes de come\u00e7ar;<\/li>\n        <li>M\u00e1ximo de 6 tacadas por buraco. Pegue na sua bola e escreva 6 no cart\u00e3o de pontua\u00e7\u00e3o; <\/li>\n        <li>Se a sua bola sair do green, substitua-a com uma penaliza\u00e7\u00e3o de uma tacada;<\/li>\n        <li>Se a sua bola estiver demasiado perto do lado ou num obst\u00e1culo, substitua-a dentro de duas cabe\u00e7as de taco sem penaliza\u00e7\u00e3o (incluindo o crocodilo no buraco 3);<\/li>\n        <li>Caminhe apenas nos greens e nos caminhos de pedra (por favor, n\u00e3o ande nas \u00e1reas de planta\u00e7\u00e3o);<\/li>\n        <li>Por seguran\u00e7a, nunca levante a cabe\u00e7a do taco acima da altura do joelho;<\/li>\n        <li>Pode trazer a sua bebida consigo, mas por favor, coloque-a nas mesas de apoio enquanto joga;<\/li>\n        <li>Por favor, n\u00e3o toque nos recursos animatr\u00f4nicos ou outras decora\u00e7\u00f5es;<\/li>\n        <li>Por favor, n\u00e3o perturbe os outros jogadores;<\/li>\n        <li>O tempo de jogo recomendado para os 18 buracos \u00e9 de 40-50 minutos;<\/li>\n        <li>Depois de terminar a volta, por favor, deixe o seu taco e a sua bola no local marcado;<\/li>\n        <li>S\u00f3 \u00e9 permitida uma volta por greenfee (segunda volta no mesmo dia por metade do pre\u00e7o);<\/li>\n        <li>Em caso de danos materiais causados pelo cliente, o cliente assume total responsabilidade;<\/li>\n        <li>Os pais s\u00e3o totalmente respons\u00e1veis por garantir que os seus filhos sigam estas regras;<\/li>\n      <\/ul>\n    <\/div>\n  <\/div>\n<\/div>\n\n\n\n\n\n","protected":false},"excerpt":{"rendered":"<p>Cart\u00e3o de pontua\u00e7\u00e3o de minigolfe N\u00famero de jogadores (1-8): continuar Nomes dos jogadores Iniciar jogo Pontua\u00e7\u00e3o Buraco Ver totais novo jogo Regras \/ regras Todos os jogadores devem usar cal\u00e7ado adequado no percurso (sapatos rasos); Crian\u00e7as com menos de 13 anos devem ser acompanhadas por um adulto ou j\u00fanior (+ 13 anos) pagantes; M\u00e1ximo de [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"template-fullwidth.php","meta":{"_piecal_is_event":false,"_piecal_start_date":"","_piecal_end_date":"","_piecal_is_allday":false,"footnotes":""},"class_list":["post-6616","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/edenalvor.com\/pt-pt\/wp-json\/wp\/v2\/pages\/6616","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/edenalvor.com\/pt-pt\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/edenalvor.com\/pt-pt\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/edenalvor.com\/pt-pt\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/edenalvor.com\/pt-pt\/wp-json\/wp\/v2\/comments?post=6616"}],"version-history":[{"count":1,"href":"https:\/\/edenalvor.com\/pt-pt\/wp-json\/wp\/v2\/pages\/6616\/revisions"}],"predecessor-version":[{"id":6618,"href":"https:\/\/edenalvor.com\/pt-pt\/wp-json\/wp\/v2\/pages\/6616\/revisions\/6618"}],"wp:attachment":[{"href":"https:\/\/edenalvor.com\/pt-pt\/wp-json\/wp\/v2\/media?parent=6616"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}