feat: multiplayer, voice chat, minimap, crafting, day/night, nginx cache-control
This commit is contained in:
parent
b37727ae66
commit
0ed7d9966d
|
|
@ -1,11 +1,9 @@
|
|||
FROM nginx:alpine
|
||||
|
||||
# Копируем файлы игры в директорию nginx
|
||||
COPY nginx.conf /etc/nginx/conf.d/default.conf
|
||||
COPY index.html /usr/share/nginx/html/index.html
|
||||
COPY style.css /usr/share/nginx/html/style.css
|
||||
COPY game.js /usr/share/nginx/html/game.js
|
||||
|
||||
# Используем конфигурацию nginx по умолчанию
|
||||
EXPOSE 80
|
||||
|
||||
CMD ["nginx", "-g", "daemon off;"]
|
||||
|
|
|
|||
21
index.html
21
index.html
|
|
@ -6,7 +6,7 @@
|
|||
<title>GrechkaCraft: Multiplayer</title>
|
||||
<!-- Socket.io Client -->
|
||||
<script src="https://cdn.socket.io/4.7.4/socket.io.min.js"></script>
|
||||
<link rel="stylesheet" href="style.css">
|
||||
<link rel="stylesheet" href="style.css?v=4">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
|
|
@ -23,16 +23,31 @@
|
|||
<div class="row" id="multiplayerStatus" style="display:none;">👥 <span id="playerCount">0</span></div>
|
||||
</div>
|
||||
|
||||
<div id="modeBtn" class="rbtn pe">🏃</div>
|
||||
<div id="modeBtn" class="rbtn pe">⛏️</div>
|
||||
<div id="saveBtn" class="rbtn pe">💾</div>
|
||||
<div id="craftBtn" class="rbtn pe">🔨</div>
|
||||
<div id="resetBtn" class="rbtn pe">🔄</div>
|
||||
|
||||
<div id="chatToggle" class="rbtn pe">💬</div>
|
||||
<div id="invToggle" class="rbtn pe">📦</div>
|
||||
<div id="mapToggle" class="rbtn pe">🗺️</div>
|
||||
<div id="hotbar" class="pe"></div>
|
||||
</div>
|
||||
|
||||
<!-- Миникарта -->
|
||||
<div id="minimapWrap" style="display:none;position:absolute;left:10px;top:120px;z-index:200;pointer-events:auto;">
|
||||
<canvas id="minimap" width="200" height="120" style="border:2px solid rgba(255,255,255,0.7);border-radius:8px;background:rgba(0,0,0,0.8);"></canvas>
|
||||
</div>
|
||||
|
||||
<!-- Печь -->
|
||||
<div id="furnacePanel" class="panel" style="display:none;">
|
||||
<div class="panel-header">
|
||||
<span>🔥 Печь</span>
|
||||
<span id="furnaceClose" class="close" style="cursor:pointer;">✕</span>
|
||||
</div>
|
||||
<div id="furnaceContent" style="padding:8px;"></div>
|
||||
</div>
|
||||
|
||||
<div id="controls">
|
||||
<div id="left" class="btn pe">⬅️</div>
|
||||
<div id="jump" class="btn pe">⬆️</div>
|
||||
|
|
@ -77,6 +92,6 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<script src="game.js"></script>
|
||||
<script src="game.js?v=6"></script>
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
|||
|
|
@ -0,0 +1,15 @@
|
|||
server {
|
||||
listen 80;
|
||||
root /usr/share/nginx/html;
|
||||
index index.html;
|
||||
|
||||
location ~* \.(js|css)$ {
|
||||
add_header Cache-Control "no-cache, no-store, must-revalidate";
|
||||
add_header Pragma "no-cache";
|
||||
expires 0;
|
||||
}
|
||||
|
||||
location / {
|
||||
try_files $uri $uri/ /index.html;
|
||||
}
|
||||
}
|
||||
|
|
@ -38,6 +38,7 @@ canvas { display:block; width:100%; height:100%; image-rendering:pixelated; }
|
|||
#modeBtn { top:10px; background:#f39c12; }
|
||||
#saveBtn { top:10px; right:70px !important; background:#27ae60; }
|
||||
#resetBtn { top:10px; right:130px !important; background:#e74c3c; }
|
||||
#mapToggle { top:10px; right:190px !important; background:#1abc9c; }
|
||||
#craftBtn { top:74px; right:10px !important; background:#9b59b6; }
|
||||
#invToggle { top:74px; right:70px !important; background:#3498db; }
|
||||
#chatToggle { display: none !important; }
|
||||
|
|
|
|||
Loading…
Reference in New Issue