当前位置: 首页 > news >正文

使用XLua在Unity中获取lua全局变量和函数

1、Lua脚本 

入口脚本

print("OK")
--也会执行重定向
require("Test")

测试脚本

print("TestScript")
testNum = 1
testBool = true
testFloat = 1.2
testStr = "123"function testFun()print("无参无返回")
endfunction testFun2(a)print("有参有返回")return a
end

2、C#脚本

(1)获取全局变量

public class L4 : MonoBehaviour
{// Start is called before the first frame updatevoid Start(){//自己编写的Lua管理器//初始化管理器LuaMgr.GetInstance().Init();//执行Main脚本(调用了Test脚本)LuaMgr.GetInstance().DoLuaFile("Main");//得到全局变量(只是复制到C#,改不了)int i = LuaMgr.GetInstance().Global.Get<int>("testNum");print(i);//修改全局变量LuaMgr.GetInstance().Global.Set("testNum", 2);i = LuaMgr.GetInstance().Global.Get<int>("testNum");print(i);}
}

执行结果

(2)获取全局函数

using XLua;
public class L5 : MonoBehaviour
{// Start is called before the first frame updatevoid Start(){LuaMgr.GetInstance().Init();LuaMgr.GetInstance().DoLuaFile("Main");#region 无参无返回//第一种方法 通过 GetFunction方法获取(需要引用命名空间)LuaFunction function = LuaMgr.GetInstance().Global.Get<LuaFunction>("testFun");//调用 无参无返回function.Call();//执行完过后 function.Dispose();#endregion#region 有参有返回//第一种方式 通过luafunction 的 call来访问LuaFunction function2 = LuaMgr.GetInstance().Global.Get<LuaFunction>("testFun2");Debug.Log("有参有返回值 Call:" + function2.Call(10)[0]);#endregion}
}

相关文章:

使用XLua在Unity中获取lua全局变量和函数

1、Lua脚本 入口脚本 print("OK") --也会执行重定向 require("Test") 测试脚本 print("TestScript") testNum 1 testBool true testFloat 1.2 testStr "123"function testFun()print("无参无返回") endfunction te…...

springboot项目集成kafka,并创建kafka生成消息线程池

效果图: 步骤1:添加依赖 <!-- kafka依赖 --><dependency><groupId>org.apache.kafka</groupId><<...

PreScan与MATLAB联合仿真报错

一、 问题&#xff1a; Error:Matlab ||和&&运算符的操作数必须能够转换为逻辑标量值 二、解决办法 必须安装VS2013&#xff08;我装的VS2017不行的&#xff09;&#xff0c;然后重启prescan和MATLAB&#xff0c;编译通过&#xff0c;界面如下&#xff1a; 三、VS…...

ros学习笔记(1)Mac本地安装虚拟机,安装Ros2环境

Ros与Linux的关系 Ros环境基于Linux系统内核 我们平时用的是Linux发行版&#xff0c;centos&#xff0c;ubuntu等等&#xff0c;机器人就用了ubunut 有时候我们经常会听到ubunue的版本&#xff0c;众多版本中&#xff0c;有一些是长期维护版TLS&#xff0c;有一些是短期维护…...

史上最强,Jmeter性能测试-性能场景设计实例(详全)

目录&#xff1a;导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09; 前言 1、性能测试需求 …...

【vim 学习系列文章 7-- vim vnormap nnoremap nmap map inoremap 区别】

文章目录 1.1 vim 递归映射和非递归映射1.1.1 vim 可视模式 1.2 map nmap vnormap nnoremap inoremap 区别 1.1 vim 递归映射和非递归映射 递归映射和非递归映射是 Vim 中两种不同的键盘映射方式。 递归映射&#xff08;recursive map&#xff09;是指在定义键盘映射时&#x…...

[ERROR] COLLATION ‘utf8_unicode_ci‘ is not valid for CHARACTER SET ‘latin1‘

[ERROR] COLLATION utf8_unicode_ci is not valid for CHARACTER SET latin1错误来源是&#xff1a; 跟着b站的谷粒商城项目做&#xff0c;前面的视频中设置了数据库的字符集编码&#xff0c;但是后面自己发现了MySQL容器重启报错&#xff0c;不停的在重启 查看log信息可以使用…...

基于rancher安装部署k8s

基础配置 systemctl stop firewalld && systemctl disable firewalld setenforce 0 sed -i s/SELINUXenforcing/SELINUXdisabled/ /etc/selinux/configvi /etc/hosts ip1 node1 ip2 node2 ip3 node3#免密登录 ssh-keygenssh-copy-id -i ~/.ssh/id_rsa.pub 普通用户ip1…...

