• 大小: 15.23MB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2023-08-05
  • 语言: Python
  • 标签: 开源  

资源简介

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个文件信息

评论

共有 条评论