Table des matières
Démo interactive
Gestion des événements de souris et de touche
Améliorer les visuels et l'audio
Reproduire les mécanismes de jeu
Maison interface Web tutoriel CSS Recréer des éléments de jeu pour le Web: le balayage de la carte parmi nous

Recréer des éléments de jeu pour le Web: le balayage de la carte parmi nous

Mar 27, 2025 am 09:35 AM

Recréer des éléments de jeu pour le Web: le balayage de la carte parmi nous

Les développeurs Web s'inspirent souvent de la conception de jeux vidéo. Des interfaces utilisateur de titres populaires comme Overwatch aux mécanismes engageants de jeux tels que Pokémon Go , les éléments de jeu offrent de riches possibilités pour améliorer les projets de développement Web. Cette approche permet le développement des compétences ciblées en s'attaquant aux fonctionnalités spécifiques du jeu plutôt qu'à la construction de jeux entiers. Cette approche ciblée expose souvent les développeurs à de nouvelles technologies et techniques.

Cet article montre la recréation du mécanicien de balayage par carte parmi nous. Pour ceux qui ne sont pas familiers, parmi nous est un jeu multijoueur où les joueurs doivent identifier les imposteurs parmi les coéquipiers tout en effectuant des tâches. La tâche de balayage de la carte, malgré sa simplicité, a atteint le statut Memetic en raison de sa difficulté.

Démo interactive

Voici une récréation du balayage parmi les cartes parmi les États-Unis: (La démo serait intégrée ici)

Explorons les techniques utilisées pour construire cette démo.

Gestion des événements de souris et de touche

La fonctionnalité principale implique de rendre la carte dragable. La carte suit le pointeur horizontalement tout en restant verticalement aligné avec le lecteur. La traînée est limitée à une plage spécifique, et la carte réinitialise sa position d'origine lors de la sortie.

Ceci est réalisé à l'aide de gestionnaires d'événements de souris et de toucher. Trois fonctions - pour mousedown , mousemove et mouseup (ou leurs équivalents tactiles) - gérez l'interaction. Voici un extrait de code JavaScript simplifié:

 const card = document.getElementById ('card');
const Reader = document.getElementById ('Reader');
Soit actif = false;
Laissez initialX;

// Écouteurs d'événements
Document.AddeventListener («Mousedown», dragstart);
Document.AddeventListener («MouseMove», drag);
document.addeventListener ('MouseUp', dragend);
document.addeventListener ('TouchStart', dragstart);
document.addeventListener ('TouchMove', glisser);
document.addeventListener («Touchend», dragend);

// ... (Fonctions DragStart, Drag, Dragend et SetTranslate comme dans l'original) ...
Copier après la connexion

Valider les balayages avec performance.now()

Le glissement de validation vérifie la vitesse et la distance. Une distance insuffisante ou une vitesse incorrecte entraîne un glissement non valide.

La position de la carte par rapport au lecteur est vérifiée dans dragEnd :

 Soit le statut;
// ... (Vérifiez si la carte n'a pas été glissée jusqu'au bout) ...
Copier après la connexion

La durée de glissement est mesurée à dragStart aide performance.now() dragEnd

 // ... (horodatrices prises au début de glisser et à la fin à l'aide de performances.now ()) ...
Copier après la connexion

L'attribut data-status de l'élément de lecteur est mis à jour en fonction du résultat de validation. CSS affiche ensuite le message approprié et illumine un feu vert ou rouge.

 / * CSS pour les messages d'état et les indicateurs de lumière * /
Copier après la connexion

Améliorer les visuels et l'audio

D'autres raffinements incluent l'utilisation d'une police personnalisée (DSEG) pour un look LCD rétro, ajoutant une animation de gigue subtile au texte à l'aide de CSS:

 / * Css pour l'animation de gigue * /
Copier après la connexion

Et enfin, incorporant les effets sonores du jeu original:

 // ... (lecture audio pour les balayages valides / non valides) ...
Copier après la connexion

Cela améliore l'expérience utilisateur globale.

Reproduire les mécanismes de jeu

Ce parmi les loisirs de cartes de carte américaine montre comment la réplication des éléments de jeu peut élargir les compétences en développement Web. En se concentrant sur un mécanicien de jeu spécifique, les développeurs peuvent explorer diverses technologies et aspects de conception dans une portée gérable. Essayez de reproduire vos mécanismes de jeu préférés - vous pourriez être surpris de ce que vous apprenez!

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

<🎜>: Grow A Garden - Guide de mutation complet
3 Il y a quelques semaines By DDD
<🎜>: Bubble Gum Simulator Infinity - Comment obtenir et utiliser les clés royales
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Blue Prince: Comment se rendre au sous-sol
1 Il y a quelques mois By DDD
Nordhold: Système de fusion, expliqué
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Tutoriel Java
1664
14
Tutoriel PHP
1269
29
Tutoriel C#
1248
24
Comment créer un compte à rebours animé avec HTML, CSS et JavaScript Comment créer un compte à rebours animé avec HTML, CSS et JavaScript Apr 11, 2025 am 11:29 AM

Avez-vous déjà eu besoin d'un compte à rebours sur un projet? Pour quelque chose comme ça, il pourrait être naturel d'atteindre un plugin, mais c'est en fait beaucoup plus

Guide des attributs de données HTML Guide des attributs de données HTML Apr 11, 2025 am 11:50 AM

Tout ce que vous avez toujours voulu savoir sur les attributs de données dans HTML, CSS et JavaScript.

Une preuve de concept pour rendre Sass plus rapidement Une preuve de concept pour rendre Sass plus rapidement Apr 16, 2025 am 10:38 AM

Au début d'un nouveau projet, la compilation SASS se produit en un clin d'œil. Cela se sent bien, surtout quand il est associé à BrowSersync, qui recharge

Pendant que vous n'étiez pas à la recherche, les gradients CSS se sont améliorés Pendant que vous n'étiez pas à la recherche, les gradients CSS se sont améliorés Apr 11, 2025 am 09:16 AM

Une chose qui a attiré mon œil sur la liste des fonctionnalités pour le polyfill à gradient conique () de Lea.

Une comparaison des fournisseurs de formulaires statiques Une comparaison des fournisseurs de formulaires statiques Apr 16, 2025 am 11:20 AM

Essayons de savoir un terme ici: "fournisseur de formulaire statique". Vous apportez votre HTML

Comment construire des composants Vue dans un thème WordPress Comment construire des composants Vue dans un thème WordPress Apr 11, 2025 am 11:03 AM

La directive en ligne en ligne nous permet de construire des composants Vue riches en tant qu'amélioration progressive par rapport au balisage WordPress existant.

Les trois types de code Les trois types de code Apr 11, 2025 pm 12:02 PM

Chaque fois que je commence un nouveau projet, j'organise le code que je regarde en trois types ou catégories si vous le souhaitez. Et je pense que ces types peuvent être appliqués à

PHP est A-OK pour les modèles PHP est A-OK pour les modèles Apr 11, 2025 am 11:04 AM

Les modèles PHP obtiennent souvent un mauvais rap pour faciliter le code inférieur - mais cela ne doit pas être le cas. Voyons comment les projets PHP peuvent appliquer un base

See all articles