The Dink Network

Reply to Re: Fragile graphics

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:
 
 
February 9th 2007, 08:44 PM
custom_magicman.gif
magicman
Peasant They/Them Netherlands duck
Mmmm, pizza. 
Don't mess with the hardbox and depth dot. Not for this particular problem.

Instead, set the depth-que (I don't know what key combo it is in DinkEdit) to some negative number. Why it happens? Here's an explanation:

The Dink Engine draws sprites with low y-coördinates before those with high-coördinates. The point where Dink's legs suddenly get covered by the bridge is the point where Dink's y-coördinate gets lower than the bridge's y-coördinate. Dink will be drawn before the bridge, and the visual result is that Dink is "under" the bridge. The depth-que overrules the y-coördinate when drawing (the function in DinkC is sp_que(&sprite, &number); ). So, if you set the depth-que to -100, the bridge will be drawn as if its y-coördinate was -100, which is lower than Dink's y-coördinate, so the bridge will be drawn before Dink. This results in a bridge that's drawn under Dink.

Setting it to "Background" might work, but if it's a bridge over water, or other animated tile, it will disappear. It'll also disappear when Dink gets a levelraise and everytime fill_screen(&color) or draw_background() are used.

In short: set the depth-dot to -100, or something else. Background might work, but it can easily screw up the sprite.