【Cocos2dx-Lua 脚本开发之二】Lua语言基础

【Cocos2dx-Lua 脚本开发之二】Lua语言基础,第1张

概述从今天开始,往后将陆续更新Lua教程,主要是搭载Cocos2dx ,有任何疑惑或者不对的地方,尽情指正、交流、探讨。 那么首先肯定是Lua语言基础的知识点,下面直接附上代码,注释已经很清楚,无需赘述。 这里顺便给大家推荐一款mac os上的文本编辑器,好用支持多语言编辑,oc,c,c++,java,lua,js,html等等等 TextMate,图标是个菊花 – -。   下载地址:http://

从今天开始,往后将陆续更新Lua教程,主要是搭载Cocos2dx ,有任何疑惑或者不对的地方,尽情指正、交流、探讨。

那么首先肯定是Lua语言基础的知识点,下面直接附上代码,注释已经很清楚,无需赘述。

这里顺便给大家推荐一款mac os上的文本编辑器,好用支持多语言编辑,oc,c,c++,java,lua,Js,HTML等等等

TextMate,图标是个菊花 – -。 下载地址:http://macromates.com

       
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 -- mac 上有很多文本编辑器,Himi找了很多,感觉TextMate是比较好用的,小巧且功能强大!而且免费,图标是个小菊花 - - -- 注释语句 --[[ 注释段落语句 ]] -- --引用其他lua文件,不需要加上(.lua)后缀 --require "xx" --变量不需要定义,可以直接赋值 count = 100 --成员变量 local count = 100 --局部变量 --方法定义 function hello ( ... ) --打印 print ( "Hello Lua!" ) ; print ( string .format ( ... ) ) end -- 每一行代码不需要使用分隔符,当然也可以加上 -- 访问没有初始化的变量,lua默认返回nil -- 调用函数形式 hello ( "你懂的" ) --打印变量的类型 isOK = false print ( type ( isOK ) ) -- 基本变量类型 a = nil --Lua 中值为nil 相当于删除 b = 10 c = 10.4 d = false --定义字符串,单引号,双引号都可以的 e = "i am" d = 'himi' --两个字符串的连接可以如下形式 stringA = "Hi" stringB = "mi" print ( stringA..stringB ) --另外Lua也支持转移字符,如下 print ( stringA.. "\n" ..stringB ) ; --修改字符串的部分gsub,可以如下形式:(将stringA字符串中的Hi修改为WT) stringA = string .gsub ( stringA , "Hi" , "WT" ) print ( stringA ) ; --将字符换成数字tonumber(不转也会自动转) --将数字换成字符tostring(不转也会自动转) stringC = "100" stringC = tonumber ( stringC ) stringC = stringC + 20 stringC = tostring ( stringC ) print ( stringC ) --取一个字符串的长度使用 # print ( #stringC) --创建 表 tableA = { } m = "x" tableA[m] = 100 m 2 = 'y' tableA[m 2 ] = 200 print ( tableA[ "x" ].. "\n" ..tableA.y ) --另外表还可以如下形式(从1开始) tableB = { "4" , "5" , "6" , "7" , "8" } print ( tableB[ 1 ] ) --算术 *** 作符 c 1 = 10 + 2 c 2 = 10 -2 c 3 = 10 * 2 c 4 = 10 / 2 c 5 = 10 ^ 2 c 6 = 10 % 2 c 7 = -10 + 2 print ( c 1. . "_" ..c 2. . "_" ..c 3. . "_" ..c 4. . "_" ..c 5. . "_" ..c 6. . "_" ..c 7 ) --控制 *** 作 --if then elseif then else end abc = 10 if abc = = 10 then print ( "v1" ) elseif abc = = 9 then print ( "v2" ) else print ( "v3" ) end --for --从4(第一个参数)涨到10(第二个参数),每次增长以2(第三个参数)为单位 for i = 4 , 10 , 2 do print ( "for1:" ..i + 1 ) end --也可以不制定最后一个参数,默认1的增长速度 for i = 4 , 10 do print ( "for2:" ..i + 1 ) end tableFor = { "himi1" , "himi2" , "himi3" , "himi4" , "himi5" } for k , v in pairs ( tableFor ) do print ( "for3:key:" ..k.. "value:" ..v ) end --while w 1 = 20 while true do w 1 = w 1 + 1 if w 1 = = 25 then break end end print ( "whlile:" ..w 1 ) --repeat aa = 20 repeat aa = aa + 2 print ( "repeat:" ..aa ) until aa > 28 --关系 *** 作符 --需要注意的是不等于符号 ~= 而不是!= ax = 10 bx = 20 if ax > bx then print ( "GX1" ) elseif ax < bx then print ( "GX2" ) elseif ax > = bx then print ( "GX3" ) elseif ax < = bx then print ( "GX4" ) elseif ax = = bx then print ( "GX5" ) elseif ax~ = bx then print ( "GX6" ) else print ( "GX7" ) end

其中主要需要注意的是,判断语句不等于,不再是!= ,在Lua中是~= ,这个要注意。

源码下载地址:http://vdisk.weibo.com/s/wwgnO

另外关于一些常见的函数如下详解:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 --函数详解 --有一个返回值的函数 function funTestBackOne ( aCount ) local aCount = aCount + 1 return aCount end a = 20 print ( funTestBackOne ( a ) ) --有多个返回值的函数 function funTestBackMore ( ) return 2 , 3 end a , b = funTestBackMore ( ) print ( a.. " and " ..b ) --有变长参数的函数 function funTestUnKNow ( ... ) print ( ... ) end funTestUnKNow ( a , b , "Himi" ) --闭合函数(一个函数写在另外一个函数内) function funTest 1 ( ... ) local d = 12 ; d = d + ... function funTest 2 ( ... ) print ( d ) end funTest 2 ( ) end funTest 1 ( 100 )

掌握这些Lua语言基础,基本足够你使用了。

总结

以上是内存溢出为你收集整理的【Cocos2dx-Lua 脚本开发之二】Lua语言基础全部内容,希望文章能够帮你解决【Cocos2dx-Lua 脚本开发之二】Lua语言基础所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1022507.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-23
下一篇2022-05-23

发表评论

登录后才能评论

评论列表(0条)

    保存