love-inline-import

0.0.1 • Public • Published

love-inline-import

A TypeScriptToLua plugin that in-lines image imports.

How to use

Add the plugin

yarn add -D love-inline-import
# or npm install -D love-inline-import

Register the plugin in your tsconfig.json

{
  "tstl": {
    "luaPlugins": [
      { "name": "love-inline-import" }
    ]
  }
}

Tell TypeScript that a png import returns an Image type

// add this ambient code to a file within your project
// this tells TypeScript that imports ending with .png
// are expected to return an image type
declare module "*.png" {
  import { Image } from "love.graphics";
  const image: Image;
  export = image;
}

And you're good to go! Here's some sample input and output code

import * as player from "./player.png";

love.draw = () => {
  love.graphics.draw(player);
};
local player = love.graphics.newImage(...) -- ... is generated and contains image data

love.draw = function()
  love.graphics.draw(player)
end

Features

  • Allows images to be stored in your source directory
  • Image resolution is handled on compilation

Readme

Keywords

none

Package Sidebar

Install

npm i love-inline-import

Weekly Downloads

1

Version

0.0.1

License

MIT

Unpacked Size

5.24 kB

Total Files

3

Last publish

Collaborators

  • hazzard993