Maison interface Web js tutoriel 基于jquery的地址栏射击游戏代码_jquery

基于jquery的地址栏射击游戏代码_jquery

May 16, 2016 pm 06:09 PM
地址栏 射击游戏

演示地址:http://demo.jb51.net/js/2011/hunt/index.htm

玩法向下看
请看地址栏上的字母 O! 你使用O来向 a射击。 使用键盘上的 左箭头 和 右箭头 移动字母O. 当O移动到 a 上时,按 空格键射击! 游戏会定时30秒时间,按ESC键重新开始。
注:请使用系统自带的IE浏览器来打开本链接。

基于jquery的地址栏射击游戏代码_jquery

你使用O来向 a射击。 使用键盘上的 左箭头 和 右箭头 移动字母O. 当O移动到 a 上时,按 空格键射击! 
基于jquery的地址栏射击游戏代码_jquery
核心代码:
复制代码 代码如下:

(function() {
var Animal, Game;
var __bind = function(fn, me){ return function(){ return fn.apply(me, arguments); }; };
Game = (function() {
function Game() {
this.eventReceived = __bind(this.eventReceived, this);;
this.update = __bind(this.update, this);; this.level = 1;
this.levelSize = 60;
this.playerLocation = this.levelSize / 2;
this.start();
}
Game.prototype.start = function() {
var num;
this.points = 0;
this.startTime = new Date;
this.timeLimit = 30;
this.animals = [];
for (num = 4; num >= 1; num--) {
this.addAnimal();
}
return this.interval = setInterval(this.update, 1000 / 30);
};
Game.prototype.gameOver = function() {
clearInterval(this.interval);
return location.hash = "在" + (this.elapsedTime()) + "秒中你共射中了" + this.points + "个a! (按ESC键重新开始)";
};
Game.prototype.elapsedTime = function() {
return Math.floor(((new Date).getTime() - this.startTime.getTime()) / 1000);
};
Game.prototype.addAnimal = function() {
var animal;
animal = new Animal(Math.floor(Math.random() * this.levelSize));
return this.animals.push(animal);
};
Game.prototype.removeAnimal = function(deadAnimal) {
var animal;
return this.animals = (function() {
var _i, _len, _ref, _results;
_ref = this.animals;
_results = [];
for (_i = 0, _len = _ref.length; _i animal = _ref[_i];
if (animal !== deadAnimal) {
_results.push(animal);
}
}
return _results;
}).call(this);
};
Game.prototype.isAnimalAt = function(position) {
var animal, matches;
matches = (function() {
var _i, _len, _ref, _results;
_ref = this.animals;
_results = [];
for (_i = 0, _len = _ref.length; _i animal = _ref[_i];
if (Math.floor(animal.position) === position) {
_results.push(animal);
}
}
return _results;
}).call(this);
return matches[0];
};
Game.prototype.update = function() {
var animal, position, timeLeft, url, _i, _len, _ref;
url = [];
_ref = this.animals;
for (_i = 0, _len = _ref.length; _i animal = _ref[_i];
animal.update(this.levelSize);
}
while (url.length position = url.length;
if (position === this.playerLocation) {
if (this.isAnimalAt(this.playerLocation)) {
url.push("@");
} else {
url.push("O");
}
} else if (this.isAnimalAt(position)) {
url.push("a");
} else {
url.push("-");
}
}
timeLeft = this.timeLimit - this.elapsedTime();
if (timeLeft return this.gameOver();
} else {
if (timeLeft timeLeft = "0" + timeLeft;
}
location.hash = (" " + timeLeft + "|") + url.join("") + ("|" + timeLeft);
return document.title = "Points " + this.points;
}
};
Game.prototype.eventReceived = function(event) {
var animal;
switch (event.which) {
case 37:
this.playerLocation -= 1;
if (this.playerLocation return this.playerLocation = this.levelSize - 1;
}
break;
case 39:
this.playerLocation += 1;
return this.playerLocation %= this.levelSize;
case 38:
case 32:
animal = this.isAnimalAt(this.playerLocation);
if (animal) {
this.points += 1;
this.removeAnimal(animal);
console.log(this.animals.length);
if (this.animals.length === 0) {
return this.gameOver();
}
}
break;
case 27:
return this.start();
}
};
return Game;
})();
Animal = (function() {
function Animal(position) {
this.position = position;
this.velocityChange = Math.random() * 0.5;
this.velocityIndex = Math.random() * Math.PI;
this.dampener = 0.4;
}
Animal.prototype.update = function(levelSize) {
this.velocityIndex += Math.random() * this.velocityChange;
this.position += Math.sin(this.velocityIndex) * this.dampener;
this.position %= levelSize;
if (this.position return this.position += levelSize;
}
};
return Animal;
})();
$(function() {
var game;
game = new Game();
return $(document).keydown(game.eventReceived);
});
}).call(this);
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 !

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)