保姆级微服务部署教程

大家好&#xff0c;我是鱼皮。 项目上线是每位学编程同学必须掌握的基本技能。之前我已经给大家分享过很多种上线单体项目的方法了&#xff0c;今天再出一期微服务项目的部署教程&#xff0c;用一种最简单的方法&#xff0c;带大家轻松部署微服务项目。 开始之前&#xff0c;…...

springboot 定时任务

springboot 定时任务 在Spring Boot中&#xff0c;你可以使用Spring的Scheduled注解来创建定时任务。以下是一个简单的示例&#xff1a; 首先&#xff0c;你需要在Spring Boot的主类上添加EnableScheduling注解以启用定时任务功能。 import org.springframework.boot.Spring…...

【大数据】HBase入门指南

原创不易&#xff0c;注重版权。转载请注明原作者和原文链接 文章目录 HBase特性Hadoop的限制基本概念NameSpaceTableRowKeyColumnTimeStampCell 存储结构HBase 数据访问形式架构体系HBase组件HBase读写流程读流程写流程 MemStore Flush参数说明 StoreFile Compaction参数说明触…...

零售数据分析模板鉴赏-品类销售结构报表

不管是服装零售&#xff0c;还是连锁超市或者其他&#xff0c;只要是零售行业就绕不过商品数据分析&#xff0c;那么商品数据分析该怎么做&#xff1f;奥威BI的零售数据分析方案早早就预设好相关报表模板&#xff0c;点击应用后&#xff0c;一键替换数据源&#xff0c;立得新报…...

竞赛 深度学习 机器视觉 车位识别车道线检测 - python opencv

0 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 &#x1f6a9; 深度学习 机器视觉 车位识别车道线检测 该项目较为新颖&#xff0c;适合作为竞赛课题方向&#xff0c;学长非常推荐&#xff01; &#x1f947;学长这里给一个题目综合评分(每项满分5分) …...

MySQL中使用函数会使索引失效?

