关于lua语言及热更新的研究一

2023-11-15

lua语言是个非常强大的语言,在一些游戏里进行一些热更新操作:下面就来分享一下这个lua语言的基本语法:

我这里使用了Sublime Text2,

ctrl+B 运行

Ctrl+/快捷键注释




下面是代码

--print("hello")单行注释
--[[
多行注释
]]
--基本数据类型
--nil空值,boolean bool类型
--number 数字类型 string 字符串
--table表 function 函数
-- a=10;--不加修饰符是全局变量
-- print(a)
-- --定义局部变量
-- local  b = 100
-- print(b)
-- local c 
-- print(c)--变量不赋值,默认是nil
--定义变量 申请内存,变量时对这块内存没有引用时,改内存被回收
-- a=10
-- c=a
-- a=nil
-- c=nil
--输入输出
-- print(1)--相当于writeline,自带回车
-- io.write(2)--不换行输出

--输入要在终端输入,否则失效
-- print("please input:")
-- a=io.read()
-- print(a)

--转译字符
-- print("此行\n下行\n\"双引号\",'单引号'")

--字符串可以和number相互转换
-- print("10"+10)--20

-- print("LSL".."is dsx")--连接字符串
-- print("LSL's Age "..30)
--虽然可以相互转换,但不能象下面转换
--"10"=10
--这么转
-- s="10"
-- a=10
-- a,b,c=1,2,3--可以同时赋值多个变量
-- print(a)
-- a=tonumber(s)
-- s=tostring(a)
-- print(a)
-- print(s)

--运算符 < > >= <= == ~=
-- print(3~=4)

--if语句
--1
-- if 5>3 then
-- 	print("yes")
-- end
-- --2
-- if 5>3 then print("yes")
-- 	else print("No")
-- 	end

-- 	--3
-- 	if 5<3 then
--        print("yes")
-- 		elseif 10>9 then
--            print("10>9")
--            else
--            	print("de")
--            end
--            --4 除了nil 与false 其他都为真(包括0)
--            a=10
--            if a then
--            	print(a)
--            end
--逻辑运算符
--and=&&,or=||,not=!
-- c=10
-- print(false and nil)--and 是返回假值 当两个都为假是返回第一个
-- print(c or nil)   --都为真返回前者 都为假时返回后者
-- print(not c)

--循环
-- while ...do
-- 	...
-- end

-- i=0
-- repeat --do while
-- 	print(i)
-- 	i=i+1
-- 	until i>=10

-- for i=1,-10, -2 do--(-2)是增量
-- 	print(i)
-- end

--菱形
-- n =7
-- for i=n - 1,-(n - 1), -1 do
-- 	for j=-(n - 1),(n - 1), 1 do
-- 		if math.abs(i) + math.abs(j) <= n - 1 then
-- 			io.write("*")
-- 		else
-- 			io.write(" ")
-- 		end
-- 	end
-- 	print()
-- end
-- n=7
--       for i=n,-3 * n, -1 do
-- 	for j=-2 * n, 2 * n, 1 do
-- 		if i >= 0 then
-- 			if (j - -n)^2 + i^2 <= n^2 or (j - n)^2 + i^2 <= n^2 then
-- 				io.write("* ")
-- 			else
-- 				io.write("  ")
-- 			end
-- 		end
-- 	end
-- 	print()
-- end

--函数类型的第一种形式
-- function Add(a,b)
-- return a*b
-- end
-- Add1=function (a,b)
-- return a+b
-- end 
-- print(Add(1,2))
-- print(Add1(1,2))
		
-- p=function ( a,b )--参数数目不受限制
-- print(a)
-- print(b)
-- end
-- p(1)

--可以同时返回多个值
func=function ( )
	return 1,2,3,4
end
a,b,c,d=func()
print(d)


本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

