Cocos2d-x Lua游戏开发之Lua oo 的实现

一些面向对象的语言中提供了类的概念,作为创建对象的模版。在这些
语言里面。对象是类的实例,lua通过table也可以实现类的使用。

--建立父类Animal
Animal = {
	size,--动物大小       成员变量声明,不赋值为nil
	age,--动物年龄
	color = "yellow",--动物颜色
	sex,--动物性别,这个可以有??
	new = function ( self,object )
		object = object or {}--判断object是否为空,nil就会创建一个空的table
		setmetatable(object,self)--设置animal基类为元表,算是继承的方法
		self.__index = self --同上
		return object
	end,
	sleep = function ( self,pram )--lua支持:运算符,代替.运算符和显示self
		print(pram,"想要好好的睡觉")--人类尤其是,程序员,记住睡觉,no nuo no die
	end,
	run = function ( self,pram )
		print(pram,"想要好好的运动")--人类尤其是,程序员,记住运动,no nuo no die
	end,
	setAge = function ( self,age )--继承oc之set,get方法,看后面可否写成宏
		self.age = age--两个参数
		print("setAge=",self.age)
		return self.age
	end,
	getAge = function ( self )
		print("getAge=",self.age)
		return self.age
	end,
	getColor = function ( self )
		print("getColor=",self.color)
		return self.color
	end
}

Cat = Animal:new()--创建一个空对象
Cat:sleep("cat")
Cat.age = 22
Cat:setAge(0)
Cat:getAge()
Cat:getColor()

Snake = Animal:new{age = 33}
Snake:sleep("snake")
Snake:getAge()
function Snake:sleep( animal )--子类重写方法,即可实现子类自身
	print("snake 有了一个自己的小窝来睡觉")
end
Snake:sleep("snake")

csdn不支持lua,但是看着又不舒服,还是传张图片吧。使用的sublimetext

Cocos2d-x Lua游戏开发之Lua oo 的实现

时间: 2024-12-20 13:54:50

Cocos2d-x Lua游戏开发之Lua oo 的实现的相关文章

Cocos2d-x游戏开发之lua编辑器 subime 搭建,集成cocos2dLuaApi和自有类

Sublime Text http://baike.baidu.com/view/10701920.htm?from_id=8130415&type=syn&fromtitle=Sublime&fr=aladdin 简介 Sublime Text 是一个代码编辑器(Sublime Text 2是收费软件,但可以无限期试用),也是HTML和散文先进的文本编辑器.Sublime Text是由程序员Jon Skinner于2008年1月份所开发出来,它最初被设计为一个具有丰富扩展功能的V

Cocos2d-x游戏开发之lua工程创建

操作系统:OS X 10.85 Cocos2d-x 版本: 2.2.1 使用Cocos2d-x 可以创建lua工程,已经使用cpp创建的工程也可以继承lua进行开发,但是lua并不支持mac工程(因为一些框架的问题). 支持的工程文件如下: 所有使用创建工程create.py language 为cpp的工程,后集成lua及其工具的时候,要注意这一点. 撒 现在进入cocos2d-x 目录之下,通过cd 进入文件目录 进入之后,如果忘记了命令,可以直接运行 create_project.py 如

[Unity3D]Unity3D游戏开发之Lua与游戏的不解之缘(下)

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 喜欢我的博客请记住我的名字:秦元培,我的博客地址是blog.csdn.net/qinyuanpei. 转载请注明出处,本文作者:

Unity3D游戏开发之Lua与游戏的不解之缘终结篇:UniLua热更新完全解读

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 喜欢我的博客请记住我的名字:秦元培,我的博客地址是blog.csdn.net/qinyuanpei. 转载请注明出处,本文作者:

[Unity3D]Unity3D游戏开发之Lua与游戏的不解之缘(中)

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 喜欢我的博客请记住我的名字:秦元培,我的博客地址是blog.csdn.net/qinyuanpei. 转载请注明出处,本文作者:

Cocos2d-x游戏开发之Lua学习笔记

下载链接 什么是Cocos2d-x 一个开源的移动2D游戏框架,MIT许可证下发布. 可以利用C++.Lua及Javascript来进行部署. 跨平台:iOS,Android,Blackberry,Tizen等. 使用Cocos开发的应用 版权声明:本文原创,转载请注明出处:http://blog.csdn.net/zhoumushui

Unity3D游戏开发之Lua的技能培训

下面我们开始今天的Unity3D技能培训. 我们学习Unity3D培训目标:让U3D初学者可以更快速的掌握U3D技术,自行制作修改素材,可以独立完成2D.3D小规模游戏及网页游戏开发. 好了,下面我们就来一起学习在Unity3D项目中如何使用Lua语言吧,Unity3D基于Mono虚拟机,所以理论上.NET的类库是可以直接在Unity3D中使用的.可是考虑到Unity3D跨平台的需要,我们选择的工具必须在各个平台获得良好的支持.在前文中提到的LuaInterface理论上是可以在Unity3D中

Cocos2d-x 3.x游戏开发之旅

Cocos2d-x 3.x游戏开发之旅 钟迪龙 著   ISBN 978-7-121-24276-2 2014年10月出版 定价:79.00元 516页 16开 内容提要 <Cocos2d-x 3.x游戏开发之旅>是<Cocos2d-x游戏开发之旅>的升级版,修改了Cocos2d-x 2.0版进阶到3.0版后的一些内容,新增了对CocoStudio.UI编辑器.Cocos2d-x 3.x新特性以及网络方面的知识点.主要介绍常用的API使用方式:如何通过官方Demo获取更多关于Coc

iOS游戏开发之UIDynamic

iOS游戏开发之UIDynamic 简介 什么是UIDynamic UIDynamic是从iOS 7开始引入的一种新技术,隶属于UIKit框架 可以认为是一种物理引擎,能模拟和仿真现实生活中的物理现象重力.弹性碰撞等现象 物理引擎的价值 广泛用于游戏开发,经典成功案例是“愤怒的小鸟” 让开发人员可以在远离物理学公式的情况下,实现炫酷的物理仿真效果 提高了游戏开发效率,产生更多优秀好玩的物理仿真游戏 知名的2D物理引擎 Box2d Chipmunk 使用步骤 要想使用UIDynamic来实现物理仿