Heim Web-Frontend js-Tutorial 基于jquery的地址栏射击游戏代码_jquery

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

May 16, 2016 pm 06:09 PM
地址栏 Schießspiel

演示地址: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);
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So beheben Sie, dass Google Translate in Chrome unter Windows 10/11 nicht funktioniert So beheben Sie, dass Google Translate in Chrome unter Windows 10/11 nicht funktioniert Apr 15, 2023 pm 12:04 PM

Chrome verfügt über ein integriertes Google Translate-Modul, das dazu beiträgt, das Surferlebnis der Benutzer zu verbessern. Wenn Sie im Internet nach Informationen suchen, finden Sie etwas, das passend erscheint, aber alles auf dieser Seite ist in einer Fremdsprache, was es sehr schmerzhaft macht. Wenn Sie jedoch den Chrome-Browser verwenden, können Sie diese Seite in eine beliebige Sprache Ihrer Wahl übersetzen. Übersetzen Sie ganze Webseiten aus Französisch, Spanisch, Deutsch, Niederländisch und anderen Fremdsprachen mit nur einem Klick in Ihre bevorzugte Sprache. Im Laufe der Zeit stießen Benutzer jedoch auf ein Problem, bei dem die integrierte Übersetzungsfunktion in Chrome nicht mehr funktionierte und sie Webseiten nicht übersetzen konnten. Viele Google Chrome-Benutzer haben berichtet, dass sie Fehlermeldungen sehen, wenn sie eine fremdsprachige Webseite öffnen und versuchen, sie zu übersetzen.

10 Möglichkeiten, Safari-Tabs auf iPhone und iPad einfach zu finden 10 Möglichkeiten, Safari-Tabs auf iPhone und iPad einfach zu finden Jun 03, 2023 pm 01:05 PM

Das Surfen im Internet wird im Jahr 2022 wahrscheinlich extrem hektisch sein, was zu einem Berg von Tags führt, die von einfach bis unnötig und sogar ungerechtfertigt reichen. Daher muss der Browser eine Möglichkeit bieten, bestimmte für Sie relevante Registerkarten schnell zu finden. Glücklicherweise können Sie mit Safari nach Tabs suchen, die auf mehreren Identifikatoren basieren (z. B. Website, kürzlich geschlossener Tab, vorheriger/nächster Tab usw.). Dieser Artikel führt Sie Schritt für Schritt durch alle oben genannten Methoden zum Auffinden von Safari-Registerkarten. Lassen Sie uns also ohne weitere Umschweife das gesuchte Tag finden. Neue Funktionen für Tabs in Safari mit iOS15 Apple hat mit der Veröffentlichung von iOS15 Verbesserungen an der Benutzeroberfläche und Funktionalität von Safari vorgenommen. Dieses Update

So erhalten Sie die Adresse der Adressleiste So erhalten Sie die Adresse der Adressleiste Sep 28, 2023 am 11:00 AM

Zu den Methoden zum Abrufen der Adressleistenadresse gehören JavaScript, HTML, Back-End-Programmiersprachen usw. Detaillierte Einführung: 1. In der Front-End-Entwicklung können Sie JavaScript verwenden, um die Adressleistenadresse abzurufen. Sie können das Objekt „window.location.href“ verwenden kann die vollständige Adresse erhalten. HTML, in HTML können Sie das „href“ des „<a>“-Tags usw. verwenden.

So löschen Sie Einträge in der Chrome-Adressleiste in Win10 So löschen Sie Einträge in der Chrome-Adressleiste in Win10 Mar 28, 2024 pm 02:52 PM