关于lua语言及热更新的研究一 的相关文章

  • 在 Corona sdk 上保存高分?

    我想保存游戏中创建的高分 并且当玩家点击高分按钮时可以在主菜单中看到 有人可以帮助我吗 您可以使用SQLITE https docs coronalabs com api library sqlite3 index html将高分保存到数据
  • Redis 排序集和解决关系

    我正在使用 Redis 排序集来存储我正在处理的项目的排名 我们没有预料到 我们想要如何处理关系 Redis 按字典顺序对具有相同分数的条目进行排序 但我们想要做的是对具有相同分数的所有条目给予相同的排名 例如在以下情况 redis 127
  • Redis INCRBY 有限制

    我想知道是否有一种方法可以通过我的应用程序的单次往返在 Redis 中执行此操作 对于给定的键K 其可能值V是范围内的任意整数 A B 基本上 它有上限和下限 When an INCRBY or DECRBY发出命令 例如INCRBY ke
  • 如何在aerospike中获取ttl为-1的记录集?

    我在aerospike中有很多记录 我想获取ttl为 1的记录 请提供解决方案 只是为了澄清 设置TTL 为 1 https github com aerospike aerospike client go blob master docs
  • 什么时候适合使用Lua这样的嵌入式脚本语言

    我玩 魔兽世界 大约有两年了 我对用来编写插件的 Lua 很好奇 由于到目前为止我读到的有关 Lua 的内容都是 快 轻 和 这太棒了 所以我想知道如何以及何时使用它 您需要在系统中嵌入像 Lua 这样的脚本语言的典型情况是什么 当您需要最
  • 如何在 Lua 中实现 OO?

    Lua 没有内置对 OO 的支持 但它允许您自己构建它 您能否分享一些实现面向对象的方法 请为每个答案写一个例子 如果您有更多示例 请发布另一个答案 我喜欢将 OOP 视为容器 对象 内的数据封装以及可以使用该数据完成的操作子集 还有很多内
  • Lua userdata:无法同时进行数组访问和方法

    我遇到了这个人的问题 Lua userdata数组访问及方法 https stackoverflow com questions 26970316 lua userdata array access and methods 其中 当我设置用
  • Lua 从 5.1 更新 - LUA_GLOBALSINDEX 问题

    我最近将旧的 Lua 5 1 项目更新到了该库的最新版本 但遇到了问题LUA GLOBALSINDEX 它变得不确定 我只用过它lua getfield函数 像这样 void luastartgame void if startgamefu
  • 比较 Lua 中的日期

    我有一个带有日期表的变量 如下所示 table day number 15 year number 2015 month number 2 如何获取当前日期与上述日期之间的天数 非常感谢 您可以使用os time 将表转换为秒并获取当前时间
  • 关闭 Löve2D 中的抗锯齿功能

    我在用着L ve2D http love2d org用于编写一个小游戏 L ve2D 是 Lua 的开源游戏引擎 我遇到的问题是 当您在非整数位置绘制精灵时 某些抗锯齿过滤器会自动应用于精灵 love graphics draw sprit
  • gsub 的转义字符串

    我读了一个文件 local logfile io open log txt r data logfile read a print data output n w r 1 2 n t x re S 是的 日志文件看起来很糟糕 因为它充满了各
  • 推送 Lua 表

    我已经创建了一个Lua表C 但我不知道如何将该表推入堆栈顶部 以便我可以将其传递给 Lua 函数 有谁知道如何做到这一点 这是我当前的代码 lua createtable state libraries size 0 int table i
  • 如何在 Lua - Lightroom 插件中使用 HMAC

    首先我要提的是我对 Lua 真的很陌生 如果你认为我的问题太愚蠢 请耐心等待 这是我的要求 我需要使用 HMAC sha256 进行 Lightroom 插件开发 因为我使用它是为了安全 我试图使用这个但没有运气https code goo
  • Lua表在内存中是如何处理的?

    lua如何处理表的增长 是否相当于ArrayList在Java中 IE 需要连续的内存空间 并且当它变得大于已经分配的空间时 内部数组被复制到另一个内存空间 有什么聪明的方法来引导吗 我的问题是 表是如何存储在内存中的 我不是问如何在 Lu
  • 如何从表成员中引用lua表成员?

    我在 lua 有一张表 enUS LOCALE STHOUSANDS Thousands separator e g comma patNumber d LOCALE STHOUSANDS d regex to find a number
  • 模式 ^u.meta(\.|$) 未按预期工作

    我有这个模式 u meta 预期行为 u meta 将匹配所有角色 例如 u meta u meta admin u meta admin system u meta 它不应该匹配如下所示的内容 u meta admin u meta ad
  • 编译过程

    谁能解释一下编译是如何工作的 我似乎无法弄清楚编译是如何工作的 更具体地说 这是一个例子 我正在尝试在 MSVC 6 中编写一些代码来加载 Lua 状态 我已经 设置库的附加目录并将文件包含到正确的目录中 使用 extern C 因为 Lu
  • 如何循环遍历表并保持顺序?

    我得到了下表 local a 12 30 24 60 60 year 30 24 60 60 month 24 60 60 day 60 60 hour 60 minute 1 second 但是 当我对它进行配对循环并打印 key val
  • lua-socket:unix 域套接字?

    我使用的是 lua socket 3 0rc1 3 Ubuntu Trusty 附带的 和 lua 5 1 我正在尝试监听 unix 域套接字 我能找到的唯一示例代码是this http lua users org lists lua l
  • Lua C API:如何获取函数名称?

    假设 Lua 堆栈是为即将到来的函数调用设置的 使用lua pcall 为了使事情具体化 我们假设该函数采用一个字符串参数 并且堆栈不包含该函数下方的任何其他 Lua 对象 也就是说 堆栈将如下所示 Lua stack at 1 a LUA

