Eric Robinson
5937734b85
Move *dat files to tables dir
2 months ago
Eric Robinson
e6032a69a8
Split control.cpp ( #8347 )
3 months ago
Eric Robinson
e5e6804e49
Add Monster hasNoLife helper ( #8304 )
3 months ago
Eric Robinson
bc0d60bff7
Add Player hasNoMana helper
3 months ago
Eric Robinson
7e8173e6ff
Add Player hasNoLife helper ( #8302 )
3 months ago
LP
f295e67b9f
Add multiplayer event logging
4 months ago
Gleb Mazovetskiy
842b23803f
SDL3: Use endianness swap helpers throughout
5 months ago
Anders Jenbo
a977a76392
clang-tidy: simple cleanup of monsters
7 months ago
Andrettin
be956f0608
Added Lua Bindings for Adding New Monster Types
7 months ago
Anders Jenbo
1c76897f2c
Apply simple const rules using clang-tidy
7 months ago
Anders Jenbo
6a4c5e42ec
Clean up const and shadow variables
7 months ago
Andrettin
62a45a26fc
Fixed the GetMissileType() switch-case for MonsterAIID::GoatRanged
7 months ago
staphen
5a3bdce186
Separate logic for enemy position from activeForTicks
10 months ago
staphen
308399e31e
Fix errors where Monster::enemy references garbage memory
10 months ago
Eric Robinson
be89b3bf34
Fix crash related to Monster placement
10 months ago
Eric Robinson
7d8d1bc36a
Fix Monster Line of Sight ( #7988 )
10 months ago
Eric Robinson
e538b457bf
Refactor Missile direction/frame group handling
10 months ago
staphen
f622ec1428
Fix typo: IsMonsterAvalible -> IsMonsterAvailable
10 months ago
Anders Jenbo
1fb58e4ff2
Load the correct number of monsters
10 months ago
Anders Jenbo
3b18dd35d9
Move some Hellfire differences to data files ( #7943 )
...
Co-authored-by: Gleb Mazovetskiy <glex.spb@gmail.com>
11 months ago
obligaron
3a1eb6bed7
Decouple Golems from Players and use SpawnMonster for Golem
11 months ago
obligaron
fee7f4749f
Introduce FindGolemForPlayer and use goalVar3 to track golem <-> player relation
11 months ago
obligaron
0ea60bf46c
Replace CMD_KILLGOLEM with CMD_MONSTDEATH
11 months ago
obligaron
ef5986f4df
Network: Decouple enemyId from max players
11 months ago
obligaron
6890ec3902
Decouple reserved golem slots from max players
11 months ago
staphen
371421bfd7
Check for MonsterMode::Death in isPossibleToHit()
1 year ago
Gleb Mazovetskiy
3e6b501d82
Fix pathfinding and increase player path limit
...
The previous implementation didn't behave quite like A-* is supposed to.
After trying to figure out what's causing it and giving up,
I've reimplemented it in a straightforward manner.
Now it seems to work a lot better.
Also increases maximum player path length to 100 steps.
We still only store the first 25 steps in the save file for vanilla
compatibility.
1 year ago
Gleb Mazovetskiy
ee16071761
Untangle pathfinding dependencies
...
1. Makes `path.cpp` concerned solely with the pathfinding algorithm.
2. Turns `path_test` into a standalone test.
1 year ago
Gleb Mazovetskiy
d94bc424df
`sgOptions` -> `GetOptions()`
...
In C++, globals initialization order accross translation units is not
defined. Accessing a global via a function ensures that it is initialized.
This will be needed for #7638 , which will statically initialize change
handlers after the Options object has been initialized.
1 year ago
Gleb Mazovetskiy
d7647d6c63
More dependency untangling
...
1. Moves more assets-related stuff from `init` to `engine/assets`.
2. Removes `SDL_audiolib` dependency from `soundsample.h`.
3. Cleans up some unused/missing includes.
1 year ago
Gleb Mazovetskiy
a7651f15d9
Extract `HeadlessMode` from `diablo.h`
...
Untangles some dependencies.
Many places that use `HeadlessMode` do not need all of `diablo.h`.
1 year ago
Gleb Mazovetskiy
b76feb2be3
Extract game mode out of init.cpp
...
Untangles some dependencies
1 year ago
Gleb Mazovetskiy
a49b1f2d58
Extract Is{Any,None}Of out of engine.hpp
...
Untangles some of the dependencies
1 year ago
staphen
6215de6e76
Compute monster toHit on the fly
1 year ago
Gleb Mazovetskiy
7b0558146e
Async load: Handle errors
1 year ago
staphen
6318c557de
Wake up the whole pack of Gargoyles when disturbed
1 year ago
Eric Robinson
d6c81898d6
Move Lazarus spawn code
1 year ago
Anders Jenbo
8dc6e0516a
Fix GetUniqueMonstPosition()
1 year ago
Eric Robinson
06528a58e7
Clean up PlaceUniqueMonster() position logic
1 year ago
Gleb Mazovetskiy
1a32a705fe
Replaces uses of doubles with floats
...
Looks like the KallistiOS Dreamcast SDK disables double support
by default: 495e77fd60/environ_dreamcast.sh (L16)
We don't really need doubles in this code.
The one place where we might have needed them is the SMK video
decoder, handled in a separate PR.
1 year ago
Eric Robinson
cdd22626b4
Fix Knockback direction ( #7093 )
2 years ago
Eric Robinson
109c3b165c
Bugfix/Refactor: Min-Max Damage Range Calculations ( #7022 )
2 years ago
Eric Robinson
6396af1ff5
Cleanup panel code (Part 2) ( #7421 )
2 years ago
KPhoenix
e58ba95a96
Fix Underministic Item Generation
2 years ago
qndel
24f108f193
fix many typos ( #7322 )
2 years ago
Eric Robinson
75f42cc41d
Fix monster light on knockback ( #7122 )
2 years ago
Gleb Mazovetskiy
624afafe58
Extract Crawl to a library
...
Also adds a test and a benchmark
2 years ago
Gleb Mazovetskiy
5ff588d402
Fix some compilation warnings
2 years ago
staphen
2ddcc7118a
Hiddens are no longer omniscient
2 years ago
matheusgomes28
7848ab731e
Splitting CheckInvPaste() into smaller functions ( #6984 )
2 years ago