Commit graph

29 commits

Author SHA1 Message Date
JugadorXEI
2891f60341 Store terrain ID instead of terrain pointer, add new helpers and accomodate for this 2024-05-31 21:15:40 +02:00
Sally Coolatta
7dfa597c7d SRB2 -> DRRR copyright in src, acs, android folder
Be consistent with toaster's recent changes to copyright
2024-04-05 02:08:23 -04:00
James R
73e032573d TERRAIN: add 'remap' boolean, toggles ENCOREMAP/TWEAKMAP
- Software* + OpenGL support
- *Not supported: R_DrawColumnShadowed_8
  - This has something to do with walls and FOF lights.
    However, I don't see an easy code solution and I don't
    know how to even test this.
2023-12-22 19:02:06 -08:00
Sally Coolatta
d936c7aed9 Milky Way terrain
`OutRun 48.0` on Terrain block will make that texture add 48 units to driving top speed.
2023-06-14 10:29:19 -04:00
toaster
fa92c880e0 minigen: Add black fragments to common objects on valid road
- Drawn underneath absolutely everything else, because it's the least specific of all the guides minigen can provide
- "Common objects" includes:
    - Rings/spheres
    - Waypoints
    - Item boxes/spots
    - Overtime kiosk
    - Rings
    - Item Capsules
- The above were chosen because they're a good distinctor between sectors that are valid to drive on and sectors that would be valid were there no impassable lines or massive height differences preventing the player from getting there.

Related:
- K_TerrainHasAffect now has a "bad only" check mode.
    - If true only report back for strong friction, any offroad, any damage, or stairjank.
2023-01-24 18:59:13 +00:00
toaster
da639fe65f Rework automap/minigen colours
- All pre-existing colours are now actually what the code says they should be for the 2.2 palette
- RR-specific colour changes.
    - Remove all noclimb-specific line colours
    - Render areas that can't be stepped up/down onto as walls
    - Add colours for
        - Tripwire (cyan, but not 0xff cyan)
        - Finish Line (grey)
        - FOF info (blue)
    - Use a low-intensity colour to signal possible offroad/hazard sector or stairjank step
- Rework to support drawing in multiple passes, so that information that is strictly more important (solid walls, finish line) will not be obscured at minimap resolution by nearby lines signalling offroad/stairjank

Related:
- Added K_TerrainHasAffect
    - Returns true if terrain has any properties which would affect the player's gameplay, false if not.
2023-01-23 18:38:52 +00:00
Eidolon
be021baa02 Add extern "C" in C++ to all headers 2022-12-30 19:26:16 -06:00
James R
8d39f0e60f Add springStrength and springStarColor to TERRAIN 2022-12-18 21:09:29 -08:00
James R
051b4f8935 Always use typedef name instead of struct name
mobj_t instead of struct mobj_s
2022-11-27 17:21:40 -08:00
James R
b5310a1f68 Add typedef.h
All typedefs for structs that were present in other header
files have been moved to here. (Except node_t because the
renderer and netcode both define node_t LOL.)
2022-11-27 17:21:40 -08:00
Sally Coolatta
8953cf54bb Speed Pads are now a TERRAIN effect
- Use `SpeedPad` to set the strength. Intended to be scaled like Trick Panels, so 1 for yellow, 2 for red, so on. Can use floating point.
- Use `SpeedPadAngle` to rotate the thrust direction. This is in the same system as map angles, so east is 0, north is 90, west is 180, and south is 270. Also accepts floating point.
- Speed Pad angle accounts for the flat alignment itself, as well.
- Like Sneaker and Trick Panels, the sector / line special are now deprecated.
2022-10-11 02:26:54 -04:00
Sally Coolatta
7559169144 Fix Trick Panel TERRAIN not working 2022-10-11 01:31:06 -04:00
Sally Coolatta
21dd68d392 Reimplement Invert Encore
Also add removal warnings for sector Sneaker Panels, Trick Panels, and fast-approaching deprecation warnings for sector Offroad.
2022-10-10 06:08:25 -04:00
Sally Coolatta
0b98417d07 Terrain overlays
Customizable state to display when standing / moving on terrain. Intended to pair with floor clipping.
2022-09-15 07:26:08 -04:00
Sally Coolatta
dea86d611e Add floor clipping for TERRAIN
Port of code from Heretic/Hexen, lets you make a texture look "deep" by offsetting the sprites and cutting them off. Doesn't impact hitboxes.
2022-09-14 01:16:19 -04:00
Sally Coolatta
c145d12db3 Use hashes for terrain loading 2022-09-06 19:39:27 +01:00
Sally Coolatta
c6f69e8f59 Add required speed percent 2022-01-02 21:42:20 -05:00
Sally Coolatta
da459a9c73 Add terrain splashes 2021-12-19 00:57:45 -05:00
Sally Coolatta
8667aeb620 Add footstep particles 2021-12-18 21:23:41 -05:00
Sally Coolatta
edef941a08 Add scale & color parameters to terrain particles 2021-12-18 18:30:19 -05:00
Sally Coolatta
b3d3135c58 Instead of embedding specific textures to be tripwire in hardcode ... make it a TERRAIN flag! 2021-12-09 15:54:22 -05:00
Sally Coolatta
35a72e56dc Implement splash & footstep blocks, commentate more of the code
They do nothing atm, but they can be set properly now :)
2021-12-09 14:45:59 -05:00
Sally Coolatta
b1ffaa99f8 Sync mobj->terrain
This should be enough I think to sync terrain up. The data structures can't change after the files have been loaded, so it should be good. Needs proper online testing though
2021-12-09 13:20:35 -05:00
Sally Coolatta
e212f947ad Implement the sector special-like effects
Offroad, sneaker panels, trick panels, and damaging floors can now be set via terrain.
2021-12-09 03:20:45 -05:00
Sally Coolatta
f7834054a5 You can now link terrain to textures 2021-12-09 01:55:29 -05:00
Sally Coolatta
53d777788a Friction value is used, implemented DefaultTerrain 2021-12-09 01:21:34 -05:00
Sally Coolatta
150faf9de6 Add terrain pointer to mobj_t 2021-12-09 00:56:05 -05:00
Sally Coolatta
a8615cac5b TERRAIN lump reading
Does not impact gameplay but hey pretty cool
2021-12-08 19:16:12 -05:00
Sally Coolatta
7c0088b752 TERRAIN lump mockup 2021-12-07 17:23:42 -05:00