The Dink Network

Reply to A Note About Trimming Background Sprites

If you don't have an account, just leave the password field blank.
Username:
Password:
Subject:
Antispam: Enter Dink Smallwood's last name (surname) below.
Formatting: :) :( ;( :P ;) :D >( : :s :O evil cat blood
Bold font Italic font hyperlink Code tags
Message:
 
 
October 14th 2013, 08:33 PM
goblins.gif
Be wary, if you place a background sprite that has been trimmed on any screen that can call a stop_entire_game() function than a wierd thing will happen. Because leveling up calls the stop_entire_game() function this includes any screen that allows you to gain experience.

Here is what happens:
When the game is resumed after stop_entire_game() is called, all the background sprites will be redrawn, but when they are redrawn they forget that they were trimmed and draw the entire sprite instead of just the trimmed area.

Here's a pretty serious example from my own DMOD (it's using a modified menu script that does stop_entire_game):
Before stop_entire_game()
After stop_entire_game()

The solution is to not trim background sprites. Instead use normal (person/creature) sprites but set depth to -100 or so (so they are behind everything else) if you need to trim the sprite.

Edit: Also be sure to set nohit to true, or it won't really function like a background sprite. (background sprites blocking fireballs and such is really bad design anyways).