摘要:
接着上一篇的教程,我们现在可以四处移动了,但是地图是有限的,玩家在移动过程中会走出地图外,我们可以加边界限定.现在要实现当玩家超出限定时地图不动的效果.这次的代码更改如下:camera.lua里增加边界设置--左上角,右下角的坐标function camera:setBounds(x1, y1, x2, y2) self._bounds = { x1 = x1, y1 = y1, x2 = x2, y2 = y2 }end更改设置偏移的函数,setY()和setX类似,完整的代码请看附件.--设置摄相机的x偏移,如果value在左右边界之间,那么设置--摄相机的x偏移为value;若valu. 阅读全文
摘要:
这篇教程来自wiki的Tutorial:Cameras的阅读笔记,有些没看懂,先写一部分.Part 1: The Basics http://nova-fusion.com/2011/04/19/cameras-in-love2d-part-1-the-basics/Part 2: Parallax Scrolling http://nova-fusion.com/2011/04/22/cameras-in-love2d-part-2-parallax-scrolling/Part 3: Movement Boundshttp://nova-fusion.com/2011/05/09/came 阅读全文
摘要:
说明,我只是在网上浏览时发现了“金庸群侠传lua复刻版”,有源码,基于sdl使用C语言,我大概看了一下不是很懂。后来发现了love2d,也是基于sdl,于是便有了用love2d再复刻一遍的想法。lua可以很容易的与c/cpp结合,对于一些消耗资源的事可以用c/cpp编码,然后给lua调用。由于我也是初学者,代码很乱,而且都是用的简单又笨的方法,如果有好的建议希望您慷慨指出!我准备用一年的课余时间来实现这个想法,love2d的教程也一直写到做出完整的“金庸群侠传”。love2d文档http://pan.baidu.com/share/link?shareid=140069&uk=1913 阅读全文
摘要:
”说明,在love2d的wiki上以下的这些操作都比较费时,建议不要在draw和update里重复加载同样的数据, 而是创建以后保存以重复使用。” 材质可以简单的说是一些图片素材,love2d可以从文件和ImageData(可以看作内存中的图像数据) 载入图片image=love.graphics.newImage(path或imagedata),返回一个Image对象(可以被画在屏幕上) 说明只能从main.lua所在文件夹为相对路径,载入图片,不能使用外面的图片。 显示图片使用love.graphics.draw(image, x, y),x、y为显示在屏幕上的坐标(说明d... 阅读全文
摘要:
love2d的输入包括love.keyboard,love.mouse,love.joystick(手柄) 键盘: 按键检测是否按下可以用love.keyboard.isDown("键值"),如love.keyboard.isDown("up"), 检测向上键是否按下,按下返回真. 还可以用love.keyboard.setKeyRepeat(delay, interval)... 阅读全文
摘要:
love的绘图函数,共有以下7个,以"love.graphics."开头line 直线quad 矩形arc 弧线point 点rectangle 多边形circle 圆triangle 三角形drawmode有line和fill两种,分别指轮廓和填充blendmode有additive alpha subtractive multiplicative premultipliedcolormode有modulate,replace,combine以上具体的说明请看love的wiki下面说一下文字。可以直接使用love.graphics.print()输出文字,其实love2d 阅读全文
摘要:
首先,新建一个文件夹,以及main.lua和conf.lua。conf.luafunction love.conf(t)--设置标题和窗口大小t.title = "my first love" t.screen.width = 240t.screen.height = 320endmain.lua,这里暂时是几个空的常用回调函数function love.load() --资源加载回调函数,仅初始化时调用一次endfunction love.draw() --绘图回调函数,每周期调用endfunction love.update(dt) --更新回调函数,每周期调用endf 阅读全文
摘要:
0、love2d介绍LÖVE是一个使用 Lua 作为编程语言的轻量级 2D 游戏框架。LÖVE是完全免费的,能用在任何友好的开源项目,或者“邪恶”的闭源商业项目中。LÖVE基于zlib/libpng 协议发布。目前能够在Windows、Linux和Mac OS X下实现跨平台,Android版本正在开发中,可以找到0.72的android版,另外网友告知有ios移植版,这样我们写的游戏就可以夸5个平台了! 1、windows和linux的安装都可到官网下载www.love2d.org要想学好love2d要多看它的wiki,https://love2d.org/wi 阅读全文
摘要:
下面介绍几个常用的容器,包括 Hbox,VBox,Alignment ,Fixed,Table感觉gtk的容器挺不方便,而且每个容器添加子部件的函数名称都不同,不好记.效果图alignment 解释图一table解释图二上代码: 1 require("lgob.gtk") 2 require('lgob.gdk') 3 4 window = gtk.Window.new() 5 window:set('title', "lgob布局", 'window-position', gtk.WIN_POS_CENT 阅读全文
摘要:
我会不定期更新。1. lgob的安装http://www.cnblogs.com/xdao/archive/2012/10/27/pygtk_luagtk.html在windows下把下载的文件解压后的dll和其它等全放到luac.exe所在目录,使用中文会乱码,试试把文件存为utf8.(我没试)2.lgob简介http://www.cnblogs.com/xdao/archive/2012/11/08/lgob_brief_introduction.html3.lgob命名分析http://www.cnblogs.com/xdao/archive/2012/11/08/lgob_analys 阅读全文