Marcin Kurczewski
59d31d848b
game-flow: use common GFS naming
2025-01-23 15:35:55 +01:00
Marcin Kurczewski
98bfc05701
tr1/game-flow: merge GFS_LOOP_CINE to GFS_LOOP_GAME
2025-01-23 13:51:35 +01:00
Marcin Kurczewski
52a9613196
tr1/game-flow: merge GFS_STOP_GAME to GFS_LOOP_GAME
2025-01-23 13:51:35 +01:00
Marcin Kurczewski
ac40c7aa8f
tr1/game-flow: merge GFS_START_CINE to GFS_START_GAME
2025-01-23 13:51:35 +01:00
Marcin Kurczewski
1df5d5e3d4
tr1/game-flow: fix story so far exiting early
...
Resolves #2360 .
2025-01-23 13:51:35 +01:00
Marcin Kurczewski
d03ea672cd
tr1/inv-ring: keep arrows and header when rotating
...
Resolves #2352 .
2025-01-22 13:21:49 +01:00
Marcin Kurczewski
ec1dbfa194
tr1/inv-ring: fix healthbar drawn during rotations
...
Resolves #1991 .
2025-01-22 13:07:26 +01:00
Marcin Kurczewski
3fe0e6228b
shell: consolidate support for exit fades
...
Resolves #2348 .
2025-01-21 23:47:17 +01:00
Marcin Kurczewski
83758c0c1d
docs: update
2025-01-21 17:46:27 +01:00
Marcin Kurczewski
f518862a77
tr1/creature: do not treat scion 3 as hostile
...
Resolves #2329 .
2025-01-19 12:28:14 +01:00
lahm86
d44804dfdd
tr1/level: reset static mesh mesh count
...
This ensures that if a static was previously used as an animating
sprite (with a negative mesh count) it will be reset to 1 on the
next load.
Resolves #2309 .
2025-01-18 11:23:36 +00:00
Marcin Kurczewski
2f647000c6
game-strings: move level titles to game strings
2025-01-17 18:35:39 +01:00
Marcin Kurczewski
f7a21610ad
game-strings: improve object naming layout
2025-01-17 18:35:39 +01:00
Marcin Kurczewski
c621cab880
overlay: fix pausing pickups
...
Resolves #2319 .
2025-01-17 18:07:32 +01:00
Marcin Kurczewski
46020df42d
level: fix sprites-statics collisions
...
Resolves #2310 .
2025-01-17 14:20:38 +01:00
Marcin Kurczewski
60078d30c3
gfx: fix wireframe mode discarding transparent pixels
...
Resolves #2315 .
2025-01-16 23:42:20 +01:00
Marcin Kurczewski
86c52b566b
cmd: fix /kill sometimes freezing the game
...
Resolves #2297 . The previous implementation was too frugal in its size
which led to an infinite loop bug when an item was deemed unkillable.
2025-01-14 23:21:40 +01:00
Marcin Kurczewski
6667c1a1eb
input: allow repeating left/right menu arrows
2025-01-14 23:20:18 +01:00
lahm86
816d7bd90d
tr1/option/option_sound: fix volume arrows display control
...
This avoids hiding either of the arrows permanently when one volume is
at the maximum and the other at the minimum.
Resolves #2295 .
2025-01-14 22:15:14 +00:00
Marcin Kurczewski
13b8297621
camera: fix Lara's vision range
...
Resolves #2276 .
2025-01-14 10:53:34 +01:00
Marcin Kurczewski
8ba4fd0cb4
phase/demo: small fixes
...
- Fixes issuing commands like /play when paused in demos
- Fixes small interpolation glitches during demo fade-outs
- Adds missing changelog documentation
2025-01-13 23:03:06 +01:00
Marcin Kurczewski
8889892fff
docs: update
2025-01-13 19:05:05 +01:00
Marcin Kurczewski
f825c89df6
tr1/phase/demo: rewrite to use new phaser
...
Resolves #2217 .
2025-01-13 19:04:14 +01:00
lahm86
6db2afbd02
tr1/data: change wolf eye colour
...
This replaces the transparent pixels in wolves' eyes to black instead
of off-white.
Resolves #2282 .
2025-01-13 16:47:38 +00:00
Marcin Kurczewski
e5436dcae1
tr1/option/compass: use stats-dialog
2025-01-12 20:08:16 +01:00
lahm86
603cc5d647
tr1/objects/common: fix using key items on consumed slots
...
This fixes being able to re-use a key on already used keyholes, using a
puzzle item while Lara is still in the placement animation, and the
lead bar while she is still converting another one.
Resolves #2256 .
2025-01-11 21:33:45 +00:00
lahm86
9abf5802b1
tr1/spawn: fix Lara blood spawn position
...
This fixes assigning a blood splat to a bone beyond Lara's data and
introduces proper random positioning for it.
2025-01-11 14:12:51 +00:00
Marcin Kurczewski
3362551b7b
phase/pause: improve ps1 compatibility
...
Resolves #2248 .
2025-01-10 18:14:44 +01:00
Marcin Kurczewski
65bb6b5505
phase/pause: move to libtrx
2025-01-08 23:24:44 +01:00
Marcin Kurczewski
09b22febe7
tr1/phase/pause: do fade out internally
...
This is to simplify the fade effect lifecycles. As a consequence, this
changes the behavior of unpausing to wait a couple of frames before
yielding the control to the player, but I think it's acceptable.
2025-01-08 19:59:40 +01:00
Marcin Kurczewski
5b9796b4d7
clock: simplify the API
2025-01-08 19:59:40 +01:00
Marcin Kurczewski
d6be7a46b5
tr1/phase/pause: use ui module
2025-01-05 20:55:49 +01:00
lahm86
67db0a2fe0
tr1/lara/control: fix testing triggers too early
...
This replicates how g_TriggerIndex used to work for Lara, by storing
her sector before calling any collision routines, and then passing
that sector to be tested for triggers.
Resolves #2208 .
2025-01-04 12:29:55 +00:00
Marcin Kurczewski
adc025d648
game-flow: use consistent naming
2025-01-03 14:03:35 +01:00
Marcin Kurczewski
7af50cbce3
stats: respect turbo cheat
...
Resolves #2167 .
Now that 5785b0e65
has eliminated the clock drift problems, we can
return to simple frame-based timer increments.
2024-12-31 14:31:11 +01:00
Marcin Kurczewski
3e2d54c3c5
tr2/viewport: allow players to change fov
...
Resolves #2177 .
2024-12-31 13:59:40 +01:00
Marcin Kurczewski
f43393a199
tr2/input: add TR3+ sidesteps option
...
Resolves #2111 .
2024-12-30 13:57:19 +01:00
Marcin Kurczewski
26d1e0b01c
cmd/demo: add demo_num argument
2024-12-28 18:04:43 +01:00
Marcin Kurczewski
f8bda9ed08
demo: make only esc and action interrupt the demos
2024-12-28 18:04:43 +01:00
lahm86
ea6a84bc93
tr1/effects/flame: fix killing effect twice in fly cheat
...
This ensures we exit the flame control early if Lara is on fire but
also in the fly cheat, so preventing potentially killing the effect
again if she is also at water height on the same frame.
Resolves #2116 .
2024-12-26 19:18:57 +00:00
lahm86
689f567158
tr1/phase/phase_demo: disable swim cancel during demos
...
Similar to disabling other enhanced movement options, we now disable
responsive swim cancellation to avoid desync issues in demos.
Resolves #2113 .
2024-12-26 12:34:22 +00:00
lahm86
d016288ed4
libtrx/rooms/common: append commands to existing triggers
...
This will handle cases in old levels where a sector has multiple
trigger entries. Officially only one is supported, but it seems old
levels use this approach to add dummy triggers for such things as
bridges on top of pre-existing triggers. This would have worked with
the old g_TriggerIndex approach because of the way floor height tests
were performed. Instead now, if we detect a trigger but the sector
already has one, we simply append the new commands onto the existing
trigger.
Resolves #2114 .
2024-12-26 12:28:59 +00:00
Marcin Kurczewski
59bf9b31e0
misc: fix ricochet spelling
2024-12-22 22:39:23 +01:00
Marcin Kurczewski
998b56c2f8
Merge branch 'stable' into develop
2024-12-21 16:07:22 +01:00
Marcin Kurczewski
a761745736
docs/tr1: release 4.7.1
2024-12-21 16:06:29 +01:00
lahm86
25e6b41689
tr1/ui/widgets/paginator: hide UI for empty text
...
This will automatically hide the paginator UI if the text content is
empty.
Resolves #2097 .
2024-12-21 16:05:48 +01:00
Marcin Kurczewski
0c18450d6c
tr1/overlay: fix showing controls unbind bars
2024-12-21 16:05:17 +01:00
Marcin Kurczewski
7a86907d6b
tr1/input: fix unbind keys for controllers
...
Resolves #2090 .
2024-12-21 16:05:05 +01:00
lahm86
aa9077dd2e
tr1/carrier: fix initial sector selection for falling items
...
This ensures that if an item is dropped exactly at the height of a
vertical portal, we get the room just above that portal first to ensure
that later the item is placed in the correct room, and hence drawn
there.
Resolves #2088 .
2024-12-21 16:04:44 +01:00
lahm86
8cbe391612
tr1/ui/widgets/paginator: hide UI for empty text
...
This will automatically hide the paginator UI if the text content is
empty.
Resolves #2097 .
2024-12-21 15:01:15 +00:00