qndel
ef5a4de227
typos + code cleanup
4 years ago
staphen
f9e01f25c4
Consistently send network messages when monsters are damaged
4 years ago
obligaron
2493f06116
ActorPosition: Remove offset, offset2 and velocity
4 years ago
obligaron
5913783826
Add walking offset calculation to ActorPosition (and validate it)
4 years ago
obligaron
49c7ea71af
Simplify SyncLightPosition
4 years ago
Gleb Mazovetskiy
961866e1c4
CLX: A new graphics format
...
The format is almost identical to CL2, except it uses the frame header
to store frame width and height instead of 5 32-line offsets.
This means we always have access to frame dimensions, so we can use it
as an on-disk format for our graphics as well.
Additionally, we may be able to optimize the rendering even more
in the future now that we have guaranteed knowledge of frame dimensions.
4 years ago
Cesar Canassa
1bdee4523b
✨ Adds ignoreMovingMonsters to MonsterAtPosition ( #5118 )
4 years ago
ephphatha
9309f2fe4f
Add enum to represent monster sound effects
4 years ago
Stephen C. Wills
e364b7488c
HitMonster() cleanup ( #5147 )
4 years ago
Cesar Canassa
75756c518f
♻️ Send the monster reference to the monster AI functions ( #5113 )
4 years ago
Cesar Canassa
07ff79cbdc
♻️ MonsterAttackPlayer receives monster and player as references ( #5111 )
4 years ago
ephphatha
975eb3674b
Add helper to check if a monster belongs to a player
...
Co-authored-by: Anders Jenbo <anders@jenbo.dk>
4 years ago
Cesar Canassa
f12e636abb
♻️ Remove monsterId from AiPlanPath
4 years ago
Cesar Canassa
800d1665be
♻️ Remove monsterId from RandomWalk2
4 years ago
Cesar Canassa
c58e8b0353
♻️ pass monster by reference on MonsterHitMonster
...
- Sending the monster by reference instead of id
- Changed the golem check to be equal to StartDeathFromMonster
- Changed the parameters order so that the attacker comes first
4 years ago
Cesar Canassa
c79b15df1a
♻️ Remove monsterId from StartDeathFromMonster ( #5072 )
4 years ago
Andrew James
2786a65e7b
Tidy up ActivateSkeleton and take monster by reference ( #5080 )
...
* Take reference in OperateSarcophagus
* Use monster reference instead of pointer in ActivateSkeleton
* Clean up ActivateSkeleton
4 years ago
Cesar Canassa
82caea1ca4
♻️ Remove monsterId from RoundWalk
4 years ago
Cesar Canassa
a0cd65e082
♻️ Remove monsterId from M_SyncStartKill
4 years ago
Cesar Canassa
c6561596b5
♻️ Remove monsterId from CheckReflect ( #5071 )
4 years ago
Cesar Canassa
f4fd4b1644
♻️ Remove monsterId from AiPlanWalk ( #5073 )
4 years ago
Anders Jenbo
d1189388f5
Use user by reference
4 years ago
Gleb Mazovetskiy
04c3d85179
Remove `MAX_PATH`
...
Rather than using the Windows-like `MAX_PATH`, what we really want is 2
things:
1. Maximum path of a file in an MPQ. This is now `MaxMpqPathSize`.
2. Max size for the known monster paths. This is now 64 for sounds and
TRNs, which is more than enough (picked arbitrarily).
4 years ago
Anders Jenbo
16b65120ea
Clean up LevelMonsterTypes related code
4 years ago
Gleb Mazovetskiy
7ad0ec925f
Reduce sizes of Monster (goal)Vars
...
sizeof(Monster): 168 -> 144
4 years ago
Mikołaj Piróg
262fa9ac2d
Rename MonsterData members ( #5000 )
4 years ago
Mikołaj Piróg
c38db60d0b
Remove monster name member from monster struct ( #4986 )
4 years ago
Gleb Mazovetskiy
f460405818
Fix warnings
...
Note that in test/utf8_test.cpp, the first comparison was redundant.
For a signed char, this iterates from -128 to -1, unsigned from 0 to 128.
4 years ago
Gleb Mazovetskiy
304c62d943
Fix a HeadlessMode typo in monster.cpp
...
Fixes #4990
4 years ago
Anders Jenbo
ac2bf9aaac
Limit what gets called in headless mode
4 years ago
Cesar Canassa
ce349789cf
♻️ Refactor M_StartKill to receive a Monster reference ( #4943 )
4 years ago
Cesar Canassa
f0d1d58499
♻️ Remove monsterId from delta_kill_monster
4 years ago
Cesar Canassa
2c558a7aa0
♻️ Adds distanceToEnemy method
4 years ago
Cesar Canassa
fcd5928846
♻️ Refactor RandomWalk to receive a Monster reference ( #4905 )
4 years ago
Andrew James
d9d1385f6c
Take const reference in DirOK ( #4985 )
4 years ago
ephphatha
fe62359dbd
Add helper to map unique types to monster types
4 years ago
ephphatha
1337ff6ea2
Add check if a monster potentially has leashed minions
4 years ago
ephphatha
ff1e67ae73
Rework PlaceGroup to not use UniqueMonsterPack enum
4 years ago
ephphatha
b60bdf8b9b
Unset leader of minions when the leader dies
4 years ago
ephphatha
4fef842b0b
Remove use of ID/index from PlaceGroup
...
use getId helper for leader id
Co-authored-by: Anders Jenbo <anders@jenbo.dk>
4 years ago
ephphatha
1e0f2c149c
Add getLeader helper for monsters in a pack
4 years ago
Gleb Mazovetskiy
33ac2cca8e
♻️ Make Monster counters `size_t`
4 years ago
Anders Jenbo
38113c0ad8
Convert monster_goal in to a scoped enum
4 years ago
Anders Jenbo
3d08f951d6
Clean up use of miniwin
4 years ago
Cesar Canassa
e2ebac0b56
♻️ Remove monsterId from HitMonster and MonsterHitMonster
4 years ago
Gleb Mazovetskiy
9928d691e4
Remove `MonsterData#has_trans`
...
1. Removes the field because it is redundant, checks for
`TransFile != nullptr` instead.
2. Fixes the missing TRN on Bone Demon, a stronger variant of Skullwing.
4 years ago
staphen
d7b5edb8d0
Fix monster goal variable references
4 years ago
Anders Jenbo
6a8fd04067
Use player by references ( #4938 )
4 years ago
Gleb Mazovetskiy
53975d9264
monstdat: Simplify paths
...
1. Remove `Monsters\` from `sndfile` and `TransFile`.
2. Where `sndfile` is the same as `GraphicType`, set `sndfile` to
`nullptr`.
4 years ago
Gleb Mazovetskiy
197e1180b2
Add StrCat and StrAppend
...
Adds simple string / integer concatenation functions.
Many of the uses of `fmt::format` are simply concatenation
of a few strings and integers.
`StrCat` is an easier-to-read alternative to such uses of `fmt`.
4 years ago