文章目录 1、前置准备2、ChatGPT的答案3、实践证明SQL1SQL2SQL3SQL4SQL5 4、总结 1、前置准备 首先创建我们要测试的库表 CREATE TABLE lianhe_index (id int(11) NOT NULL AUTO_INCREMENT COMMENT id,name varchar(255) DEFAULT NULL,age int(11) DEFAULT NULL,number int(1…...

金和OA C6任意文件读取漏洞 复现[附POC]

文章目录 金和OA C6任意文件读取漏洞 复现[附POC]0x01 前言0x02 漏洞描述0x03 影响版本0x04 漏洞环境0x05 漏洞复现1.访问漏洞环境2.构造POC3.复现 0x06 修复建议 金和OA C6任意文件读取漏洞 复现[附POC] 0x01 前言 免责声明&#xff1a;请勿利用文章内的相关技术从事非法测试…...

IP地址技术原理

IP地址是互联网中的关键元素&#xff0c;它允许数据在全球范围内进行路由和传输。本文将深入探讨IP地址的技术原理&#xff0c;包括IP地址的结构、IP地址分配、子网划分和IPv4与IPv6之间的转换。 第一部分&#xff1a;IP地址基础 1.1IP地址是什么&#xff1f; IP地址&#xf…...

【网络安全】密码学基础

前言 密码学是网络安全的核心组成部分&#xff0c;它帮助我们保护信息&#xff0c;防止未经授权的访问。在这篇文章中&#xff0c;我们将从基础开始&#xff0c;深入了解密码学的基本概念和原理&#xff0c;包括加密、解密、密钥、哈希函数等。我们将尽可能使用简单的语言和实…...

AWS AD Connector 的网络配置

配置 AWS 的 AD Connector 通常遇到的都是些网络问题,且 AD Connector 本身屏蔽了一些网络细节,使得查找root cause往往有点困难,本文就把 AD Connector 网络问题梳理一下。 首先,需要搞清楚的是:AD Connector 是 Microsoft Active Directory 的一种代理,IAM可以通过它联…...

kafka详解(三)

2.2 Kafka命令行操作 2.2.1 主题命令行操作 1&#xff09;查看操作主题命令参数 [aahadoop102 kafka]$ bin/kafka-topics.sh2&#xff09;查看当前服务器中的所有topic (配置了环境变量不需要写bin/) [aahadoop102 kafka]$ bin/kafka-topics.sh --bootstrap-server hadoop10…...

[Spring] SpringMVC 简介(二)

目录 五、域对象共享数据 1、使用 ServletAPI 向 request 域对象共享数据 2、使用 ModelAndView 向 request 域对象共享数据 3、使用 Model、Map、ModelMap 向 request 域对象共享数据 4、向 session 域和 application 域共享数据 六、SpringMVC 的视图 1、ThymeleafVie…...

3步解锁Windows隐藏音质:免费工具让普通音箱变HIFI

3步解锁Windows隐藏音质&#xff1a;免费工具让普通音箱变HIFI 【免费下载链接】equalizerapo Equalizer APO mirror 项目地址: https://gitcode.com/gh_mirrors/eq/equalizerapo 你是不是总觉得电脑声音"干巴巴"的&#xff1f;看大片缺乏震撼感&#xff0c;听…...

避坑指南:DataSophon 1.0.0部署中那些官方文档没细说的步骤(防火墙、MySQL、Nginx配置)

DataSophon 1.0.0部署实战&#xff1a;防火墙策略、MySQL优化与Nginx反向代理的深度解析 当你第一次接触DataSophon这个新兴的大数据管理平台时&#xff0c;可能会被它"一小时部署300节点"的宣传所吸引。但真正开始部署时&#xff0c;很多工程师会发现官方文档对一些…...

从零到一:用Air724UG 4G模块和Python,手把手教你搭建一个物联网数据上报系统(含完整代码)

从零构建物联网数据上报系统&#xff1a;Air724UG与Python实战指南 在万物互联的时代&#xff0c;物联网技术正悄然改变着我们的生活和工作方式。想象一下&#xff0c;您只需轻点手机&#xff0c;就能实时查看千里之外温湿度数据&#xff1b;或是远程监控设备运行状态&#xff…...

华为BGP路由实战:从原理到策略调优的深度解析

1. 华为BGP路由技术入门指南 第一次接触华为BGP路由配置时&#xff0c;我被那些专业术语搞得晕头转向。经过多次实战后才发现&#xff0c;BGP就像互联网世界的邮局系统&#xff0c;负责在不同自治系统&#xff08;AS&#xff09;之间传递路由信息。华为设备的BGP实现特别适合企…...

别再手动画框了!用CVAT的自动标注和插值功能,10分钟搞定一段视频标注

别再手动画框了&#xff01;用CVAT的自动标注和插值功能&#xff0c;10分钟搞定一段视频标注 视频标注是计算机视觉项目中最耗时的工作之一。想象一下&#xff0c;你需要为一段30秒的交通监控视频&#xff08;约900帧&#xff09;标注所有车辆的位置——传统方法可能需要8小时以…...

别再怪BGA了!从X光图到金相分析,手把手教你排查PCB上那颗‘时好时坏’的芯片

从X光到金相切片&#xff1a;BGA虚焊故障的硬核排查指南 当你反复调试一块核心板时&#xff0c;那个诡异的BGA芯片就像在和你玩捉迷藏——用力按压时系统运行正常&#xff0c;松开手立刻故障重现。这种"时好时坏"的症状&#xff0c;往往让硬件工程师们抓狂。本文将带…...

性能优化与profiling技术 - 打造极致性能

引言 性能优化是C语言编程的终极目标之一。作为最接近硬件的高级语言,C语言提供了丰富的优化手段。但盲目优化往往适得其反,科学的性能分析才是优化的前提。 本文将深入讲解性能分析方法、常见优化技巧、以及实用的profiling工具,帮助你写出高性能的C程序。 一、性能测量…...

[Android] 文案设计助手_24.06.25

[Android] 文案设计助手_24.06.25 链接&#xff1a;https://pan.xunlei.com/s/VOszMVvm4BmG5za6Ib11nfGrA1?pwdsg9f# 文案设计助手&#xff0c;助您文案生成、自动写作&#xff0c;模拟手写生成器。免登陆&#xff0c;下载即用&#xff0c;无需会员。...

芯片时钟树设计实战:平衡性能、功耗与鲁棒性的后端工程指南

1. 项目概述&#xff1a;从“动脉”视角理解时钟树在芯片设计的浩瀚世界里&#xff0c;时钟信号就像是整个系统的“动脉”。它不负责输送数据&#xff0c;但负责为所有逻辑单元提供统一的“心跳”节拍。没有稳定、同步的心跳&#xff0c;再强大的计算单元也会陷入混乱。我们常说…...

Python(while循环)

目录 1.while 循环的基本概念 1.1 语法格式 1.2 最简单的示例 1.3 while 与 for 的对比 2. 代码执行顺序详解 3. 无限循环及其控制 3.1 无限循环的基本写法 3.2 避免无限循环的常见错误 4. break、continue 与 else 4.1 break&#xff1a;提前终止整个循环 4.2 cont…...