Comment réparer Google Translate ne fonctionne pas dans Chrome sous Windows 10/11 Comment réparer Google Translate ne fonctionne pas dans Chrome sous Windows 10/11 Apr 15, 2023 pm 12:04 PM

Chrome dispose d'un module Google Translate intégré qui contribue à améliorer l'expérience de navigation des utilisateurs. Lorsque vous recherchez des informations sur Internet, vous trouvez quelque chose qui semble approprié, mais tout sur cette page est dans une langue étrangère, ce qui rend cela très pénible. Cependant, si vous utilisez le navigateur Chrome, vous pouvez traduire cette page dans la langue de votre choix. Traduisez des pages Web entières en français, espagnol, allemand, néerlandais et autres langues étrangères vers votre langue préférée en un seul clic. Cependant, au fil du temps, les utilisateurs ont rencontré un problème où la fonctionnalité de traduction intégrée dans Chrome a cessé de fonctionner et ils n'ont pas pu traduire les pages Web. De nombreux utilisateurs de Google Chrome ont signalé avoir vu des messages d'erreur lorsqu'ils ouvraient une page Web en langue étrangère et essayaient de la traduire.

10 façons de trouver facilement les onglets Safari sur iPhone et iPad 10 façons de trouver facilement les onglets Safari sur iPhone et iPad Jun 03, 2023 pm 01:05 PM

