Page 1 of 4

LÖVE 0.5.0

Posted: Sat Sep 20, 2008 5:02 pm
by rude
Changes:
  • Added love.joystick.
  • Added network support via LuaSocket.
  • Added support for loading of appended .love-file.
  • Added love.filesystem.lines().
  • Added a loader function to enable use of normal require().
  • Added love.filesystem.load().
  • Added love.filesystem.getSaveDirectory()
  • Added love.filesystem.getWorkingDirectory()
  • Added optional explicit destruction of Box2D objects.
  • Added shape:testSegment().
  • Added love.graphics.screenshot() (.bmp only).
  • Added default size (12) to font-related functions.
  • Added love.graphics.setFont( filename, size )
  • Added love.graphics.setLineStippe and related functions.
  • Added love.graphics.setPointSize and related functions.
  • Changed love.filesystem.read() to accept file name.
  • Changed love.filesystem.write() to accept file name.
  • Changed love.graphics.triangle() to accept CCW and CW ordering.
  • Fixed love.graphics.read adding bogus characters at the end of string.
  • Fixed epic swigfusion bug.
  • Fixed love.graphics.getFont so it returns nil if no font is present.
  • Fixed bug where love.graphics.getBlendMode() always returns blend_normal.
  • Fixed bug which caused error screen to be scissored (when enabled).
  • Fixed Body:setAngle to accept degrees like everything else.
  • Cleaned up love::File and love_physfs.
  • Cleaned up love::Reference so it stores its reference in _G.
Joystick
Mike added joystick support. *Hail*.

LuaSocket
LuaSocket is now included and should work exactly like specified in its documentation.

.love fusion
You can now append the .love file to the love.exe, rename it, and it will read "itself" instead of the game passed as a parameter. Examples with the game "no.love":

Code: Select all

(Windows)
copy /b love.exe+no.love no.exe
(Linux)
cat love no.love > no
Oh, and I admit I haven't really tested this in Linux, feedback plz.

Filesystem Improvements

Code: Select all

-- New and improved read:
local contents = love.filesystem.read("file.txt")

-- New and improved write:
love.filesystem.write("out.txt", "this will be written to the file")

-- And line iterator:
for line in love.filesystem.lines("data.txt" do
  ...
end
Automagic
Almost forgot: new makefiles. You should now be able to install using:

Code: Select all

./configure
make
sudo make install
Enjoy. ^-^)/

Re: LÖVE 0.5.0

Posted: Sat Sep 20, 2008 6:09 pm
by cag
Have I mentioned how much I love you? Because this is insane.
How are you coming out with these things so fast? :shock:

Re: LÖVE 0.5.0

Posted: Sat Sep 20, 2008 6:25 pm
by SamPerson12345
Yay! So we can make multiplayer games now?

Re: LÖVE 0.5.0

Posted: Sat Sep 20, 2008 7:13 pm
by Kaze
Hooray!

Re: LÖVE 0.5.0

Posted: Sat Sep 20, 2008 7:22 pm
by Kaze
For LuaSocket, do we use love.socket or just socket?

Re: LÖVE 0.5.0

Posted: Sat Sep 20, 2008 8:42 pm
by rude
cag wrote:Have I mentioned how much I love you? Because this is insane.
How are you coming out with these things so fast? :shock:
^-^
Kaze wrote:For LuaSocket, do we use love.socket or just socket?
You need to require it, just like you would normally do. I've added a loader to package.loaders which looks for libraries built into the LÖVE binary.

Code: Select all

socket = require("socket")

Re: LÖVE 0.5.0

Posted: Sat Sep 20, 2008 9:15 pm
by Kaze
rude wrote:
Kaze wrote:For LuaSocket, do we use love.socket or just socket?
You need to require it, just like you would normally do. I've added a loader to package.loaders which looks for libraries built into the LÖVE binary.

Code: Select all

socket = require("socket")
Oh cool, thanks for clearing that up.

Re: LÖVE 0.5.0

Posted: Sun Sep 21, 2008 1:25 pm
by rasjani
FYI:

1)
All of the source archives (zip/targz/tarbzip) have the same problems while trying to build them: They are missing some files, mainly headers but also some *.lua.c files from src/luasocket/luasocket. So basicly, you cant build any binaries from the source archives - I checked the svn tag for 0.5.0 and missing files seem to be there..


2)
After patching the source archive or using the svn checkout - compilation seems to go fine but linking doesnt work. Something seems to depend on allegro libraries and lots of errors are generated. Adding output of allegro-config --libs to Makefile.am's and recreating Makefile seems to do the trick..


3)
src/physfs/File.h or src/physfs/File.cpp needs to #include <string.h> since File.cpp uses strlen() in line 112 -> compilation fails there.

4)

configure's --prefix switch is completely ignored.

Re: LÖVE 0.5.0

Posted: Sun Sep 21, 2008 4:27 pm
by rude
Thanks, rasjani. Fixed the missing files in the archives, at least. Linux maintainer tido will have to answer the rest ...

Re: LÖVE 0.5.0

Posted: Sun Sep 21, 2008 6:22 pm
by tido
2) What version of GCC are you using? If it's 4.3.x, it's untested because I'm not running any distros with it atm. Can you find out which library is depending on allegro? And whether or not adding all of those links are necessary?

3) This is a GCC 4.3.x feature afaik. Rude will fix it.

4) Ooopsie... :P I haven't implemented it yet.