- 1、本文档共43页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
chapter13游戏脚本编程.pptx
第13章 游戏中的脚本编程浙江大学软件学院梁秀波Email:mailto:liangxb@cst.zju.edu.cnliangxb@cst.zju.edu.cn主要内容Lua简介Lua语法Lua与C++通信Lua在Cocos2d-x中的应用游戏脚本编程实例—守卫宝箱小结Lua简介Lua 是一个小巧的脚本语言,由巴西里约热内卢天主教大学的一个研究小组于1993年开发。 最初Lua语言是为能与C语言或其他常用语言编写的软件相互集成而设计的,为应用程序提供灵活的扩展和定制功能。Lua由标准C编写,几乎在所有操作系统和平台上都可以编译,运行。Lua语言没有C语言已经拥有的功能,而是完善了C语言所不具备的功能,不适合作为开发独立应用程序的语言。Lua 拥有可以实现同时进行的JIT(Just In Time)项目,提供在特定平台上的即时编译功能。Lua简介Lua拥有四大特性:简易性简单小巧,概念不多,数据类型少,语法简单,使用方便,易于维护可扩展性用于构建特定语言的扩展工具包用Lua代码、C语言代码来扩展高效性脚本语言中最快的语言之一可移植性跨平台可以被C/C++的代码调用可以调用C/C++的函数Lua语法数值与类型语句表达式函数数值与类型Lua脚本语言是一门动态弱类型的语言,程序中不需要声明变量类型便可以直接使用。Lua语言的基本数据类型包括8种nil、boolean、number、string、function、table、thread和userdata数值与类型nil —— 空类型用于与其他值区别,先创建的变量默认值为空,将全局变量赋空值就等于删除它boolean —— 布尔型有“true”和“false”两个值“nil”和“false”值为“假”,除了“nil”和“false值以外的所有其他任何值均为“真”number —— 数值型用于表示双精度浮点数(实数),可以表示任何32位整数,没有整数类型string —— 字符串型用于表示字符串序列,一旦被创建便不可以改变可以通过“..”操作符连接两字符串可以在字符串的前面放“#”操作符来获得字符串的长度数值与类型function —— 函数型函数也是一个类型,函数可以为变量赋值,可以作为参数,可以作为其他函数的返回值table —— 表类型Lua语言中唯一的数据结构可以通过整数、字符串或者其他类型的值(nil除外)来索引没用固定的大小,可以任意添加元素。最简单的构造表达式是用来创造空表的空构造式{}。thread —— 线程类型用于与独立线程区别,实现协同程序userdata —— 自定义类型用于表示新类型(指由C语言库或应用程序创建),可以将C语言的数据存到Lua变量中数值与类型修改字符串内容,利用gsub函数将字符串str1中的“Lua”改为“World”并赋值给新的字符串str2中:在Lua语言中有两种注释方式,单行注释有两个小横线(--)实现,多行注释是以“--[[”开始,以“]]--”结束,中间的内容为注释。上面的代码片段就是采用了单行注释的方式,将输出的内容列举了出来。 str1 = Hello Luastr2 = string.gsub(str1 , Lua, World)print(str1)--Hello Luaprint(str2)--Hello World数值与类型在Lua语言中,可以为一个变量赋不同类型的值,type函数可以检查传来的参数的类型 :print(type(nil)) --nilprint(type(false)) --booleana = 3.14print(type(a)) --numbera = printa(type(a)) --functiona = Hello Luaprint(type(a)) --string数值与类型表类型table是Lua语言中唯一的数据结构是Lua语言与其他编程语言的不同之处表类型与其他编程语言中的数组或者容器类似,不仅可以通过整数的方式索引,还可通过字符串或者其他类型的值(nil除外)来索引table没用固定的大小,可以任意添加元素,这些元素可以是相同类型的对象,也可以是不同类型的对象。table是通过“构造表达式”创建和初始化的,是Lua独特的、最实用的一种表达式。最简单的构造表达式是用来创造空表的空构造式{}。数值与类型表类型table利用空构造式来创建一个table,并添加元素,如下: print(type(nil)) --nilprint(type(false)) --bool
您可能关注的文档
- 2012新课标同步导学高一英语课件:2.2.ppt
- 2014届高考英语(大纲版)一轮复习配套课件:Unit12 Fact and fantasy(必修2).ppt
- 2015—2016沪教版语文八年级上册第二单元课件:第3课《奇特的激光》.ppt
- 2015年修订版马克思主义基本原理概论第七章共产主义崇高理想及其最终实现.ppt
- 2016届物理复习建议.ppt
- 2016年激光产业发展趋势及重点应用领域分析.pptx
- 2017机电控制系统课程设计指导-1_22.ppt
- 29课《老人与海》.ppt
- 3 Tree Models for stock and Options.ppt
- 3-1-aolm-离散数学.ppt
- 福莱特玻璃集团股份有限公司海外监管公告 - 福莱特玻璃集团股份有限公司2024年度环境、社会及管治报告.pdf
- 广哈通信:2024年度环境、社会及治理(ESG)报告.pdf
- 招商证券股份有限公司招商证券2024年度环境、社会及管治报告.pdf
- 宏信建设发展有限公司2024 可持续发展暨环境、社会及管治(ESG)报告.pdf
- 品创控股有限公司环境、社会及管治报告 2024.pdf
- 中信建投证券股份有限公司2024可持续发展暨环境、社会及管治报告.pdf
- 洛阳栾川钼业集团股份有限公司环境、社会及管治报告.pdf
- 361度国际有限公司二零二四年环境、社会及管治报告.pdf
- 中国神华能源股份有限公司2024年度环境、社会及管治报告.pdf
- 广西能源:2024年环境、社会及治理(ESG)报告.pdf
最近下载
- 机械行业“人形机器人的Optimus时刻”系列(五):触觉感知(电子皮肤),高山将越,坦途在望.pdf
- 培训教材污水处理厂运营管理方案.pptx VIP
- 纪检委处理回复函.docx
- AP微积分BC 2016年真题 (选择题+问答题) AP Calculus BC 2016 Released Exam and Answers (MCQ+FRQ).pdf VIP
- 武汉市2025届高中毕业生四月调研考试(四调)物理试卷(含答案).pdf
- 《西安事变》课件.ppt VIP
- 排水沟设计计算11.xls VIP
- 2010版中药典,中国药典2010年版.doc
- 精彩拍摄跟我来.docx
- 小学常用单词分类汇总衡水体英语字帖(含例句).pdf
文档评论(0)