python+html实现手机端触屏手柄控制电脑端三维赛车游戏代码

代码语言:python

所属分类:其他

代码描述:python+html实现手机端触屏手柄控制电脑端三维赛车游戏代码,电脑端浏览器运行显示游戏,手机扫码连接电脑控制赛车。

代码标签: python html 手机 触屏 手柄 控制 电脑 三维 赛车 游戏 代码

下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开

import sys
import socket
import qrcode
import io
import math
from flask import Flask, render_template_string, request
from flask_socketio import SocketIO, emit

# =================配置区域=================
PORT = 5000

# =================获取本机IP=================
def get_host_ip():
    try:
        s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
        s.connect(('8.8.8.8', 80))
        ip = s.getsockname()[0]
    except Exception:
        ip = '127.0.0.1'
    finally:
        s.close()
    return ip

HOST_IP = get_host_ip()
GAME_URL = f"http://{HOST_IP}:{PORT}"
CONTROLLER_URL = f"http://{HOST_IP}:{PORT}/ctl"

# =================Flask & SocketIO Setup=================
app = Flask(__name__)
app.config['SECRET_KEY'] = 'secret!'
socketio = SocketIO(app, cors_allowed_origins="*")

# =================PC端 3D游戏页面 (Three.js)=================
GAME_HTML = """
<!DOCTYPE html>
<html>
<head>
    <title>3D Mountain Racing - Flat Road Edition</title>
    <style>
        body { margin: 0; overflow: hidden; background: #87CEEB; font-family: 'Segoe UI', sans-serif; }
        #info { position: absolute; top: 10px; width: 100%; text-align: center; color: white; z-index: 100; pointer-events: none; text-shadow: 2px 2px 4px black; }
        #status { color: #00ff00; font-weight: bold; font-size: 1.2em; }
    </style>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/three.js/r128/three.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/socket.io/4.0.1/socket.io.js"></script>
</head>
<body>
    <div id="info">
        <h1>高山环道赛车 (贴地版)</h1>
        <p>请用手机扫描控制台显示的二维码</p>
        <p>状态: <span id="status">等待连接...</span></p>
    </div>
    
    <script>
        // --- 通信部分 (保持不变) ---
        const socket = io();
        const statusEl = document.getElementById('status');
        
        const controls = {
            forward: false,
            backward: false,.........完整代码请登录后点击上方下载按钮下载查看

网友评论0