如何编写简单的lua小脚本@@

------------------------第一章--lua语言基本语法----------------------------


第一节:变量与函数


lua是个和C十分相像的东西,不过也有很多不同点。引用一句话,lua除了关键字就是变量。
比如:C语言里面想定义一个整型变量的话:int i = 0; 但是在lua里面就简单了: i = 0;省略了变量前面的类型关键字。除此之外,lua里面所有与i = 0;这种格式定义的变量都是全局变量。 如何定义一个局部变量呢,很简单,在前面加local关键字,即:local i = 0; 局部变量一般用在函数里面。


弄清楚变量的定义方法以后,再来看看lua的语法特点。 如果说C语言是用大括号来定义函数的始末,那么lua就用函数头与end;来定义函数的始末,比如C语言:int func() {return 1;}
表示调用这个函数的时候会得到一个返回值为1的整型,而lua:function func() return 1; end; 看出区别了吧,lua定义函数的时候需要加上function关键字 func() 后面的括号里面表示参数,这里不需要,在end; 上面的语句就是调用函数时要执行的语句。需要注明的是,lua里面的函数的返回值类型同样不需要,lua会自动进行判断。


当然在lua里面也可以用{}大括号来划分block,不过一般不需要,就不多做说明了。


下面讲逻辑与循环。。。~



第二节:逻辑与循环


逻辑语句就是if else/elseif 构成,语法和函数类似,也是用end;来结束,比如我们要写一个判断,当英雄等级大于20时胜利,否则失败,用heroLevel来表示英雄等级(至于怎么获得等会再讲)那么就有:if heroLevel > 20 then win(); else fail(); end; win()和fail()是要执行的函数。至于elseif 就是else 里面再嵌套一个if 写法类似。 时刻注意end;结尾。注意,在lua里面数字变量都是true (包括0) 而被判断为false的只有2个,false和nil。nil表示空,和null有点像。没有特殊情况把nil当成false用就好。


循环语句就比较复杂了,一般常用于数组,在lua里面循环有很多种,但是常用的有3个:
while,for,for...in。 while最简单,for其次,for...in比较方便不过不好查阅。假设我们要实现从1加到100,那么分别就有: PS:在lua里面注释用--而不是//,被注释的语句不会执行
--while syntax:
v = 1;
result = 0;
while v <= 100 do
result = result + v;
v = v + 1;
end;
--for syntax:
result = 0;
for i = 1, 100, 1 do
result = result + i;
end;
--for...in syntax:
result = 0;
intArray = {1,2,3,4,5,......,98,99,100};
for index, element in intArray do
result = result + element;
end;
细心地朋友想必已经看出来了,while自身不包含循环变量,for包含一个循环变量(这个循环变量默认为局部变量而不是全局变量,只能在循环体中使用),for...in则专门用于数组。对于while语句没什么好讲的,很简单,而for语句后面跟了3个参数,i = 1表示定义i这个循环变量用于循环体中,中间的100表示当i <= 100时执行循环体,最后的1是步长,也就是执行一次循环体i会自动增加这里的值,在这个例子中就是每次加1,加到100,。for...in有3个参数,先讲in后面的参数,是一个数组,而第一个index表示当前循环到的数组中的值的下标,第二个element则表示当前循环到的数组中的值。


被绕昏了有木有! 在h5里面循环用while和for就够了,至于for...in不用管它就好。


接下来讲数组和运算符,讲完这个就可以切入主题,看看lua脚本实例了。~



第三节: 数组与运算符


lua的数组和C语言的数组很相似,都是以下标访问,不过lua的数组是table,不过不用管这么多,就当成数组用就好。 数组和变量一样,定义时都不用指定类型,直接arr = {1,2,3}; 就行了,然后arr[1] = 1就是1,arr[2] 就是2,arr[3]就是3。 没错,lua的数组下标是从1开始的而不是从0开始,除非你手动赋值。lua里面的数组非常灵活,比如 textArr = {"scripts/a.txt", "scripts/b.txt"}; 等等。。。


lua里面的运算符基本和C语言一样,不过h5不支持 "%"取余, "++"、"--"等的运算符,不过这些都可以自己定义一个函数解决。


有了上面的基础,差不多就可以写出丰富的脚本了。

### 回答1: 游戏脚本通常使用脚本语言来编写,例如 Lua、JavaScript 和 Python。这些脚本语言通常用于编写游戏中的非常高层的代码,例如实现游戏规则、游戏流程、任务和对话等。另外,还有一些游戏引擎,比如 Unity 和 Unreal Engine,提供了自己的脚本语言或脚本编辑器,用于编写游戏逻辑。 此外,游戏脚本还可能使用其他编程语言来编写,比如 C++ 和 C#。这些语言通常用于编写游戏的底层代码,例如渲染引擎、物理引擎和其他底层系统。 总的来说,游戏脚本可以使用多种不同的编程语言来编写,具体使用哪种语言取决于游戏开发者的需求和偏好。 ### 回答2: 游戏脚本可以使用多种编程语言来编写。最常见的编程语言是脚本语言,如Python、Lua和Ruby等。这些语言具有简单易学的语法和高度灵活的特性,非常适合用于编写游戏脚本。 Python是一种流行的脚本语言,被广泛用于游戏开发。它具有简洁的语法和强大的库支持,可以方便地实现各种游戏逻辑和功能。 Lua是另一种常见的脚本语言,被广泛应用于游戏引擎中。它具有轻量级和快速执行的特点,非常适用于嵌入式系统和游戏脚本开发。 Ruby是一种简洁优雅的脚本语言,也可以用于游戏脚本开发。它具有强大的元编程能力,可以在游戏中实现高级的脚本功能。 除了脚本语言之外,游戏脚本还可以使用其他编程语言,如C++和C#等。这些语言通常用于游戏的核心逻辑和性能敏感的部分,可以提供更高的执行效率和更灵活的控制。 总体而言,游戏脚本的选择取决于开发团队的偏好和游戏需求。不同的编程语言都有各自的优势和适用范围,开发者可以根据实际情况选择最合适的语言来编写游戏脚本。 ### 回答3: 游戏脚本使用的编程语言取决于游戏的引擎和开发工具。 一些常见的游戏引擎,如Unity和Unreal Engine,通常使用C#或C++作为其脚本编程语言。使用这些引擎,开发人员可以编写游戏逻辑和行为脚本。C#是一种面向对象的编程语言,易于学习和使用,并且具有强大的功能,如垃圾回收和丰富的类库。 另外,脚本编程语言还可以包括Python和Lua等语言。Python是一种简单易用的脚本语言,它具有易读易写的语法和丰富的第三方库,适合编写游戏中的一些小脚本。而Lua是一种轻量级脚本语言,具有快速的执行速度和简洁的语法,常用于游戏引擎的脚本编写。 对于更特定的游戏类型,可能会使用其他特定领域的编程语言。例如,网页游戏开发可以使用JavaScript语言,移动游戏开发可以使用Java或Objective-C/Swift语言。这些编程语言都有相应的开发工具和库,使开发人员能够更好地创建游戏逻辑和功能。 总之,选择使用哪种编程语言主要取决于游戏的需求和开发团队的经验。不同的语言有不同的优势和适用场景,开发人员需要根据具体情况选择最适合的编程语言来编写游戏脚本
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值