zoukankan      html  css  js  c++  java
  • lua-1-c# 执行lua文件-调用lua文件中的方法

    using UnityEngine;
    using System.Collections;
    using LuaInterface;//引入lua接口

    public class MyHellowWorld : MonoBehaviour {

        //创建lua对象
        LuaState lua;
        //string str = "print('Hello Lanou')";     //第一种交互方式  直接写死
        public TextAsset luastr;    //luatxt文件  


        // void Start()
        // {
        //lua = new LuaState();    //实例化lua对象
        //lua.Start();//开启lua
        //lua.DoString(luastr.text);//读取luastr中的内容        
        //lua.CheckTop();//检查是否有代码未执行
        //lua.Dispose();//释放lua


        // }

        string url = "http://172.18.21.180/1.lua";//从服务器获取lua代码文件

        void Start()
        {
            StartCoroutine("LoadLuaScripts");

        }
        //携程
        IEnumerator LoadLuaScripts()
        {
            WWW www = new WWW(url);//加载给定地址的文件内容
            yield return www;//等待加载完毕
            string LuaContent = www.text;//加载的内容放入字符串中
            lua = new LuaState();
            lua.Start();
            //执行一段lua代码
            lua.DoString(LuaContent);
            //获取lua方法
            LuaFunction func = lua.GetFunction("perfect");
            //调用有参数的lua方法   这个方法还有返回值(可以返回多个)
           // func.Call("霍建华和哈哈哈哈哈哈");
           //下面四句相当于上面一句
            func.BeginPCall();
            func.Push("ms");
            func.PCall();
            func.EndPCall();

            //检查是否有代码未执行
            lua.CheckTop();
            //释放lua对象
            lua.Dispose();
        }
        // Update is called once per frame
        void Update()
        {

        }
    }

  • 相关阅读:
    美的觉醒
    jquery中ajax使用error调试错误的方法
    VC项目开发之单文档多视图实现-非分割窗口[转]
    MFC常见问题解惑[转]
    计算机视觉、机器学习相关领域论文和源代码大集合[转]
    C++成员变量、构造函数的初始化顺序 [转]
    VC中常用的宏[转]
    (VC)解决绘图时闪烁问题的一点经验[转]
    C++的辅助工具介绍 [转]
    [GUI]界面开发类库-Ribbon风格 [转]
  • 原文地址:https://www.cnblogs.com/ningyongbin/p/6009158.html
Copyright © 2011-2022 走看看