Gleb Mazovetskiy
5355146d51
Use structured bindings
3 years ago
ephphatha
14639cd096
Replace _pNextExper with getter method
...
No real need to persist this value
3 years ago
ephphatha
da76e131e4
Add getter/setter for character levels to ensure _pNextExper stays synced
3 years ago
ephphatha
d92d152576
Use unsigned type for character levels
3 years ago
Gleb Mazovetskiy
8c1a847f41
Remove utils/stdcompat/string_view.hpp
3 years ago
Gleb Mazovetskiy
c19bfe87fa
Remove utils/stdcompat/algorithm.hpp
3 years ago
Gleb Mazovetskiy
74755c8be7
Remove utils/stdcompat/cstddef.hpp
3 years ago
ephphatha
4e3f46603a
Remove unused attribute _pMaxLvl
3 years ago
Gleb Mazovetskiy
8101e2c0ba
Add `c_any_of` and friends
...
Adds handy helpers for performing algorithms on the entire container.
They're prefixed with `c_` for container.
This naming convention is identical to some popular C++ libraries, such
as Abseil.
3 years ago
obligaron
0eda8d9367
Convert town portal level type to vanilla hellfire logic
3 years ago
Anders Jenbo
09595cde5e
Only apply relevant oils in multiplayer
3 years ago
Anders Jenbo
8e7c29ecd3
Remove unused player property _pISplDur
3 years ago
Anders Jenbo
63277a842d
Clean up player packing
3 years ago
staphen
e39c19f85e
Only sync monster animations after both monsters and missiles are loaded
3 years ago
staphen
60e3c32437
Sync monster animation data after loading Stone Curse missiles
3 years ago
staphen
5be3d76104
Validate item prices and revert oil effects in Diablo
3 years ago
obligaron
aa354849ee
Fix stone curse shows the wrong animation & infinite petrify
3 years ago
Gleb Mazovetskiy
4fa3732526
Add missing <cstdint> includes
...
Done with the following script:
```ruby
Dir["Source/**/*.{h,c,cc,cpp,hpp}"].each do |path|
v = File.read(path)
next if !v.include?("uint32_t") || v.include?("cstdint")
lines = v.lines
line_num = if lines[2].start_with?(" *")
lines.index { |l| l.start_with?(" */") } + 3
else
3
end
lines.insert(line_num, "#include <cstdint>\n")
File.write(path, lines.join(""))
end
```
then fixed-up manually
3 years ago
ephphatha
3a7ae732cd
use unsigned types for item seeds
3 years ago
obligaron
2570c2d240
Don't recalculate player position when loading a game
3 years ago
Anders Jenbo
13b91b77fc
Fix conversion of old automaps
3 years ago
Anders Jenbo
35442c8781
Fully skip dLight loading
3 years ago
staphen
a74d041041
Reenable lights for active monsters when loading level
3 years ago
staphen
45da8b2295
Remove unique monster's light when no corpse is left behind
3 years ago
obligaron
7985a9211d
Change Player::_pSplLvl to uint8_t
3 years ago
Anders Jenbo
12fa487cb5
Fix build
3 years ago
qndel
d97f265cb1
light fix
3 years ago
Anders Jenbo
e969a8ad01
Invert player to vision relation
3 years ago
Anders Jenbo
a997f8d597
Only update vision in dungeon
3 years ago
Anders Jenbo
13c5c09990
Clean up Light related naming
...
A few are left unchanged as they will be removed in a later commit
3 years ago
Anders Jenbo
ec9d1b5550
Rename _oLight to applyLighting
3 years ago
Anders Jenbo
a1df95d580
Do not manipulate lights when saving and also correct save state
3 years ago
Anders Jenbo
779f16280c
Consistently use uint8_t for lighting values
3 years ago
obligaron
a0fca12d22
Only reset _oVar1 for dynamic lights
3 years ago
ThomasChr
c91feb71f9
make light objects unseen when saving level change data, because level change data (instead of real save data) does not save light source and if the light objects will be marked as seen there lights won't be created and they stay dark
3 years ago
obligaron
b87711bc08
Reintroduce Player::spellFrom to seperate teleport cursor from queued spell
3 years ago
Eric Robinson
81e3c7abaa
Remove fixed bugfix comments, apply golem fix
3 years ago
obligaron
eeca953615
Introduce UpdateHellfireFlag to set missing CF_HELLFIRE flag
3 years ago
Gleb Mazovetskiy
957bd03b98
Remove `FMT_COMPILE` in "cold" places
...
Removes most `FMT_COMPILE` calls.
`FMT_COMPILE` results in better performance but larger code size.
Removes `FMT_COMPILE` calls for places that are called infrequently,
i.e. not on every frame.
RG-99 binary size reduced by ~4 KiB.
3 years ago
Eric Robinson
f75f66d54b
Add `playerdat` ( #5763 )
3 years ago
Gleb Mazovetskiy
98294e0ad5
Optimize `MissileData`: 32 bytes -> 24
...
23 bytes used, 1 spare byte in the padding.
3 years ago
KPhoenix
d813f13700
`enum spell_id` -> `enum class SpellID`
3 years ago
KPhoenix
7947b99511
Implement new enum class
3 years ago
Eric Robinson
ef3a57b7d9
`enum spell_type` -> `enum class SpellType` ( #5674 )
3 years ago
Eric Robinson
30c1991039
`enum _mai_id` -> `enum class MonsterAIID` ( #5683 )
3 years ago
DakkJaniels
d683039bdd
stop shaking camera if dead diablo loaded from save. ( #4149 )
3 years ago
Gleb Mazovetskiy
6d274c9547
`UNPACKED_SAVES`: Saves without MPQs
...
Reduces rg99 binary size by ~70 KiB.
3 years ago
KPhoenix
8db521727d
`enum missile_id` -> `enum class MissileID`
...
Changes `enum missile_id` to `enum class MissileID`
3 years ago
Anders Jenbo
a29fc3a074
Correct casing for Player::isWalking()
3 years ago
Gleb Mazovetskiy
ec12d7ce44
Player: Optimize to save 40 bytes
3 years ago