Eric Robinson
5937734b85
Move *dat files to tables dir
2 months ago
Eric Robinson
bc0d60bff7
Add Player hasNoMana helper
3 months ago
Eric Robinson
7e8173e6ff
Add Player hasNoLife helper ( #8302 )
3 months ago
Andrettin
f6b4665e94
Make Player Class Data Data-Driven ( #8167 )
6 months ago
Doink Oink
c62a19e299
Party Information Panel ( #7877 )
7 months ago
Anders Jenbo
96112e675b
Handle loaded MPQ files in a map instead of bespoke globals ( #7887 )
11 months ago
Gleb Mazovetskiy
92e6d36b46
Lua: Add a player usertype
1 year ago
Eric Robinson
173c662723
Remove CalcPlrStaff()
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
b76feb2be3
Extract game mode out of init.cpp
...
Untangles some dependencies
1 year ago
Gleb Mazovetskiy
c31836eab8
Split up `engine.{h,cpp}`
...
Untangles dependencies by splitting up `engine.{h,cpp}` into 3 files:
1. `primitive_render`
2. `ticks` -- only contains `GetAnimationFrame` for now.
3. `GetWidth2` renamed to `CalculateSpriteTileCenterX` and moved to `levels/dun_tile.hpp`.
1 year ago
Gleb Mazovetskiy
a49b1f2d58
Extract Is{Any,None}Of out of engine.hpp
...
Untangles some of the dependencies
1 year ago
Eric Robinson
cfac786daf
Make invalid items unusable ( #7506 )
1 year ago
Gleb Mazovetskiy
f7a93f4cd3
Improve `dev.display.path()`
...
1. Do not draw foliage with the pause trn.
2. Display the number of steps.
3. If the tile is not walkable (allowed for destination tile), display
the number of steps in yellow.
1 year ago
Eric Robinson
8970eaa410
Cleanup panel code (Part 1) ( #7417 )
...
HPPer changed from 80 to 81. The globes have 81 rows of pixels that can be filled.
2 years ago
qndel
24f108f193
fix many typos ( #7322 )
2 years ago
Eric Robinson
9f6055a4a1
Clean up CalcPlrItemVals() ( #4052 )
2 years ago
obligaron
cd840513b9
Introduce Player::isLevelOwnedByLocalClient
2 years ago
obligaron
b42b72221f
Use PlayerAtPosition at more places
2 years ago
obligaron
fae6b3d817
Change Player::getId() and MyPlayerId to uint8_t
2 years ago
obligaron
75f68e1b8f
Introduce Player::occupyTile
2 years ago
ephphatha
55a21b7467
Move the base hit amount to a table in playerData.cpp
...
Bringing blockBonus along for the ride as it seems to fit (and renaming to align with the current convention)
3 years ago
ephphatha
6a8f4b12da
Get base block bonus from data struct instead of storing a copy
3 years ago
ephphatha
5d50b5520d
Add PlayerData lookup helper to avoid manual casts
...
This lets us remove the PlayersData global, and we can use a helper in the player class for convenience.
3 years ago
DakkJaniels
ef87664403
refactor cleaving: added in player method to determine if character can cleave and if an item is equipped.
3 years ago
ephphatha
8ed451b051
Move AddPlrExperience to class member function of Player
3 years ago
ephphatha
e6890cc5cc
Move MaxCharacterLevel to playerdat and add helpers for the various uses
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
cbf51cd5ab
`DrawStringFormatArg`: Use `std::variant`
3 years ago
Gleb Mazovetskiy
c19bfe87fa
Remove utils/stdcompat/algorithm.hpp
3 years ago
obligaron
578ce01432
Introduce Towner/Player/Object/Item/Monster::currentSprite/getRenderingOffset
3 years ago
ephphatha
4e3f46603a
Remove unused attribute _pMaxLvl
3 years ago
Eric Robinson
a2af3b5942
Refactor CreatePlayer() ( #6288 )
3 years ago
Anders Jenbo
8e7c29ecd3
Remove unused player property _pISplDur
3 years ago
Anders Jenbo
63277a842d
Clean up player packing
3 years ago
qndel
ddd0f1b051
dont always force staff recharge to change spell
3 years ago
qndel
c362808165
debug path command ( #6101 )
3 years ago
Anders Jenbo
5a12f7b0d5
Always spawn players in a valid location
3 years ago
obligaron
7985a9211d
Change Player::_pSplLvl to uint8_t
3 years ago
Anders Jenbo
e969a8ad01
Invert player to vision relation
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
obligaron
b87711bc08
Reintroduce Player::spellFrom to seperate teleport cursor from queued spell
3 years ago
obligaron
40bb3aeb45
Replace earflag with DeathReason
3 years ago
qndel
ce2ce86070
inspect players command
3 years ago
obligaron
8b64546b21
Move spectral elixir special logic from Player::CanUseItem to Item::isUsable
3 years ago
Eric Robinson
f75f66d54b
Add `playerdat` ( #5763 )
3 years ago
obligaron
6edae7cf6c
Ensure Spectral Elixir is only usable after black mushroom quest is finished
3 years ago
KPhoenix
d813f13700
`enum spell_id` -> `enum class SpellID`
3 years ago