Ulua_toLua_基本案例(八)_LuaAccessingArray

using UnityEngine;
using LuaInterface;

public class AccessingArray : MonoBehaviour
{
    private string script =
        @"
            function TestArray(strs)
                local len = strs.Length

                for i = 0, len - 1 do
                    print(strs[i])
                end
                return 1, '123', true
            end
        ";

    void Start()
    {
        LuaState lua = new LuaState();
        lua.Start();
        lua.DoString(script);

        string[] strs = { "aaa", "bbb", "ccc" };
        LuaFunction func = lua.GetFunction("TestArray");

        func.BeginPCall();
        func.Push(strs);
        func.PCall();
        double arg1 = func.CheckNumber();
        string arg2 = func.CheckString();
        bool arg3 = func.CheckBoolean();
        Debugger.Log("return is {0} {1} {2}", arg1, arg2, arg3);
        func.EndPCall();

        //转换一下类型,避免可变參数拆成多个參数传递
        object[] objs = func.Call((object)strs);

        if (objs != null)
        {
            Debugger.Log("return is {0} {1} {2}", objs[0], objs[1], objs[2]);
        }

        lua.CheckTop();
        func.Dispose();
        lua.Dispose();
    }
}
时间: 2024-12-09 00:07:18

Ulua_toLua_基本案例(八)_LuaAccessingArray的相关文章

微信营销案例八 游戏式营销

案例八:1号店 游戏式营销 1号店在微信当中推出了“你画我猜”活动,将活动方式是,用户通过关注1号店的微信账号,每天1号店就会推送一张图片给订阅用户,然后,用户可以会发答案来参与到这个游戏当中来.如果猜中图片答案并且在所规定的名额范围内的就可以获得奖品. 其实“你画我猜”的概念是来自于火爆的App游戏Draw  Something,并非1号店自主研发,只是1号店首次把游戏的形式结合到微信活动推广中来. 微信营销案例八 游戏式营销,布布扣,bubuko.com

桥梁模式案例 八戒“转世投胎”的故事

本节从桥梁模式的观点出发,讨论<西游记>中天蓬元帅转世投胎成猪八戒的故事. 如果存在灵魂的话,应当是抽象化角色,而肉体则是实现化角色.肉体为灵魂的功能提供了实现,就像具体Java类为抽象Java类提供了实现一样. “转世投胎”系统的UML类图: 可以看出,“转世投胎”机制将尘世划分为两个等级结构:第一个等级结构是“灵魂”等级结构:第二个等级结构是“肉体”等级结构.前者相当于抽象化,后者相当于实现化.生灵通过功能的委派,调用肉体对象的功能,从而使生灵可以动态的选择自己的肉体. 在上面的UML类图

【每天学点Python】案例八:空气质量指数计算

V1.0功能:AQI计算 案例描述: 案例分析: 实现步骤: 实现每种污染物对应的AQI函数,一个输入参数,即Cp 实现线性缩放函数,5个输入参数 上机实验: 1 #!/usr/bin/env python 2 # -*- coding:utf-8 -*- 3 # author: Kevin.Wang 4 # time : 2018/10/16 5 6 7 """ 8 作者:王鑫正 9 版本:1.0 10 日期:2018/10/16 11 功能:AQI计算 12 "

Ulua_toLua_基本案例(六)_LuaCoroutine2

using UnityEngine; using System.Collections; using LuaInterface; public class TestCoroutine2 : MonoBehaviour { LuaState luaState = null; string script = @" function CoExample() WaitForSeconds(2) print('WaitForSeconds end time: '.. UnityEngine.Time.ti

案例八:shell自动化管理账本脚本

该脚本目的帮助管理员创建账号.删除账号.锁定账号.解锁账号. #!/bin/bash #filename: #author: #date:2018-6-6 echo "用户管理程序" echo "1.创建用户" echo "2.删除用户" echo "3.锁定用户" echo "4.解锁用户" echo "5.退出脚本" read -p "请输入您的操作选择(1-5):&quo

HTML前端--各种小案例

掬一捧清水,放逐在江河,融入流逝的岁月,将心洗净; 捻一缕心香,遥寄在云端,在最深的红尘里重逢,将心揉碎; 望一程山水,徘徊在月下,在相思渡口苦守寒冬,将心落寞. 案例一: 隐藏扩展域,并去掉after,并去掉高度 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> <sty

我的Android案例—签到日历

2015年的Android案例之旅 案例八:签到日历 知识点: GridView的使用 SQLite的使用 涉及文件: res->layout->activity_main.xml 主布局文件 res->layout->date.xml 布局文件 src->db->DBHelper.java java文件 src->db->SignDAO.java java文件 src->activity->MainActivity.java java文件 ac

我的Android案例签到日历

2015年的Android案例之旅 案例八:签到日历 知识点: GridView的使用SQLite的使用 涉及文件: res->layout->activity_main.xml 主布局文件res->layout->date.xml 布局文件src->db->DBHelper.java java文件src->db->SignDAO.java java文件src->activity->MainActivity.java java文件 activit

ETL工具之kittle使用案例整理

主花了一下午时间,收集全网,学习了下kittle,觉得该大v写的不错,特意整理给大家!学会这几个案例kittle基本就没问题了. 1.kettle案例一抽取gz格式文本内容保存到mongodb  https://blog.csdn.net/zzq900503/article/details/78658649 2.kettle案例二抽取mysql数据保存到mongodb https://blog.csdn.net/zzq900503/article/details/78678030 3.kettl