La navigation sur le Web en 2022 risque d’être extrêmement mouvementée, entraînant une montagne de balises allant de basiques à inutiles, voire injustifiées. Par conséquent, le navigateur doit fournir un moyen de trouver rapidement les onglets spécifiques qui vous concernent. Heureusement, Safari vous permet de rechercher des onglets en fonction de plusieurs identifiants (c'est-à-dire site Web, onglet récemment fermé, onglet précédent/suivant, etc.). Cet article vous guidera étape par étape à travers toutes les méthodes ci-dessus pour trouver les onglets Safari. Alors sans plus attendre, trouvons le tag que vous recherchez. Nouvelles fonctionnalités pour les onglets de Safari avec iOS15 Apple a apporté des améliorations à l'interface utilisateur et aux fonctionnalités de Safari avec la sortie d'iOS15. Cette mise à jour

Comment obtenir l'adresse de la barre d'adresse Comment obtenir l'adresse de la barre d'adresse Sep 28, 2023 am 11:00 AM

Les méthodes permettant d'obtenir l'adresse de la barre d'adresse incluent JavaScript, HTML, les langages de programmation back-end, etc. Introduction détaillée : 1. JavaScript. Dans le développement front-end, vous pouvez utiliser JavaScript pour obtenir l'adresse de la barre d'adresse. Vous pouvez utiliser l'objet "window.location" pour obtenir les informations de la barre d'adresse. peut obtenir l'adresse complète de la colonne ; 2. HTML, en HTML vous pouvez utiliser le "href" de la balise "<a>", etc.

Comment effacer les enregistrements de la barre d'adresse Chrome dans Win10 Comment effacer les enregistrements de la barre d'adresse Chrome dans Win10 Mar 28, 2024 pm 02:52 PM

1. Cliquez sur [Paramètres] dans le menu ou saisissez [chrome://settings/] dans la barre d'adresse Chrome et appuyez sur Entrée. 2. Cliquez sur [Afficher les paramètres avancés] en bas de la page. ], comme le montre la figure : 3. Cliquez sur [Effacer les données de navigation] sous [Paramètres de confidentialité]. ], comme indiqué sur la figure :

Comment afficher le préfixe d'une page Web dans la barre d'adresse de Google Chrome Comment afficher le préfixe d'une page Web dans la barre d'adresse de Google Chrome Aug 23, 2024 am 07:31 AM

Comment afficher le préfixe d'une page web dans la barre d'adresse de Google Chrome ? La barre d'adresse de Google Chrome est l'une des parties les plus importantes de toute l'interface, qui permet aux utilisateurs d'accéder aux pages Web sur Internet en saisissant des URL. Nous pouvons parcourir et gérer les pages Web via la barre d'adresse. Par exemple, vous pouvez le laisser afficher le préfixe de l'URL. Les amis qui ne savent pas comment le définir peuvent consulter la méthode simple ci-dessous. En ajustant ces fonctionnalités, nous pouvons obtenir une meilleure expérience de navigation sur le Web. Méthode simple d'enseignement 1. Tout d'abord, nous ouvrons le navigateur, entrons "chrome://flags/#omnibox-context-menu-show-full-urls" dans la barre d'adresse et appuyons sur la touche Entrée (comme indiqué sur l'image) . 2. Entrez ensuite dans la nouvelle interface et recherchez le

Contexte de l'histoire de l'évasion de la zone sombre Contexte de l'histoire de l'évasion de la zone sombre Oct 12, 2024 am 06:21 AM

Introduction à l'histoire du jeu Dark Zone Breakout : "Dark Zone Breakout" est un jeu mobile de tir hardcore publié par Tencent. Le but ultime du jeu est d'évacuer la zone sombre et de revenir chargé de fournitures. Le butin récupéré peut être stocké dans l'entrepôt et vendu contre de l'argent. Différent des jeux de tir compétitifs traditionnels, "Dark Zone Breakout" est un jeu de tir tactique axé sur le gameplay PVP et PVE. Il offre aux pionniers de Dark Zone une expérience de jeu hardcore plus ouverte, gratuite et réaliste. Dans le jeu, le nombre de personnes, le nombre d'équipes, les positions des ennemis et les buts à chaque tour sont différents. C'est cette incertitude qui rend chaque situation de combat imprévisible. Ce n'est qu'en collectant continuellement des informations, en combinant vos propres objectifs et en faisant les choix tactiques et d'équipement correspondants que vous pourrez trouver votre propre moyen de vous échapper.

Jeux mobiles similaires à Dark Zone Breakout Jeux mobiles similaires à Dark Zone Breakout Oct 11, 2024 pm 07:07 PM

Les jeux mobiles de tir de survie ont toujours été l’une des catégories de jeux préférées des joueurs. Quels jeux mobiles sont similaires à Dark Zone Breakout ? 1. "Call of Duty Mobile" "Call of Duty Mobile" est un jeu mobile de tir à la première personne en ligne massivement multijoueur. Les joueurs seront sur la même carte avec de nombreux joueurs, rivalisant de compétences en stratégie et en conception, et le joueur ou l'équipe qui gagnera à la fin sera laissé pour compte. La qualité d'image ultime, la sensation ultra fluide, les cartes classiques hautement restaurées et les effets sonores passionnants offrent aux joueurs un plaisir visuel et auditif inégalé. C'est la raison pour laquelle d'innombrables joueurs choisissent ce jeu mobile. Plus important encore, cette mise à jour du jeu mobile ajoute un nouveau mode et débloque davantage d'armes et d'équipements que les joueurs peuvent collectionner et choisir. 2. « L'aube de la civilisation » Comment des personnes désespérées peuvent-elles survivre dans ce désert ? ce jeu

Histoire de fond de Dark Zone Breakout Histoire de fond de Dark Zone Breakout Oct 11, 2024 pm 08:28 PM

Introduction à l'histoire du jeu Dark Zone Breakout "Dark Zone Breakout" est un jeu mobile de tir hardcore publié par Tencent. Le but ultime du jeu est d'évacuer la zone sombre et de revenir chargé de fournitures. Le butin récupéré peut être stocké dans l'entrepôt et vendu contre de l'argent. Différent des jeux de tir compétitifs traditionnels, "Dark Zone Breakout" est un jeu de tir tactique axé sur le gameplay PVP et PVE. Il offre aux pionniers de Dark Zone une expérience de jeu hardcore plus ouverte, gratuite et réaliste. Dans le jeu, le nombre de personnes, le nombre d'équipes, les positions des ennemis et les buts à chaque tour sont différents. C'est cette incertitude qui rend chaque situation de combat imprévisible. Ce n'est qu'en collectant continuellement des informations, en combinant vos propres objectifs et en faisant les choix tactiques et d'équipement correspondants que vous pourrez trouver votre propre moyen de vous échapper. exister

See all articles