随机推荐

  • upload-labs 第四关-第九关闯关方法

    Pass 04 1 打开靶机 点击查看提示 发现这是一个 htaccess绕过 2 写入一个 htaccess的文件 文件内容如下 3 将文件修改为 htaccess的文件 4 上传文件 5 新建一个文本文档 内容如下 6 将文件类型修改为
  • [k8s]k8s架构图解

    k8s架构图解 启动参数及证书梳理 master端必须要装flannel 注 flannel网络能确保各节点间 Pod 网段实现互通 master 节点与 node 节点上的 Pods 通过 Pod 网络通信 所以需要在 master 节点
  • 搜索算法——爬山法

    不断更新中 一 爬山算法 爬山算法是一种简单的贪心搜索算法 该算法每次从当前位置的临近空间中选择一个最优解作为当前解 直到达到一个局部最优解 爬山算法可以类比成一个有失忆的人在浓雾中爬山 这里就揭示了爬山算法的两个问题 失忆 就是说这个人不
  • decode函数_decode函数的妙用

    如下这张表 包含id和name两列 其中id是主键 name允许为空 存在两条记录 一条是 id 1 name a 另一条是 id 2 name SQL gt create table emp id number primary key n
  • MySQL-数据库读写分离(中)

    作者 小刘在C站 个人主页 小刘主页 努力不一定有回报 但一定会有收获加油 一起努力 共赴美好人生 学习两年总结出的运维经验 以及思科模拟器全套网络实验教程 专栏 云计算技术 小刘私信可以随便问 只要会绝不吝啬 感谢CSDN让你我相遇 前言
  • 基于iView-Cascader的多选级联选择器:cascader-multi

    前言 iview的cascader 多级联动虽然可以实现多级联动 但是不支持多选 这里 cascader multi 可以支持多选功能 实现效果 真实效果和他有出入 这是网上找的好看的动图 实现步骤 1 安装 npm i cascader
  • 求解集合A和集合B的差集

    求解集合A和集合B的差集 题目 已知集合A和B的元素分别用不含头结点的单链表存储 函数difference 用于求解集合A与B的差集 并将结果保存在集合A的单链表中 例如 若集合A 5 10 20 15 25 30 集合B 5 15 35
  • 关于vue-cli 3版本做的改动,没有static文件夹,本地文件应放在哪儿,如何引用

    2 x版本 3 0版本 原来放在static下的文件 现在应该放在public文件夹下 原来的请求数据的写法 现在的写法 总结 vue3 0 对脚手架的结构和静态文件的引用方式都进行了简化
  • 字符流字节流相互转换

    1 字节输出流转换成字符输出流 写到硬盘 创建字节输出流 FileOutputStream fis new FileOutputStream E document aaa txt 字节输出流转换成字符输出流 OutputStreamWrit
  • 使用Python办公自动化:将文本与图表写入到PPT中

    使用Python办公自动化 将文本与图表写入到PPT中 其中含有写入文本 表格及图表到PPT中的一些常用函数 还含有一些对单元格的操作函数 代码如下 import pptx from pptx util import Inches from
  • 模型视图投影矩阵传递

    11
  • mysql 批量插入更新数据 的 两种方法

    有时会有这种需求 当符合某种条件的数据存在时 去修改它 不存在时 则新增 也就是saveOrUpdate操作 当没有的时候就是插入语句 有数据的时候判断主键和唯一索引是否一样 一样那就按照 ON DUPLICATE KEY UPDATE写的
  • 安装raw文件下的apk文件

    有时候我们需要将一些小软件嵌在我们的软件里面 那么我们就可以将这些apk放在我们的raw或者assets文件下进行暂时存储 那么下面我们用放在raw文件下进行展示安装这一过程 首先我们要把我们需要隐藏我apk文件放在raw文件下 raw是在
  • Dirichlet distribution狄利克雷分布

    狄利克雷分布 狄利克雷分布 维基百科 是一组连续多变量概率分布 是多变量普遍化的B分布 为了纪念德国数学家约翰 彼得 古斯塔夫 勒热纳 狄利克雷 Peter Gustav Lejeune Dirichlet 而命名 狄利克雷分布常作为贝叶斯
  • [1036]Jadx gui(JAVA反编译工具)

    github https github com skylot jadx Jadx gui是一款JAVA反编译工具 一个简单轻巧的 DEX 到 Java 反编译器 可让您导入 DEX APK JAR 或 CLASS 文件并将其快速导出为 DE
  • 实时数据库,内存数据库,关系型数据库比较

    内存数据库 内存数据库就是将数据放在内存中直接操作的数据库 它利用内存的读写速度比磁盘快 内存是随机访问而磁盘是顺序访问这两个特点 将数据保存在内存中 在内存中模仿建立表结构和索引结构并针对内存特性进行优化 相比从磁盘上访问 内存数据库访问
  • 集成电路设计开源EDA软件yosys详解1:工具安装

    yosys为一套开源的针对verilog的rtl综合框架 从本节开始将详细介绍工具的使用 并详细对源代码进行分析和讲解 首先介绍一下工具的安装和使用 yosys的git网址为https github com YosysHQ yosys 下面
  • scanner中InputMisMatchException处理

    我们知道在使用scanner进行控制台输入时候 使用next 方法输出 但是这种方法存在弊端 比如你使用nextInt 方法 但是输入一个字符串类型 就会抛出InputMisMatchException异常 首先来看一下scanner在jd
  • crmeb Java2.0集群部署教程

    crmeb Java 宝塔单机nginx负载均衡集群部署 1 添加站点 此处不做详述 2 站点设置 网站目录 关闭防跨转攻击 3 站点设置 添加反向代理 4 站点设置 配置文件 此处因为是本地测试 使用IP 端口 需要在之前的项目同级目录下
  • 关于lua语言及热更新的研究一

    lua语言是个非常强大的语言 在一些游戏里进行一些热更新操作 下面就来分享一下这个lua语言的基本语法 我这里使用了Sublime Text2 ctrl B 运行 Ctrl 快捷键注释 下面是代码 print hello 单行注释 多行注释