1. Klicken Sie im Menü auf [Einstellungen] oder geben Sie [chrome://settings/] in die Chrome-Adressleiste ein und drücken Sie die Eingabetaste. 2. Klicken Sie unten auf der Seite auf [Erweiterte Einstellungen anzeigen]. ], wie in der Abbildung gezeigt: 3. Klicken Sie unter [Datenschutzeinstellungen] auf [Browserdaten löschen]. ]-Taste, wie in der Abbildung gezeigt:

So zeigen Sie das Webseitenpräfix in der Adressleiste von Google Chrome an So zeigen Sie das Webseitenpräfix in der Adressleiste von Google Chrome an Aug 23, 2024 am 07:31 AM

Wie zeige ich das Webseitenpräfix in der Adressleiste von Google Chrome an? Die Adressleiste von Google Chrome ist einer der wichtigsten Teile der gesamten Benutzeroberfläche, die es Benutzern ermöglicht, durch Eingabe von URLs auf Webseiten im Internet zuzugreifen. Wir können Webseiten über die Adressleiste durchsuchen und verwalten. Sie können beispielsweise das URL-Präfix anzeigen lassen. Freunde, die nicht wissen, wie man es einstellt, können sich die einfache Methode unten ansehen. Durch die Anpassung dieser Funktionen können wir ein besseres Surferlebnis im Internet erzielen. Einfache Methodenlehre 1. Zuerst öffnen wir den Browser, geben „chrome://flags/#omnibox-context-menu-show-full-urls“ in die Adressleiste ein und drücken die Eingabetaste (wie im Bild gezeigt). . 2. Geben Sie dann die neue Schnittstelle ein und suchen Sie die

Hintergrund der Dark Zone Breakout-Story Hintergrund der Dark Zone Breakout-Story Oct 12, 2024 am 06:21 AM

Einführung in die Hintergrundgeschichte des Spiels Dark Zone Breakout: „Dark Zone Breakout“ ist ein von Tencent veröffentlichtes Hardcore-Shooter-Handyspiel. Das ultimative Ziel des Spiels ist es, aus der dunklen Zone zu evakuieren und voll beladen mit Vorräten zurückzukehren. Die herausgeholte Beute kann im Lagerhaus gelagert und gegen Geld verkauft werden. Im Gegensatz zu herkömmlichen kompetitiven Schießspielen ist „Dark Zone Breakout“ ein taktisches Schießspiel, das sich auf das PVP- und PVE-Gameplay konzentriert. Es bietet Dark Zone-Pionieren ein offeneres, freies und realistischeres Hardcore-Spielerlebnis. Im Spiel sind die Anzahl der Personen, die Anzahl der Teams, die Positionen der Feinde und die Ziele in jeder Runde unterschiedlich. Es ist diese Unsicherheit, die jede Kampfsituation unvorhersehbar macht. Nur wenn Sie kontinuierlich Informationen sammeln, Ihre eigenen Ziele kombinieren und entsprechende Ausrüstungs- und taktische Entscheidungen treffen, können Sie Ihren eigenen Weg zum Ausbruch finden.

Handyspiele ähnlich wie Dark Zone Breakout Handyspiele ähnlich wie Dark Zone Breakout Oct 11, 2024 pm 07:07 PM

Survival-Shooter-Handyspiele waren schon immer eine der beliebtesten Spielkategorien unter Spielern. Welche Handyspiele ähneln Dark Zone Breakout? 1. „Call of Duty Mobile“ „Call of Duty Mobile“ ist ein Massively-Multiplayer-Online-Ego-Shooter-Handyspiel. Die Spieler befinden sich mit vielen anderen Spielern auf derselben Karte und konkurrieren in Strategie- und Designfähigkeiten. Der Spieler oder das Team, das am Ende gewinnt, wird zurückgelassen. Die ultimative Bildqualität, das ultra-flüssige Spielgefühl, die stark restaurierten klassischen Karten und die aufregenden Soundeffekte bescheren den Spielern ein unvergleichliches visuelles und akustisches Vergnügen. Aus diesem Grund entscheiden sich unzählige Spieler für dieses Handyspiel. Noch wichtiger ist, dass dieses Handyspiel-Update einen neuen Modus hinzufügt und mehr Waffen und Ausrüstung freischaltet, die die Spieler sammeln und auswählen können. 2. „Dawn of Civilization“ Wie können verzweifelte Menschen in dieser Einöde überleben? dieses Spiel

Hintergrundgeschichte zum Ausbruch von Dark Zone Hintergrundgeschichte zum Ausbruch von Dark Zone Oct 11, 2024 pm 08:28 PM

Einführung in die Hintergrundgeschichte des Dark Zone Breakout-Spiels „Dark Zone Breakout“ ist ein von Tencent veröffentlichtes Hardcore-Shooter-Handyspiel. Das ultimative Ziel des Spiels ist es, aus der dunklen Zone zu evakuieren und voll beladen mit Vorräten zurückzukehren. Die herausgeholte Beute kann im Lagerhaus gelagert und gegen Geld verkauft werden. Im Gegensatz zu herkömmlichen kompetitiven Schießspielen ist „Dark Zone Breakout“ ein taktisches Schießspiel, das sich auf das PVP- und PVE-Gameplay konzentriert. Es bietet Dark Zone-Pionieren ein offeneres, freies und realistischeres Hardcore-Spielerlebnis. Im Spiel sind die Anzahl der Personen, die Anzahl der Teams, die Positionen der Feinde und die Ziele in jeder Runde unterschiedlich. Es ist diese Unsicherheit, die jede Kampfsituation unvorhersehbar macht. Nur wenn Sie kontinuierlich Informationen sammeln, Ihre eigenen Ziele kombinieren und entsprechende Ausrüstungs- und taktische Entscheidungen treffen, können Sie Ihren eigenen Weg zum Ausbruch finden. existieren

See all articles