资源简介
Vivecraft_110, 用于Minecraft的VR mod 版本 1.10. X 用于 Minecraft 1.10.2的 Vivecraft本自述文件适用于开发人员。 下载和游戏指令请参见官方网站。使用这里存储库Vivecraft使用补丁来避免分发Minecraft代码。 构建脚本在 python 2. X. 中
代码片段和文件信息
import os os.path sys tempfile re
import shutil fnmatch
import subprocess shlex
from optparse import OptionParser
from minecriftversion import mc_version minecrift_version_num minecrift_build of_file_extension of_file_md5 mcp_version
base_dir = os.path.dirname(os.path.abspath(__file__))
#Helpers taken from forge mod loader https://github.com/MinecraftForge/FML/blob/master/install/fml.py
def cmdsplit(args):
if os.sep == ‘\\‘:
args = args.replace(‘\\‘ ‘\\\\‘)
return shlex.split(args)
crlf = re.compile(r“\n(?def apply_patch( mcp_dir patch_file target_dir ):
if os.name == ‘nt‘:
with tempfile.NamedTemporaryFile(delete=False) as temp_file:
with open(patch_file‘rb‘) as patch:
temp_file.write( crlf.sub(“\r\n“ patch.read() ))
patch_file = temp_file.name
applydiff = os.path.abspath(os.path.join(mcp_dir ‘runtime‘ ‘bin‘ ‘applydiff.exe‘))
cmd = cmdsplit(‘“%s“ -N -uf -p1 -i “%s“‘ % (applydiff patch_file ))
else:
with tempfile.NamedTemporaryFile(delete=False) as temp_file:
with open(patch_file‘rb‘) as patch:
temp_file.write( patch.read())
patch_file = temp_file.name
cmd = cmdsplit(‘patch -N -p1 -i “%s“ ‘ % patch_file )
process = subprocess.Popen(cmd cwd=target_dir bufsize=-1)
process.communicate()
os.unlink(patch_file)
def apply_patches(mcp_dir patch_dir target_dir find=None rep=None):
for path _ filelist in os.walk(patch_dir followlinks=True):
for cur_file in fnmatch.filter(filelist ‘*.patch‘):
patch_file = os.path.normpath(os.path.join(patch_dir path[len(patch_dir)+1:] cur_file))
apply_patch( mcp_dir patch_file target_dir )
def merge_tree(root_src_dir root_dst_dir):
for src_dir dirs files in os.walk(root_src_dir):
dst_dir = src_dir.replace(root_src_dir root_dst_dir)
if not os.path.exists(dst_dir):
os.mkdir(dst_dir)
for file_ in files:
src_file = os.path.join(src_dir file_)
dst_file = os.path.join(dst_dir file_)
print(“Copying file %s“ % src_file.replace(root_src_dir+“/“““) )
if os.path.exists(dst_file):
os.remove(dst_file)
shutil.copy(src_file dst_dir)
def applychanges(mcp_dir patch_dir = “patches“ applyPatches=True backup = True copyOriginal=True origDir=‘.minecraft_orig‘ mergeInNew=True ):
print(“Applying Changes...“)
mod_src_dir = os.path.join(mcp_dir “src““minecraft“)
mod_bak_dir = os.path.join(mcp_dir “src““minecraft-bak“)
org_src_dir = os.path.join(mcp_dir “src“origDir)
if backup and os.path.exists(mod_src_dir):
print(“Backing up src/minecraft to src/minecraft-bak“)
shutil.rmtree( mod_bak_dir True )
shutil.move( mod_src_dir mod_bak_dir )
if copyOriginal:
shutil.copytree( org_src_dir mod_src_dir ignore=lamb
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2018-03-21 23:34 Vivecraft_110-master\
文件 541 2018-03-21 23:34 Vivecraft_110-master\.gitattributes
文件 303 2018-03-21 23:34 Vivecraft_110-master\.gitignore
文件 380 2018-03-21 23:34 Vivecraft_110-master\.gitmodules
文件 41 2018-03-21 23:34 Vivecraft_110-master\.public_rev
文件 5485 2018-03-21 23:34 Vivecraft_110-master\CHANGES.md
文件 17 2018-03-21 23:34 Vivecraft_110-master\CNAME
文件 11583 2018-03-21 23:34 Vivecraft_110-master\LICENSE.md
文件 55 2018-03-21 23:34 Vivecraft_110-master\Makefile
文件 4648 2018-03-21 23:34 Vivecraft_110-master\README.md
文件 93 2018-03-21 23:34 Vivecraft_110-master\applychanges.bat
文件 3944 2018-03-21 23:34 Vivecraft_110-master\applychanges.py
文件 39 2018-03-21 23:34 Vivecraft_110-master\applychanges.sh
目录 0 2018-03-21 23:34 Vivecraft_110-master\assets\
目录 0 2018-03-21 23:34 Vivecraft_110-master\assets\vivecraft\
目录 0 2018-03-21 23:34 Vivecraft_110-master\assets\vivecraft\shaders\
文件 1560 2018-03-21 23:34 Vivecraft_110-master\assets\vivecraft\shaders\fovreduction.fsh
文件 1519 2018-03-21 23:34 Vivecraft_110-master\assets\vivecraft\shaders\lanczos.fsh
文件 1398 2018-03-21 23:34 Vivecraft_110-master\assets\vivecraft\shaders\lanczos.vsh
文件 1601 2018-03-21 23:34 Vivecraft_110-master\assets\vivecraft\shaders\mixedreality.fsh
文件 120 2018-03-21 23:34 Vivecraft_110-master\assets\vivecraft\shaders\passthru.vsh
目录 0 2018-03-21 23:34 Vivecraft_110-master\assets\vivecraft\textures\
文件 228 2018-03-21 23:34 Vivecraft_110-master\assets\vivecraft\textures\black_hmd.png
文件 233 2018-03-21 23:34 Vivecraft_110-master\assets\vivecraft\textures\diamond_hmd.png
文件 219 2018-03-21 23:34 Vivecraft_110-master\assets\vivecraft\textures\gold_hmd.png
目录 0 2018-03-21 23:34 Vivecraft_110-master\bin\
文件 150528 2018-03-21 23:34 Vivecraft_110-master\bin\diff.exe
文件 898048 2018-03-21 23:34 Vivecraft_110-master\bin\libiconv2.dll
文件 92672 2018-03-21 23:34 Vivecraft_110-master\bin\libintl3.dll
文件 104 2018-03-21 23:34 Vivecraft_110-master\build.bat
文件 70748 2018-03-21 23:34 Vivecraft_110-master\build.log
............此处省略1163个文件信息
相关资源
- Python-Intel开源增强学习框架Coach
- facebook开源项目prophet python模块fbprop
- 数据之魅中文版:基于开源工具的数
- Python-PermaNote是基于Sandstorm开源的个人
- 基于MongoDB的日志系统Mongodb-Log.zip
- Python-爬取各种开源软件的官方仓库历
- MySQL客户端库PyMySQL.zip
- bilibili_danmu B 站直播弹幕姬 Python 版
- misvm 多支持向量机.zip
- python-bitcoin-blockchain-parser 一个 python
- bayespy 贝叶斯 python.zip
- HFO 在 Robocup 2D 足球游戏中,半场进攻
- YouMoney有钱记账一个python写的开源的个
- paillier 纯 python Paillier同态密码.zip
- fancyimpute 在 python 中,实现了多元插值
- Python WxPython开源扫雷游戏PyMine新版1
- 基于Python的三维重建开源代码
- Websocket客户端Websocket-Client.zip
- proxy.py 在 python 中,轻量级的HTTP代理
- Python-Meshroom一个基于AliceVision框架的免
- Python项目 | 「Park at ease」停车场管理
- 开源的python地图
评论
共有 条评论