three实现三维月球基地射击陨石攻击游戏代码
代码语言:html
所属分类:游戏
代码描述:three实现三维月球基地射击陨石攻击游戏代码
代码标签: three 三维 月球 基地 射击 陨石 攻击 游戏 代码
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>月面防卫战 · 第一人称</title>
<style>
*{margin:0;padding:0;box-sizing:border-box}
html,body{width:100%;height:100%;overflow:hidden;background:#000;
font-family:"Segoe UI","Microsoft YaHei",sans-serif;user-select:none}
canvas{display:block}
body.playing{cursor:none}
#hud{position:fixed;top:0;left:0;width:100%;padding:14px 18px;display:flex;
justify-content:space-between;align-items:flex-start;pointer-events:none;z-index:10}
.panel{background:rgba(8,18,32,.55);border:1px solid rgba(110,190,255,.35);
border-radius:10px;padding:10px 16px;color:#cfe9ff;backdrop-filter:blur(6px);
box-shadow:inset 0 0 18px rgba(60,140,255,.12)}
.stat{display:flex;gap:10px;align-items:baseline;font-size:14px;line-height:1.7}
.lbl{color:#7fb6e0;letter-spacing:2px}
.val{font-weight:bold;font-size:17px;color:#eaffff;min-width:44px;text-align:right;
font-variant-numeric:tabular-nums}
#hpPanel{width:330px;text-align:center}
#hpPanel .lbl{font-size:13px;letter-spacing:4px}
#hpwrap{margin-top:6px;height:14px;border-radius:7px;background:rgba(255,255,255,.08);
border:1px solid rgba(120,200,255,.3);overflow:hidden}
#hpbar{height:100%;width:100%;border-radius:7px;transition:width .25s;
background:linear-gradient(90deg,#39d98a,#7dffbf)}
#hptext{font-size:12px;color:#9fd8ff;margin-top:4px}
#muteBtn{pointer-events:auto;margin-top:8px;background:rgba(20,40,66,.7);
border:1px solid rgba(120,200,255,.4);color:#cfe9ff;border-radius:8px;
padding:4px 12px;font-size:16px;cursor:pointer}
#muteBtn:hover{background:rgba(50,90,140,.7)}
#cross{position:fixed;left:50%;top:50%;width:46px;height:46px;margin:-23px 0 0 -23px;
z-index:15;pointer-events:none;display:none;transition:transform .08s}
body.playing #cross{display:block}
#cross .cDot{position:absolute;left:50%;top:50%;width:4px;height:4px;margin:-2px 0 0 -2px;
background:#7dffdc;border-radius:50%;transition:transform .1s}
.cLine{position:absolute;background:#7dffdc;box-shadow:0 0 6px #7dffdc}
.cT{left:50%;top:0;width:2px;height:9px;margin-left:-1px}
.cB{left:50%;bottom:0;width:2px;height:9px;margin-left:-1px}
.cL{top:50%;left:0;height:2px;width:9px;margin-top:-1px}
.cR{top:50%;right:0;height:2px;width:9px;margin-top:-1px}
#cross.lock .cLine,#cross.lock .cDot{background:#ff6a5e;box-shadow:0 0 9px #ff3b2c}
#cross.hit .cDot{transform:scale(3)}
.ind{position:fixed;z-index:14;pointer-events:none;text-align:center}
.indA{position:absolute;left:0;top:0;width:0;height:0;
border-left:9px solid transparent;border-right:9px solid transparent;
border-bottom:16px solid #ff5544;filter:drop-shadow(0 0 6px #ff2211)}
.indD{position:absolute;left:0;top:12px;transform:translateX(-50%);color:#ff9d94;
font-size:11px;letter-spacing:1px;text-shadow:0 0 6px #000;white-space:nowrap}
#banner{position:fixed;top:22%;left:50%;transform:translateX(-50%);text-align:center;
opacity:0;transition:opacity .4s;pointer-events:none;z-index:25}
#banner.show{opacity:1}
#bannerMain{font-size:36px;letter-spacing:10px;color:#cfe9ff;
text-shadow:0 0 22px #4aa3ff,0 0 60px #2a6cff}
#bannerSub{margin-top:8px;font-size:15px;letter-spacing:3px;color:#8fd0ff}
#dmg{position:fixed;inset:0;pointer-events:none;opacity:0;z-index:12;
background:radial-gradient(ellipse at center,rgba(255,0,0,0) 52%,rgba(255,30,20,.55) 100%)}
#dmg.hit{animation:dmgAnim .5s ease-out}
@keyframes dmgAnim{0%{opacity:1}100%{opacity:0}}
#vignette{position:fixed;inset:0;pointer-events:none;z-index:5;
background:radial-gradient(ellipse at center,transparent 62%,rgba(0,0,12,.5))}
.popup{position:fixed;transform:translate(-50%,-50%);color:#ffd27f;font-weight:bold;
font-size:18px;text-shadow:0 0 10px #ff9a3c;pointer-events:none;z-index:30;
animation:pop .9s ease-out forwards}
@keyframes pop{from{opacity:1;margin-top:0}to{opacity:0;margin-top:-46px}}
#hint{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);font-size:13px;
letter-spacing:2px;color:#8fd0ff;background:rgba(8,18,32,.55);
border:1px solid rgba(110,190,255,.3);border-radius:8px;padding:6px 16px;
z-index:11;pointer-events:none;display:none}
#pauseTag{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);
font-size:30px;letter-spacing:8px;color:#cfe9ff;text-shadow:0 0 20px #4aa3ff;
display:none;z-index:35;pointer-events:none}
.overlay{position:fixed;inset:0;display:flex;flex-direction:column;align-items:center;
justify-content:center;background:rgba(2,6,14,.66);backdrop-filter:blur(7px);
z-index:40;text-align:center;color:#dfeeff}
.title{font-size:54px;letter-spacing:16px;font-weight:bold;
background:linear-gradient(180deg,#ffffff,#79c6ff);-webkit-background-clip:text;
background-clip:text;color:transparent}
.subtitle{margin-top:6px;font-size:14px;letter-spacing:12px;color:#6fa8d8}
.tips{margin-top:28px;font-size:15px;line-height:2.1;color:#b8d8f2}
.btn{margin-top:28px;padding:14px 48px;font-size:20px;letter-spacing:8px;
color:#03101c;background:linear-gradient(135deg,#67e8ff,#3aa0ff);border:none;
border-radius:10px;cursor:pointer;box-shadow:0 0 26px rgba(80,180,255,.55);
transition:transform .15s}
.btn:hover{transform:scale(1.06)}
.hint{margin-top:16px;font-size:12px;color:#5f88ad;letter-spacing:2px}
#overTitle{font-size:50px;letter-spacing:14px;color:#ff6a5e;
text-shadow:0 0 30px rgba(255,80,60,.7)}
#finalScore{margin-top:22px;font-s.........完整代码请登录后点击上方下载按钮下载查看















网友评论0