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">
<title>净海行动 · 海警571舰 高压水炮拦截演练</title>
<link rel="preconnect" href="https://fonts.googleapis.com">
<link href="https://fonts.googleapis.com/css2?family=Noto+Sans+SC:wght@400;500;700;900&family=ZCOOL+QingKe+HuangYou&display=swap" rel="stylesheet">
<style>
:root{
  --cy:#45e6ff; --am:#ffb54d; --rd:#ff5d5d; --ink:#dff4f7;
  --panel:rgba(5,20,28,.80); --line:rgba(69,230,255,.32);
  --disp:'ZCOOL QingKe HuangYou','Noto Sans SC',sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html,body{width:100%;height:100%;overflow:hidden;background:#04141d;
  font-family:'Noto Sans SC',sans-serif;color:var(--ink);user-select:none;-webkit-user-select:none}
#app{position:fixed;inset:0;z-index:0}
body.playing #app,body.paused #app{cursor:none}
body::after{content:'';position:fixed;inset:0;z-index:60;pointer-events:none;
  background:repeating-linear-gradient(0deg,rgba(0,0,0,.05) 0 1px,transparent 1px 3px);opacity:.5}
#vig{position:fixed;inset:0;z-index:5;pointer-events:none;
  box-shadow:inset 0 0 180px 60px rgba(2,10,16,.55)}
.panel{position:absolute;background:var(--panel);border:1px solid var(--line);
  clip-path:polygon(0 0,calc(100% - 14px) 0,100% 14px,100% 100%,14px 100%,0 calc(100% - 14px));
  padding:10px 16px;backdrop-filter:blur(3px);pointer-events:none}
.lab{font-size:11px;letter-spacing:.35em;color:rgba(160,220,235,.75);margin-bottom:2px}
.lab.c{text-align:center}
b,strong{font-weight:900}
#hud{position:fixed;inset:0;z-index:10;pointer-events:none;display:none}
body.playing #hud,body.paused #hud{display:block}
.p-score{top:18px;left:18px;min-width:220px}
.p-score .big{font-family:var(--disp);font-size:44px;line-height:1;color:var(--cy);
  text-shadow:0 0 18px rgba(69,230,255,.5)}
.p-score .row{display:flex;gap:14px;align-items:baseline;margin-top:6px;font-size:13px}
.p-score .row b{font-family:var(--disp);font-size:20px;color:var(--ink)}
.lab2{font-size:11px;letter-spacing:.2em;color:rgba(160,220,235,.6)}
.status{display:flex;align-items:center;gap:6px;margin-top:8px;font-size:11px;letter-spacing:.25em;color:var(--am)}
.dot{width:8px;height:8px;background:var(--am);border-radius:50%;animation:blink 1.1s infinite}
@keyframes blink{50%{opacity:.15}}
.combo{margin-top:6px;font-family:var(--disp);font-size:22px;color:var(--am);
  text-shadow:0 0 14px rgba(255,181,77,.6);display:none}
.combo.on{display:block}
.combo.pop{animation:pop .3s}
@keyframes pop{0%{transform:scale(1.6)}100%{transform:scale(1)}}
.p-hp{top:158px;left:18px}
#hpRow{display:flex;gap:6px;margin-top:4px}
.hp{width:26px;height:12px;background:var(--cy);box-shadow:0 0 10px rgba(69,230,255,.55);
  clip-path:polygon(0 0,100% 0,calc(100% - 5px) 100%,5px 100%);transition:.25s}
.hp.off{background:rgba(255,93,93,.18);box-shadow:none}
.p-radar{top:18px;right:18px;padding:10px 12px 8px}
#radar{display:block;background:radial-gradient(circle,#06281c 0%,#03150e 78%);
  border:1px solid rgba(80,255,170,.25);border-radius:50%}
.sea{font-size:10px;letter-spacing:.18em;color:rgba(120,235,180,.65);text-align:center;margin-top:5px}
.p-heat{left:18px;bottom:20px;width:280px}
.heatbar{height:14px;margin-top:6px;background:rgba(69,230,255,.08);border:1px solid var(--line);
  clip-path:polygon(0 0,calc(100% - 8px) 0,100% 100%,0 100%)}
#heatFill{height:100%;width:0%;background:linear-gradient(90deg,#2fb7d8,var(--am));transition:width .1s linear}
.p-heat.hot #heatFill{background:linear-gradient(90deg,#ff8a4d,var(--rd));animation:blink .4s infinite}
.ht{margin-top:5px;font-size:11px;letter-spacing:.3em;color:rgba(160,220,235,.7)}
.p-heat.hot .ht{color:var(--rd);font-weight:900}
.p-keys{right:18px;bottom:20px;font-size:12px;letter-spacing:.08em;color:rgba(190,230,240,.8)}
.p-keys kbd{background:rgba(69,230,255,.12);border:1px solid var(--line);padding:1px 7px;margin:0 3px;
  font-family:inherit;font-size:11px;clip-path:polygon(4px 0,100% 0,calc(100% - 4px) 100%,0 100%)}
#bannerWrap{position:fixed;top:16%;left:0;right:0;text-align:center;z-index:15;pointer-events:none;opacity:0}
#bannerWrap.show{animation:ban 2.6s ease forwards}
@keyframes ban{0%{opacity:0;letter-spacing:2em;transform:scale(1.15)}
 12%{opacity:1;letter-spacing:.6em;transform:scale(1)}80%{opacity:1}100%{opacity:0}}
#bMain{font-family:var(--disp);font-size:64px;color:var(--am);
  text-shadow:0 0 30px rgba(255,181,77,.55),0 3px 0 rgba(0,0,0,.4)}
#bSub{font-size:15px;letter-spacing:.6em;color:var(--cy);margin-top:6px}
#alerts{position:fixed;top:9%;left:50%;transform:translateX(-50%);z-index:20;
  display:flex;flex-direction:column;gap:8px;align-items:center;pointer-events:none}
.alert{padding:7px 26px;font-size:14px;font-weight:700;letter-spacing:.2em;background:var(--panel);
  border:1px solid var(--line);border-left:4px solid var(--cy);animation:aIn .3s ease,aOut .4s ease 2.2s forwards;
  clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,0 100%)}
.alert.bad{border-left-color:var(--rd);color:#ffb9b9}
.alert.good{border-left-color:#5dfa9a;color:#c9ffe0}
@keyframes aIn{from{opacity:0;transform:translateY(-14px)}to{opacity:1}}
@keyframes aOut{to{opacity:0;transform:translateY(-8px)}}
#floats{position:fixed;inset:0;z-index:14;pointer-events:none;overflow:hidden}
.ft{position:absolute;font-family:var(--disp);font-size:26px;color:var(--am);white-space:nowrap;
  text-shadow:0 0 12px rgba(2.........完整代码请登录后点击上方下载按钮下载查看

网友评论0