zoukankan      html  css  js  c++  java
  • tolua调用C#中的静态类

    一、创建unity中引用lua虚拟机接口的库

    using UnityEngine;
    using System.Collections;
    using LuaInterface;
    using WCALibs;
    
    public class LUA_Test : MonoBehaviour
    {
    //声明lua对象,以及lua函数对象
        private LuaState lua = null;
        private LuaFunction luaFunc = null;
        void Start()
        {
            lua = new LuaState();
            lua.Start();
            string fullPath = Application.dataPath + "\Lua";
            lua.AddSearchPath(fullPath);
            LuaBinder.Bind(lua);
        }
    
        void Update()
        {
            if (Input.GetKeyDown(KeyCode.Alpha1))
            {
                lua.DoFile("Funclua.lua");
                luaFunc = lua.GetFunction("testFunc");
                if (luaFunc != null)
                {
                    luaFunc.Call();
                }
            }
        }
        void OnApplicationQuit()
        {
            lua.Dispose();
            lua = null;
        }
    }

    2//创建静态函数

    using System;
    using UnityEngine;
    using System.Collections.Generic;
    
    public class LuaSDK
    {
        public static void Test()
        {
            Debug.Log("测试静态方法");
        }
    
        public static void Test1()
        {
            Debug.Log("测试静态方法1"); 
        }
    
        public static void Test2()
        {
            Debug.Log("测试静态方法2");
        }
    }

    3、写lua脚本

    --创建lua脚本Funclua.lua
    function testFunc()
         print("Hello World")
         LuaSDK.test()
    end

    切记每次写完新的代码,tolua都需要生成代码,在编辑器模式下

  • 相关阅读:
    Deployment.yaml文件
    Python 闭包
    github使用方法(一)
    7.Python 正则表达式学习笔记
    kindle网络爬虫续集
    windows下如何快速搭建web.py开发框架
    Python强大的自省简析
    11--Python 备份文件程序
    10- python 网络爬虫分析
    Python基础学习7---异常处理
  • 原文地址:https://www.cnblogs.com/unity3d-Yang/p/6410141.html
Copyright © 2011-2022 走看看