-
Notifications
You must be signed in to change notification settings - Fork 134
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Heretic: Adding Translucency Option #1251
Heretic: Adding Translucency Option #1251
Conversation
…ojectile destinction
Added separate Offset struct, reworked drawing of player sprites.
- Use Item for Weapon-Flash selection - Added MISCMISSILE Flag to further projectile effects. - Restructured conditions (work in progress).
- fix typo for MISCMISSILES - Rearrange Menu
- added/removed some translucent effects. - make goopods translucent upon explosion. - make leadermummy translucent upon facing enemy for ranged-attack.
…ey/crispy-doom into Heretic_Translucency_Option
.. instead of assigning it upon explosion.
…cleanup flags - remove translucency flag from goldwand ammo - adding / moving comments - fixing whitespace.
Should not draw base frame when being invisible anyways.
…oom." This reverts commit 0cb6f26.
.. instead of info.c
src/heretic/r_things.c
Outdated
// [crispy] translucent sprites | ||
else if (crispy->translucency && vis->mobjflags & MF_TRANSLUCENT) | ||
{ | ||
if ((vis->mobjflags & (MF_NOGRAVITY | MF_MISCMISSILE | MF_MISSILE) && crispy->translucency & TRANSLUCENCY_MISSILE) || |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I tagged effects with MF_MISCMISSILE since some of them were neither MF_NOGRAVITY nor MF_MISSLE, and I still felt they should be translucent. If we stay with the current foreseen options, I think the flag and this whole condition might not be needed and I will remove or rework them. What do you think?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Frankly, I'd prefer if we could get away without a second flag. But if it makes things easier, that'd be alright as well. But please add some elaborate comments if you decide to go that way.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The flag is now removed and the condition reworked.
src/heretic/mn_menu.c
Outdated
{ | ||
{TRANSLUCENCY_OFF, "OFF"}, | ||
{TRANSLUCENCY_MISSILE, "PROJECTILES"}, | ||
{TRANSLUCENCY_ITEM, "VANILLA WEAPON FLASH"}, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I used the item for the vanilla weapon flash instead, to have the "both" option (binary 11) working correctly.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fine with me, but please drop the "Vanilla" part. This is an implementation detail that needn't get exposed in the in-game menu.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have changed the description and removed the vanilla part.
Not required with the current translucency options.
@@ -67,6 +90,21 @@ int maxframe; | |||
const char *spritename; | |||
|
|||
|
|||
// [crispy] Y-Offsets for various sprite frames used for weapon fire translucency | |||
spriteoffset_t spriteoffsets[NUMSOFFSETS] = { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
One last thing, could you write these as multiples of FRACUNIT
(e.g. 0x80000
= 8 * FRACUNIT
), please?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I changed it accordingly and also corrected a 1px mismatch for the Hellrod base-frame.
Using FRACUNIT and doing a 1px correction for HROD_F1.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you very much!
Related Issue:
Closes #1250
Changes Summary
Option 1 (Projectiles):
Option 2 (vanilla Weapon flash)
.. or both Options together.