Biblioteca de Prompts
Pulsaciones Cósmicas
Biblioteca de Prompts
- Biblioteca
- Pulsaciones Cósmicas
- Clarividente corporativo
- Asistente de sitios web
- Experto en fórmulas de Excel
- Programador de scripts de Google Apps
- Eliminador de errores de Python
- Consultor de viajes en el tiempo
- Compañero de narración
- Cita tus fuentes
- Hechicero SQL
- Intérprete de sueños
- Pun-dit
- Creador culinario
- Poeta de palabras combinadas
- Hal el ayudante humorístico
- Leyenda LaTeX
- Colorante de estado de ánimo
- Domina Git
- Experto en símiles
- Navegador de dilemas éticos
- Escriba de reuniones
- Iluminador de modismos
- Consultor de código
- Fabricante de funciones
- Creador de neologismos
- Convertidor CSV
- Codificador de emojis
- Pulidor de prosa
- Analizador de perspectivas
- Generador de trivia
- Mentor de atención plena
- Simplificador de segundo grado
- Innovador de fitness en RV
- Purificador de IIP
- Memo maestro
- Entrenador profesional
- Gurú de la calificación
- Trabalenguas
- Creador de preguntas para entrevistas
- Genio gramatical
- Adivina adivinanza
- Clarificador de código
- Antropólogo alienígena
- Organizador de datos
- Constructor de marca
- Estimador de eficiencia
- Clasificador de reseñas
- Decodificador de direcciones
- Musa motivacional
- Extractor de correos electrónicos
- Moderador maestro
- Planificador de lecciones
- Sabio socrático
- Alquimista de la aliteración
- Asesor de moda futurista
- Superpoderes políglotas
- Profesional de nombres de productos
- Reflexiones filosóficas
- Mago de las hojas de cálculo
- Simulador de escenarios de ciencia ficción
- Editor adaptativo
- Transmisiones de Babel
- Detector de tono de tweets
- Analizador de códigos de aeropuerto
Biblioteca de Prompts
Pulsaciones Cósmicas
Genera un juego interactivo de escritura rápida en un solo archivo HTML, con jugabilidad de desplazamiento lateral y estilo Tailwind CSS.
¡Copia este prompt en nuestra Consola de desarrollador para probarlo tú mismo!
Content | |
---|---|
User | Escríbeme una aplicación web completa en un solo archivo HTML. La aplicación debe contener un juego simple de desplazamiento lateral donde uso WASD para moverme. Al moverse por el mundo, ocasionalmente el personaje/sprite encontrará palabras. Cuando se encuentra una palabra, el jugador debe escribir correctamente la palabra lo más rápido posible. Cuanto más rápido se escriba correctamente la palabra, más puntos obtiene el jugador. Deberíamos tener un contador en la esquina superior derecha para llevar un registro de los puntos. Las palabras deben ser aleatorias y muy variables para mantener el juego interesante. Debes hacer que el sitio web sea muy estético y usar Tailwind. |
Salida de Ejemplo
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<script src="https://cdn.tailwindcss.com"></script>
<title>Juego de Escritura con Desplazamiento Lateral</title>
</head>
<body class="bg-gray-900 text-white">
<div class="fixed top-4 right-4 text-2xl">
Puntuación: <span id="score">0</span>
</div>
<div id="game" class="h-screen w-screen overflow-hidden relative">
<div
id="player"
class="absolute bottom-10 left-10 w-8 h-8 bg-blue-500"
></div>
</div>
<div
id="word-input"
class="fixed top-1/2 left-1/2 transform -translate-x-1/2 -translate-y-1/2 bg-white text-black p-4 rounded hidden"
>
<input
type="text"
id="typed-word"
class="border border-gray-300 rounded px-2 py-1 mb-2 w-full"
/>
<button id="submit-word" class="bg-blue-500 text-white px-4 py-2 rounded">
Enviar
</button>
</div>
<script>
const words = [
'ability',
'able',
'about',
'above',
'accept',
'according',
'account',
'across',
'action',
'activity',
'actually',
'address',
'administration',
'admit',
'adult',
'affect',
'after',
'again',
'against',
'agency',
'agent',
'ago',
'agree',
'agreement',
'ahead',
'air',
'all',
'allow',
'almost',
'alone',
'along',
'already',
'also',
'although',
'always',
'American',
'among',
'amount',
'analysis',
'and',
'animal',
'another',
'answer',
'any',
'anyone',
'anything',
'appear',
'apply',
'approach',
'area',
'argue',
'arm',
'around',
'arrive',
'art',
'article',
'artist',
'as',
'ask',
'assume',
'at',
'attack',
'attention',
'attorney',
'audience',
'author',
'authority',
'available',
'avoid',
'away',
'baby',
'back',
'bad',
'bag',
'ball',
'bank',
'bar',
'base',
'be',
'beat',
'beautiful',
'because',
'become',
'bed',
'before',
'begin',
'behavior',
'behind',
'believe',
'benefit',
'best',
'better',
'between',
'beyond',
'big',
'bill',
'billion',
'bit',
'black',
'blood',
'blue',
'board',
'body',
'book',
'born',
'both',
'box',
'boy',
'break',
'bring',
'brother',
'budget',
'build',
'building',
'business',
'but',
'buy',
'by',
'call',
'camera',
'campaign',
];
let score = 0;
let currentWord;
let startTime;
const game = document.getElementById('game');
const player = document.getElementById('player');
const wordInput = document.getElementById('word-input');
const typedWord = document.getElementById('typed-word');
const submitWord = document.getElementById('submit-word');
const scoreDisplay = document.getElementById('score');
let playerX = 10;
let playerY = game.offsetHeight - 50;
const speed = 5;
function placeWord() {
const word = document.createElement('div');
word.textContent = words[Math.floor(Math.random() * words.length)];
word.className = 'absolute text-2xl';
word.style.left = `${game.offsetWidth + 10}px`;
word.style.top = `${Math.random() * (game.offsetHeight - 50)}px`;
game.appendChild(word);
return word;
}
function checkCollision(word) {
const playerRect = player.getBoundingClientRect();
const wordRect = word.getBoundingClientRect();
return !(
playerRect.right < wordRect.left ||
playerRect.left > wordRect.right ||
playerRect.bottom < wordRect.top ||
playerRect.top > wordRect.bottom
);
}
function startInput(word) {
currentWord = word.textContent;
wordInput.style.display = 'block';
typedWord.value = '';
typedWord.focus();
startTime = Date.now();
}
function endInput() {
wordInput.style.display = 'none';
const endTime = Date.now();
const elapsedTime = endTime - startTime;
const timeBonus = Math.max(2000 - elapsedTime, 0);
score += Math.round(1000 + timeBonus);
scoreDisplay.textContent = score;
}
function checkInput() {
if (typedWord.value === currentWord) {
endInput();
}
}
function gameLoop() {
playerY = Math.max(
0,
Math.min(playerY, game.offsetHeight - player.offsetHeight)
);
playerX = Math.max(
0,
Math.min(playerX, game.offsetWidth - player.offsetWidth)
);
player.style.top = `${playerY}px`;
player.style.left = `${playerX}px`;
const words = Array.from(
document.querySelectorAll('#game > div:not(#player)')
);
words.forEach((word) => {
const currentLeft = parseInt(word.style.left);
word.style.left = `${currentLeft - speed}px`;
if (checkCollision(word)) {
startInput(word);
}
if (currentLeft < -word.offsetWidth) {
word.remove();
}
});
if (Math.random() < 0.01) {
placeWord();
}
requestAnimationFrame(gameLoop);
}
document.addEventListener('keydown', (e) => {
if (e.key === 'w') playerY -= speed;
if (e.key === 'a') playerX -= speed;
if (e.key === 's') playerY += speed;
if (e.key === 'd') playerX += speed;
});
typedWord.addEventListener('input', checkInput);
submitWord.addEventListener('click', checkInput);
gameLoop();
</script>
</body>
</html>
Solicitud de API
Was this page helpful?
On this page