[All] Fix func_wall Use input
#1743
Draft
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR fixes the
Useinput and function for func_wall to toggle between frames 0 and 1, as it did in GoldSrc.When porting this entity,
pev->framewas changed to am_nState. Unlike GoldSrc's pev->frame, m_nState doesn't do anything on its own. This PR uses it as it seems to have been intended: to store the on/off state of the entity so thatSetTextureFrameIndex()can be called accordingly. The Use input has also been updated to properly handle USE_TYPE.Yes, I am aware that this can be achieved with env_texturetoggle, and that func_wall is deprecated by func_brush. This was an exercise and demonstration in how the underutilized SetTextureFrameIndex() can be used to toggle textures via code.
While this replicates GoldSrc behavior, no HLSDK code was used (as it would not have worked).