- 博客(8)
- 收藏
- 关注
转载 Lua的类实现继承、多态以及setmetatable方法
注: 原文有些地方不够详细或不正确, 我补充完善了一些内容, 如仍有不正确的地方, 欢迎指正. 1. Lua类实现 从网上搜了几个类实现,自己照猫画老虎的弄个如下: ClassYM = {x=0, y=0} --这句是重定义元表的索引,必须要有, ClassYM.__index = ClassYM --模拟构造体,一般名称为new() function ClassYM:new
2012-01-28 07:37:17
10634
转载 Metatable In Lua 浅尝辄止
什么是Metatable Lua中Metatable这个概念, 国内将他翻译为元表. 元表为重定义Lua中任意一个对象(值)的默认行为提供了一种公开入口. 如同许多OO语言的操作符重载或方法重载. Metatable能够为我们带来非常灵活的编程方式. 具体的说, Lua中每种类型的值都有都有他的默认操作方式, 如, 数字可以做加减乘除等操作, 字符串可以做连接操作
2012-01-28 07:32:35
875
转载 libgdx示例-SuperJumper分析 3. 游戏中的物体与主游戏逻辑
经过之前两节的分析,现在,游戏的资源加载和初始化已经完成,并且除了主游戏界面,其他界面也已经绘制完成,接下来就游戏的主界面的实现了。先讲一下作者是怎么定义游戏中的物体。 首先,这是一个2D的游戏,也就是说,所有的游戏物体都会在一个平面内绘制(或者说在屏幕大小内绘制),那么所有的物体都应该包含一个位置(position) 和一个作用范围(bounds),所以作者为所有的物体定义了一个名为Gam
2012-01-28 06:00:01
1962
转载 libgdx示例-SuperJumper分析 2. 界面与触屏事件
上一节已经得出 MainMenuScreen 为主菜单类,也就是游戏开始后第一个显示的Screen,先看看主菜单的界面,截图如下: 下面就来分析一下MainMenuScreen类,代码如下: public class MainMenuScreen extends Screen { OrthographicCamera guiCam; SpriteBatch ba
2012-01-28 05:35:08
3132
转载 libgdx示例-SuperJumper分析 1. 程序入口与初始化资源,加载配置信息
SuperJumper是libgdx作者写的Demo项目,是一款跳跃动作类游戏,源代码包含在libgdx里,可以在http://code.google.com/p/libgdx/上找到。简单的说一下游戏的玩法,游戏中你将操作一个小人,它碰到版块会不断的往上跳,你可以操作小人左右移动,然后在往上跳的过程中,收集尽可能多的金币,同时要避开飞在空中的蜜蜂,直到到达最顶部的城堡,才进入下一关。下面是游戏运
2012-01-28 04:51:20
3481
转载 COMMAND模式--《敏捷软件开发》读书笔记(一)
现在几乎每个软件都有Undo和Redo功能,要想实现这个功能就要用到COMMAND模式。所有的操作都应该从类似如下的抽象类CCommand继承:class CCommand { public: virtual ~CCommand(); virtual void Do() = 0; virtual void Undo() = 0; }; 这样就可以在操作的时候,
2012-01-27 02:50:22
615
转载 适配器模式(Adapter Pattern)
概述: 在软件开发过程中,我们要经常要复用我们以前开发的一些“现存对象”,但是这些“现存对象”并不能满足我们新的应用环境。怎样才能良好的复用这些对象,以满足我们的应用环境,这就是适配器(Adapter)所要解决的问题。 意图: 将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。
2012-01-27 02:38:56
725
转载 经典的23种设计模式
23种设计模式分为创建型、结构型和行为型三种类型: 创建型模式: Abstract Factory:提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。 Builder:将一个复杂对象的构件与它的表示分离,使得同样的构建过程可以创建不同的表述。 Factory Method:定义一个用于创建对象的接口,让子类决定将哪一个类实例化。Factory
2012-01-27 02:21:02
665
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人