Giter VIP home page Giter VIP logo

nice-lua's Introduction

NICE-Lua

中文文档

Road Map :

  • 资源管理修改为Addressables(完成)
  • UI框架支持MVVM (完成)
  • 渲染管线修改为URP(完成)
  • 网络模块采用lua-protobuf,添加断线重连,弱网络处理等(完成)
  • DOTS地图系统
  • 新手引导系统
  • 任务系统
  • 聊天系统
  • 红点系统
  • 更多功能更新

说明

如果要在android或ios中发布测试项目,请下载 https://github.com/Justin-sky/Nice-Build 并自行编译各平台库

运行环境

请在Unity2019.4以上环境运行

Clone服务器:https://github.com/Justin-sky/Nice-ET 代码到本地,VS安装.net core 3.0开发环境

Addressable配置说明文档

Flatbuffer使用说明文档

QQ群:346340389

nice-lua's People

Contributors

dreamcirno avatar justin-sky avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

nice-lua's Issues

macOS Error,xLua exception : Framework.Updater.Coroutine:100: Net.Util.PBUtil:14

Error Stack

xLua exception : Framework.Updater.Coroutine:100: Net.Util.PBUtil:14: attempt to call a nil value (field 'loadfile')
stack traceback:
	Net.Util.PBUtil:14: in local 'func'
	Common.TableUtil:126: in function 'table.walk'
	Net.Util.PBUtil:11: in method 'LoadPB'
	GameMain:10: in upvalue 'Initilize'
	GameMain:62: in local 'func'
	Framework.Updater.Coroutine:42: in function <Framework.Updater.Coroutine:39>
stack traceback:
	[C]: in function 'error'
	Framework.Logger.Logger:18: in field 'LogError'
	Framework.Updater.Coroutine:100: in upvalue '__PResume'
	Framework.Updater.Coroutine:115: in function 'coroutine.start'
	GameMain:61: in function 'GameMain.Start'
	[string "chunk"]:1: in main chunk
   at XLua.LuaEnv.ThrowExceptionFromError (System.Int32 oldTop) [0x00040] in /Users/wangzhumo/Workspace/UnitySpace/Nice-Lua-master/Assets/Scripts/XLua/Scripts/LuaEnv.cs:443 
  at XLua.LuaEnv.DoString (System.Byte[] chunk, System.String chunkName, XLua.LuaTable env) [0x00078] in /Users/wangzhumo/Workspace/UnitySpace/Nice-Lua-master/Assets/Scripts/XLua/Scripts/LuaEnv.cs:276 
  at XLua.LuaEnv.DoString (System.String chunk, System.String chunkName, XLua.LuaTable env) [0x0000d] in /Users/wangzhumo/Workspace/UnitySpace/Nice-Lua-master/Assets/Scripts/XLua/Scripts/LuaEnv.cs:290 
  at XLuaManager.SafeDoString (System.String scriptContent) [0x00010] in /Users/wangzhumo/Workspace/UnitySpace/Nice-Lua-master/Assets/Scripts/XLua/XLuaManager.cs:110 
UnityEngine.Debug:LogError (object)
Logger:LogError (string,object[]) (at Assets/Scripts/Common/Logger/Logger.cs:63)
XLuaManager:SafeDoString (string) (at Assets/Scripts/XLua/XLuaManager.cs:115)
XLuaManager:StartGame () (at Assets/Scripts/XLua/XLuaManager.cs:149)
AddressableUpdater/<StartGame>d__8:MoveNext () (at Assets/Scripts/GameLaunch/AddressableUpdater.cs:125)
UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr) (at /Users/bokken/buildslave/unity/build/Runtime/Export/Scripting/Coroutines.cs:17)

原因

local PBUtil = BaseClass("PBUtil", Singleton)

-- 加载所有PB
local function LoadPB(self)
    local pbFiles = {
        "Net/PB/OuterMessage.pb",
    }
    print(CS.GameUtility.GetPlatform())    -- print   OSXEditor
    --编辑器下和移动端,加载位置不同
    if(CS.GameUtility.GetPlatform() == "WindowsEditor" or CS.GameUtility.GetPlatform() == "OSXEditor") then
        table.walk(pbFiles,function(i,path)
            print(pb)     -- print   0x000
            print(pb.loadfile)   -- print  nil
            assert(pb.loadfile("Assets/LuaScripts/"..path))
            print(path.." pb load success")
        end)
    else
        table.walk(pbFiles,function(i,path)
            ResourcesManager:GetInstance():LoadAsync(path..".bytes", typeof(CS.UnityEngine.TextAsset), function(data)
                print(path.." pb load addr success")
                assert(pb.load(data.bytes))
            end)
        end)
    end

end

PBUtil.LoadPB = LoadPB
return PBUtil

print(pb.loadfile) -- print nil

解决方法:

更换xlua.bundle即可

https://github.com/chexiongsheng/build_xlua_with_libs

  • 下载 https://github.com/chexiongsheng/build_xlua_with_libs/releases/tag/v2.1.15 解压Plugins覆盖项目Plugins/XLua
  • 使用 build_xlua_with_libs/build/make_osx_lua54.sh ,编译出 xlua.bundle 替换项目中的 xlua.bundle

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.