Jump to content

A way to prevent blood stains?


Gorvin

Recommended Posts

Hi,

 

I need a way to make it so a monster does not leave behind a blood stain when it dies (or any other type of stain). The only way around this that I can think of is to have the creature's death state use the erase_creature call, but then the death animation wouldn't play. I've tried using "put_stain_on_space(my_loc_x, my_loc_y, -1);" in its death state to erase the stain, but that doesn't work because the engine calls it immediately before killing the creature rather than after.

 

Any suggestions on how to get around this?

Thanks.

Link to comment
Share on other sites

If there's a better answer than that one, I don't know what it would be. Either that or have the DEAD_STATE send a message to a terrain script that breaks out a mop and cleans up any nearby stains.

 

I don't think you'll find a way to prevent the stain. The best I think you can hope for is to remove it as quickly as possible once it's there.

Link to comment
Share on other sites

Quote:
Originally written by wz. arsics:
Hmm... maybe you could try playing around with the species? (listed on page 58 of the appendices) Maybe some will give you different remains. "Other," perhaps?
I've tried testing it with all the different species types, and they all leave behind some kind of "stain", usually blood.

Quote:
Originally written by Kelandon:

You could have the monster set an SDF, and then put in the town's START_STATE that if the monster is dead, use the call to erase the blood.
I'll probably use this if I can't figure out a better way. The problem with this is that the blood would stay around until the end of the turn. If possible, I would like to have it removed as soon as it is placed, or stop it from appearing at all, so that the player never sees it.

What I'm trying to do is create a sea monster type enemy that travels through water terrain. I've got it working rather well, except that when it dies the blood spots appearing on top of the water look really out of place.
Link to comment
Share on other sites

The method of sending a message to a terrain script should erase the stains at the end of the current turn, rather than at the beginning of the next turn (I'm fairly certain I remember reading that messages are handled at the very end of the current turn). I think that'll get you closer to what you're wanting.

 

The terrain script can just sit somewhere out of the way... doesn't need to be "on" the terrain where it's needed. When it gets the message to go into action, it can either just cycle through the water squares removing stains, or use the trick of the dying monster recording it's x and y in SDFs so the terrain script knows just where to act.

 

A bit of a hack, but I think it'd be pretty close to what you're after. The blood will at least dissipate into the water more quickly than waiting for the player's next action.

Link to comment
Share on other sites

Quote:
Originally written by spyderbytes:
The method of sending a message to a terrain script should erase the stains at the end of the current turn, rather than at the beginning of the next turn (I'm fairly certain I remember reading that messages are handled at the very end of the current turn). I think that'll get you closer to what you're wanting.
Ah ha, it worked! The player now only sees the stain for a brief moment after it dies. It's not perfect, but it's close enough. Thanks for the tip.
Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...