Skip to content

Lovely-Windows is a simple Window/Screen Manager for Love2D

License

Notifications You must be signed in to change notification settings

flamendless/lovely-windows

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 

Repository files navigation

LOVELY-WINDOWS is a window/screen manager for Love2D!

FEATURES:

  • Simple to use and implement
  • Handles any keyboard input
  • Timer to avoid repeating keypresses
  • keypress/keyrelease - you choose what you want!
  • Handles/calculates ratio of the game for scaling!

You can also look at sample

Love2d Forums thread

BASIC USAGE:

  1. Require the module,
WINDOWS = require("path-to-lovely-windows")

You can use any variable name if you don't like "WINDOWS"...Try using "MAC" pun

  1. Make Tables! Key is the keyboard input, value is the width size
WINDOWS = require("path-to-lovely-windows")

local table = {
	f1 = {1024,720},
	f2 = {720,600}
}
--so if the user press f1, the new window size will be 1024x720
  1. Initialize
function love.load()
	WINDOW.initialize(320,200) -- your custom game size (note: it is not the same as the window size)
	
	--then add the table to the module
	WINDOW.addInputTable(table) --parameters are the table we created earlier
end
  1. Recognizing Inputs
function keypressed(key)
	WINDOW.keyInput(key)
end

--or if you want keyreleased, just put WINDOW.keyInput(key) in there.

OTHER FUNCTIONS

WINDOW.getRatio() - returns the calculated ratio, useful for using love.graphics.scale()

WINDOW.listInput() - prints all the width and height sizes you've added. Useful with the LOVEDEBUG library

TO-DO

  • Add fullscreen switch
  • Add joystick/gamepad input

You can contribute, just make some pull request and commits.

Or you can issue if you have a problem

LICENSE

This module/library is under the MIT license.

About

Lovely-Windows is a simple Window/Screen Manager for Love2D

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages