用html+js+css实现的战略小游戏

效果图:

兄弟们,话不多说,直接上代码

html 复制代码
<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta name="description" content="朝鲜战争战略游戏 - 选择阵营,指挥部队,赢得胜利">
    <title>朝鲜战争战略游戏</title>
    <link rel="icon" href="favicon.ico" type="image/x-icon">
    <link rel="stylesheet" href="style.css">
    <link rel="preconnect" href="https://fonts.googleapis.com">
    <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
    <link href="https://fonts.googleapis.com/css2?family=Press+Start+2P&display=swap" rel="stylesheet">

</head>
<body>
    <div id="loading-screen" class="loading-screen" aria-live="polite">
        <div class="loading-content">
            <div class="loading-spinner"></div>
            <p id="loading-text">正在准备战场...</p>
        </div>
    </div>

    <!-- 阵营选择界面 -->
    <section id="faction-selection" class="faction-selection" aria-label="阵营选择">
        <h2>Pick your Faction</h2>
        <div class="faction-buttons">
            <button class="faction-button us" data-faction="us" aria-label="选择美国阵营">
                <img src="images/us.png" alt="美国国旗" class="faction-flag">
                <span class="faction-name">US</span>
            </button>
            <button class="faction-button rok" data-faction="rok" aria-label="选择韩国阵营">
                <img src="images/rok.png" alt="韩国国旗" class="faction-flag">
                <span class="faction-name">ROK</span>
            </button>
            <button class="faction-button dprk" data-faction="dprk" aria-label="选择朝鲜阵营">
                <img src="images/dprk.png" alt="朝鲜国旗" class="faction-flag">
                <span class="faction-name">DPRK</span>
            </button>
            <button class="faction-button pla" data-faction="pla" aria-label="选择中国阵营">
                <img src="images/pla.png" alt="中国国旗" class="faction-flag">
                <span class="faction-name">PLA</span>
            </button>
        </div>
    </section>

    <!-- 游戏主界面 -->
    <main id="game-interface" class="game-interface" style="display: none;">
        
        <div id="top-bar" class="top-bar">
            <div class="resource-info">
            </div>
            <div class="turn-info">
                <span>Round: <span id="current-turn">1</span></span>
                <span id="action-points-display">Action Points: -/-</span>
                <span>Faction: <span id="current-faction">-</span></span>
            </div>
            <div class="game-controls-top">
                <button id="pause-button" class="pixel-button top-button" aria-label="暂停">
                    ❚❚
                </button>
                 <button id="dev-mode-toggle" class="pixel-button top-button dev-button" style="font-size: 10px;">Dev</button>
            </div>
        </div>

        <!--包裹地图和侧边栏的容器 -->
        <div class="main-content-area">
            <div id="map-container" class="map-container">
            </div>

            <aside id="sidebar" class="sidebar">
                <div id="selected-unit-info">
                    Select a unit
                </div>
            </aside>
        </div>

        <div id="action-buttons-corner" class="action-buttons-corner">
            <img id="selected-unit-icon" src="images/placeholder.png" alt="选中单位" style="display: none;"> 
            <button id="move-button" class="pixel-button action-button" aria-label="移动单位">
            </button>
            <button id="attack-button" class="pixel-button action-button" aria-label="攻击敌人">
            </button>
            <button id="capture-button" class="pixel-button action-button" aria-label="占领地点">
            </button>
        </div>

        <div id="end-turn-button-corner" class="end-turn-button-corner">
            <button id="end-turn-button" class="pixel-button end-turn-button" aria-label="结束当前回合">
                <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" width="32px" height="32px">
                    <path d="M6 18l8.5-6L6 6v12zm2-8.14L11.03 12 8 14.14V9.86zM16 6h2v12h-2z"/>
                </svg>
            </button>
        </div>

    </main>

    <script src="script.js"></script>
</body>
</html> 
相关推荐
子兮曰2 小时前
OpenClaw架构揭秘:178k stars的个人AI助手如何用Gateway模式统一控制12+通讯频道
前端·javascript·github
百锦再3 小时前
Reactive编程入门:Project Reactor 深度指南
前端·javascript·python·react.js·django·前端框架·reactjs
百锦再3 小时前
React编程高级主题:测试代码
android·前端·javascript·react.js·前端框架·reactjs
颜酱4 小时前
图结构完全解析:从基础概念到遍历实现
javascript·后端·算法
失忆爆表症5 小时前
05_UI 组件库集成指南:Shadcn/ui + Tailwind CSS v4
前端·css·ui
小迷糊的学习记录5 小时前
Vuex 与 pinia
前端·javascript·vue.js
发现一只大呆瓜5 小时前
前端性能优化:图片懒加载的三种手写方案
前端·javascript·面试
不爱吃糖的程序媛5 小时前
Flutter 与 OpenHarmony 通信:Flutter Channel 使用指南
前端·javascript·flutter
利刃大大5 小时前
【Vue】Element-Plus快速入门 && Form && Card && Table && Tree && Dialog && Menu
前端·javascript·vue.js·element-plus
NEXT065 小时前
AI 应用工程化实战:使用 LangChain.js 编排 DeepSeek 复杂工作流
前端·javascript·langchain