{"id":20135314,"url":"https://github.com/shrondi/hundirflota-racket","last_synced_at":"2026-03-04T22:31:24.062Z","repository":{"id":258841622,"uuid":"874727223","full_name":"Shrondi/HundirFlota-Racket","owner":"Shrondi","description":"Juego de Hundir la flota creado con interfaz gráfica en Racket/Scheme","archived":false,"fork":false,"pushed_at":"2024-12-14T01:29:57.000Z","size":37846,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-13T09:34:27.592Z","etag":null,"topics":["hundir-la-flota","lisp","programacion-declarativa","racket","racket-graphical-interface-toolkit","racket-gui","racket-lang","scheme","uco"],"latest_commit_sha":null,"homepage":"","language":"Racket","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Shrondi.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-10-18T10:58:26.000Z","updated_at":"2024-12-14T01:30:02.000Z","dependencies_parsed_at":"2025-01-13T09:40:04.745Z","dependency_job_id":null,"html_url":"https://github.com/Shrondi/HundirFlota-Racket","commit_stats":null,"previous_names":["shrondi/hundirflota-racket"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Shrondi%2FHundirFlota-Racket","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Shrondi%2FHundirFlota-Racket/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Shrondi%2FHundirFlota-Racket/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Shrondi%2FHundirFlota-Racket/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Shrondi","download_url":"https://codeload.github.com/Shrondi/HundirFlota-Racket/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241582337,"owners_count":19985845,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["hundir-la-flota","lisp","programacion-declarativa","racket","racket-graphical-interface-toolkit","racket-gui","racket-lang","scheme","uco"],"created_at":"2024-11-13T21:14:26.827Z","updated_at":"2026-03-04T22:31:23.998Z","avatar_url":"https://github.com/Shrondi.png","language":"Racket","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Proyecto Hundir la Flota\n\n**Autor:** Carlos Lucena Robles  \n**Asignatura:** Programación Declarativa  \n**Curso:** 2023 - 2024  \n**Universidad:** Universidad de Córdoba  \n**Grado:** 4º de Ingeniería Informática  \n\n---\n\n## Descripción\n\nProyecto realizado para la asignatura de Programación Declarativa basado en el juego \"Hundir la Flota\" utilizando programación declarativa e interfaces gráficas en Racket.\n\n---\n\n## Versiones\n\n### Versión 1: HundirFlotaV1\n- Incluye caracteres Unicode (puede que algunos iconos no sean visibles dependiendo de la configuración del sistema operativo).\n- Incluye una imagen con transparencia usada durante el cambio de turno que podría aparecer como opaca en algunos sistemas operativos. No afecta a la jugabilidad, solo es un efecto visual.\n\n### Versión 2: HundirFlotaV2\n- No incluye los caracteres Unicode que son sustituidos por texto.\n- No incluye la imagen con transparencia mostrada durante el cambio de turno.\n\n---\n\n## Ejecución\n### Desde el intérprete de Racket\n1. Abrir el archivo `HundirFlotaVX/main.rkt` (siendo X el número de la versión 1 o 2) con el intérprete DrRacket (versión mínima 8.4).\n2. Seleccionar la opción _\"Determine language from source\"_.\n3. (Opcional) Para una ejecución más eficiente:\n   - Ir a **Choose Language \u003e Show Details**.\n   - Activar **No debugging or profiling**.\n   - Desmarcar la casilla **Preserve Stacktrace**.\n   Esto mejorará el rendimiento y reducirá el consumo de memoria.\n4. Pulsar sobre Run para que la aplicación empiece a ejecutarse.\n\n### Desde la aplicación compilada.\nPara crear un ejecutable, dentro del intérprete se encuentra la opción **Racket \u003e Create Executable**. Esto permitirá generar un archivo instalable en otras máquinas, mejorando además la eficiencia al no depender del intérprete.\n\n---\n\n## Estructura del repositorio\n\n```bash\nHundirFlotaVX/             # Raíz del proyecto\n|-- archivo-tableros/      # Archivos generados de tableros\n|-- gui/                   # Elementos de la interfaz\n|   |-- botones.rkt\n|   |-- canvas.rkt\n|   |-- dialogos.rkt\n|   |-- mensajes.rkt\n|   |-- opciones.rkt\n|   |-- paneles.rkt\n|   |-- temporizadores.rkt\n|   |-- textos.rkt\n|   |-- ventana.rkt\n|-- funcionesCallback/      # Funciones de los elementos gráficos\n|   |-- callbackBotones.rkt\n|   |-- callbackCanvas.rkt\n|   |-- callbackDialogos.rkt\n|   |-- callbackOpciones.rkt\n|   |-- callbackTemporizadores.rkt\n|   |-- callbackVentanas.rkt\n|-- funciones.rkt           # Funciones generales\n|-- funcionesGUI.rkt        # Funciones específicas de la GUI\n|-- turno.rkt               # Función para cambiar el turno\n|-- funcionesLimpiar.rkt    # Limpieza de canvases\n|-- funcionesColocar.rkt    # Lógica para la colocación de barcos\n|-- funcionesDibujar.rkt    # Dibujado en el canvas\n|-- funcionesDisparar.rkt   # Lógica de disparo\n|-- funcionesGenerar.rkt    # Generación aleatoria de la colocación de barcos\n|-- funcionesLogica.rkt     # Lógica principal del juego\n|-- imagenes/               # Recursos gráficos\n|-- ayuda/                  # Archivos de ayuda\n|-- main.rkt                # Archivo principal del programa\n|-- estructuras.rkt         # Definición de estructuras principales\n|-- macros.rkt              # Macros globales\n\nLatex                       # Código LaTeX usado para generar la presentación\nPresentacion_HundirFlota.pdf\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fshrondi%2Fhundirflota-racket","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fshrondi%2Fhundirflota-racket","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fshrondi%2Fhundirflota-racket/lists"}