検索

whack-a-mole:CSSエディション

この記事では、CSSのみを使用して、whack-a moleゲームの作成を探ります。これは、CSSの組み込みタイマーまたはインターバル関数がないことを考えると、偉業は不可能に思われる偉業です。キーは、ゲーム状態を管理し、タイミングをシミュレートするためにCSSアニメーションを活用することにあります。

ファンデーションは、純粋なCSSダブルクリックハンドラーです(オリジナルにリンクされた別の記事で詳述されています)。このハンドラーは、アニメーションと要素の位置決めを巧みに使用して、シングルクリックとダブルクリックを区別します。ダブルクリックすると特定のアクションがトリガーされ、シングルクリックが別のアクションをトリガーします。このメカニズムは、ゲームの相互作用を管理するために重要です。

2つの中核原則があります:

  1. アニメーションを介した状態管理: CSSアニメーションは、ゲーム状態間を定義および移行するために使用されます。
  2. インタラクティブ性の位置制御:要素の位置を変更すると、ユーザーのクリックにどの要素が応答するかが決まります。

要素を視界にスクロールする代わりに、 animation-timing-function: step-endが使用され、モールの「ポップイン」効果と「ポップアウト」効果が作成されます。 ( transformの代わりに) leftを使用してモルを配置すると、Firefoxのレイアウトの問題が回避されます。

「モール」と「ホール」は、チェックボックスハックと対話するCSSラベルと呼ばれ、ゲームのインタラクティブな要素を形成します。ほくろが穴の上にあるとき、クリックするとモグラの無線入力がトリガーされます。それ以外の場合、穴の入力をトリガーします。

複数のホールとモルが実装され、それぞれにユニークなアニメーションの遅延があり、ゲームのダイナミックモルの動きが作成されます。 Pythonスクリプトを使用して、状態マシンのCSSセレクターとキーフレームを生成し、それ以外の場合は複雑なハンドコーディングプロセスを簡素化しました。 「ランダム」モルの動作は、CSSの乱数生成機能の欠如のためにハードコードされています。

その結果、HTMLとCSSで完全に構築された完全に機能的な反応ベースのゲームができ、ゲーム開発のためのCSSアニメーションの驚くべき機能を紹介します。

以上がwhack-a-mole:CSSエディションの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
Google Fontsをタグ付けし、Goofonts.comを作成する方法Google Fontsをタグ付けし、Goofonts.comを作成する方法Apr 12, 2025 pm 12:02 PM

Goofontsは、開発者妻とデザイナーの夫によって署名されたサイドプロジェクトであり、どちらもタイポグラフィの大ファンです。 Googleにタグを付けています

時代を超越したWeb開発記事時代を超越したWeb開発記事Apr 12, 2025 am 11:44 AM

Pavithra Kodmadは、彼らが変化したWeb開発に関する最も時代を超越した記事のいくつかであると考えていることについて、人々に推奨事項を求めました

セクション要素との取引セクション要素との取引Apr 12, 2025 am 11:39 AM

2つの記事がまったく同じ日に公開されました。

graphQlの練習JavaScript APIでクエリをクエリしますgraphQlの練習JavaScript APIでクエリをクエリしますApr 12, 2025 am 11:33 AM

GraphQL APIの構築方法を学ぶことは非常に挑戦的です。ただし、10分でGraphQL APIを使用する方法を学ぶことができます!そして、それは私が完璧になったことがあります

コンポーネントレベルのCMSコンポーネントレベルのCMSApr 12, 2025 am 11:09 AM

コンポーネントがデータが近くに住んでいる環境に住んでいる場合、視覚コンポーネントと

円にタイプを設定します...オフセットパス付き円にタイプを設定します...オフセットパス付きApr 12, 2025 am 11:00 AM

ここでは、Yuanchuanからの合法的なCSSの策略があります。このCSSプロパティオフセットパスがあります。むかしむかし、それはモーションパスと呼ばれ、その後改名されました。私

CSSで「戻る」ことは何をしますか?CSSで「戻る」ことは何をしますか?Apr 12, 2025 am 10:59 AM

Miriam Suzanneは、このテーマに関するMozilla開発者のビデオで説明しています。

現代の恋人現代の恋人Apr 12, 2025 am 10:58 AM

私はこのようなものが大好きです。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

WebStorm Mac版

WebStorm Mac版

便利なJavaScript開発ツール

SecLists

SecLists

SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

Dreamweaver Mac版

Dreamweaver Mac版

ビジュアル Web 開発ツール

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。