Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines
(2 edits) (+3)

Millie's suggestions are correct, but I'll throw in an adaption of a method that I used once because I was dealing with very large imported sprites.

I had each version of the sprite on it's own card in the same position (so flipping through the cards would look identical except for the expression change) and prepared a small script that copied out the same part of the Card image based on the position and pasted them into a new canvas.

If your stuff is set up in this strange way with many sprites in the same position on many cards, then this is a method that could be used:

You'll want to make a size/position reference widget (anything is fine, we just need it to be in the right size and position. A transparent canvas or field or button works) and line it up to where you want your sprite canvases to be cut out from the card.

Let's name that reference widget "frame" because that's what it's doing.

on click do
sprite:card.add.canvas
sprite.size:frame.size
sprite.paste[card.image.copy[frame.pos frame.size]]
sprite.locked:1
sprite.border:0
sprite.show:"transparent"
end

Stick this in a button, label it "spritemaker" or something similar and copy both your "spritemaker" button and "frame" reference widget around to each card and click the button on each one. Or leave "frame" on only one card and edit the script to refer to it where it is on that one other card (othercardname.widgets.frame instead of just frame in the script) it's up to you.

Rename "sprite" to the correct expression name and move it to your puppet's storage card. :)

It's kinda handy to be able to edit a sprite and then click the "spritemaker" button again to make a new copy of it.

But 99% of the time I'd recommend Millie's recommendations.