Commit Graph
141 Commits
Author SHA1 Message Date
DakkJaniels 313cdb853c GetManaAmount - fix usage of pMaxManaBase
I don't think this ever comes up because no spells have an sManaCost of 255, however _pMaxManaBase is stored as fixed point, so it should be shifted before use.

But to be honest, I'm not even sure what it is trying to do here. Was sManaCost == 255 supposed to indicate that it was going to use all the player's mana? Why was it cast to a BYTE before using it? Did they intend to limit the manage usage to 255 and just screwed up? I originally saw this logic in Devilution, and found it because the Middle Earth mod had a slight change here, where it used pMana (maybe because they thought it was intended to be a spell that used all the player's mana?) Also, I saw that in 1.07, Ghidra saw `ma` as a byte, not an int as written in Devilution - I wonder if that's where the cast came from? In the ME Mod version, it sees `ma` as an int.
2022-04-16 05:06:28 +02:00
staphen e6182709d1 Allow casting Town Portal, Teleport, and Guardian scrolls from inventory 2022-04-03 23:37:00 +02:00
ephphatha 92fcdda3a7 Refactor OnHealOther to operate on Player references 2022-03-30 00:49:56 +02:00
ephphatha 25c2123849 Change cursor after acknowledging attempt to cast spell
This matches the behaviour of other targeted spells, however the mana is wasted because it is spent when readying the spell.
2022-03-30 00:49:56 +02:00
qndel be0b79f9f5 Add IsWallSpell helper 2021-12-07 12:00:52 +01:00
ephphathaandAnders Jenbo b12de6fe12 Use scoped enum for Direction
Identified and removed an instance of Direction being used as an argument for a bool parameter

Removed a single-use temporary variable being cast from sprite frame to direction to size_t

Co-authored-by: Anders Jenbo <[email protected]>

Fix alignment of WalkSettings array
2021-09-12 02:27:47 +02:00
Juliano Leal Goncalves 940a120bf9 ♻️ Replace 'ViewX' and 'ViewY' globals with single 'ViewPosition' 2021-09-04 18:06:28 -04:00
Siddharth singh chouhan 18125aac6a Move documentation from implementations to declarations #2735 (#2782) 2021-09-02 10:05:33 +02:00
Juliano Leal Goncalves bbf529c65a 🚚 Rename 'PlayerStruct' to 'Player' 2021-08-30 06:44:18 +02:00
Anders Jenbo 4044fadeb5 Clean up some players references 2021-08-30 03:26:17 +02:00
Anders Jenbo d7c6d8b189 Use proper Direction type for AddMissile midir 2021-08-25 20:24:45 +02:00
Anders Jenbo 5be9b1529e Do not use mana in god mode 2021-08-19 20:36:12 +02:00
qndel bb4d087d60 fix resurrect (#2577) 2021-08-12 08:21:52 +02:00
vladtepesch 0e56e52c75 fixes casting level 0 spell says "not enough mana" (#2568) 2021-08-11 19:52:00 +00:00
BC Ko 221718250f cleanup manual value clamping: spells.cpp GetManaAmount() (#2556) 2021-08-10 10:39:26 +02:00
Anders Jenbo 7effa1a931 Merge pull request #2433 from diasurgical/player 2021-07-20 22:59:25 +02:00
Anders Jenbo de0b3a38b8 Apply code style 2021-07-20 02:51:39 +02:00
Anders Jenbo e5fc7fd17c Move remaning symbols in to anonymous namespaces 2021-07-20 02:51:39 +02:00
Anders Jenbo 9c4e34f988 Player by reference 2021-07-20 01:35:56 +02:00
Anders Jenbo 8ba3bbb6a4 Have PosOkPlayer take PlayerStruct as input (#2430) 2021-07-20 00:30:35 +01:00
Anders Jenbo 96bf75b502 Rename player globals 2021-07-08 02:01:14 -07:00
Anders Jenbo 7e737cfa96 Merge remote-tracking branch 'refs/remotes/devilution/master' 2021-07-03 01:44:45 +02:00
Juliano Leal Goncalves cbb84199c2 ♻️ Replace Point addition with 'Point + Displacement' 2021-06-28 20:37:44 -07:00
Anders Jenbo 0f2ad469ea ♻️Clean up variable initialization 2021-06-27 14:58:51 -07:00
ephphatha 357f6f1dc3 Move RNG functions to their own header/source files 2021-06-27 03:09:41 -07:00
Anders Jenbo 35b2aa4947 ♻️Unfold a few functions 2021-06-24 15:11:09 -07:00
Anders Jenbo ee7b32d8f6 Player by reference part 3 2021-06-24 00:53:09 +02:00
Vladimir Olteanu 95643029e3 Refactor missiles.cpp
Use Point wherever possible
Make some functions static (not exhaustive)
Reduce excessive indentation (not exhaustive)
Declare variables as needed (not exhaustive)
2021-06-21 12:10:37 -07:00
Gleb Mazovetskiy f9f301b054 🚚 engine.h: Extract Point, Direction, clamp
`engine.h` is getting quite bloated. Moves this code to their own files.
2021-06-21 01:36:20 -07:00
Vladimir Olteanu e9a773f487 Make GetSpellBitmask constexpr 2021-05-25 11:41:30 +02:00
Juliano Leal Goncalves dd9e05222d ♻️ Change 'PosOkPlayer' to take a 'Point' instead of 2 separate ints 2021-05-25 04:09:02 +02:00
Juliano Leal Goncalves d55cd99dd5 🚚 Rename 'direction' enum to 'Direction' 2021-05-24 04:46:08 +02:00
Anders Jenbo 0c2042fa52 ♻️ Player by reference
Update Source/items.cpp
Update Source/lighting.cpp
Update Source/pack.cpp
asd


ads


as
2021-05-13 01:47:46 +02:00
thebigMuh f3d87730ee Reenabling Elemental spell for Hellfire (#1901) 2021-05-09 12:48:40 +02:00
Juliano Leal Goncalves 39736e2538 ♻️ Pass 'PlayerStruct' pointer to 'ClrPlrPath' 2021-05-05 00:38:58 +02:00
Anders Jenbo 2bd13451a1 ♻️Apply point positioning to all remaning entities 2021-04-25 01:25:48 +02:00
Anders Jenbo 7912e510f0 🎨 Clean up overuse of SDL types 2021-04-24 17:07:07 +02:00
Anders Jenbo 275404029e ♻️Cleanup player temp variables 2021-04-24 17:07:07 +02:00
Anders Jenbo e4cfad3196 ♻️Use points instead of individual fileds for player structure 2021-04-24 04:46:08 +02:00
Anders Jenbo a32ac83090 🎨 cleanup trivial trype comparisons 2021-04-23 02:48:25 +02:00
Anders Jenbo 593c6a6f17 🎨 Drop unused param and rename random_ to GenerateRnd 2021-04-22 00:08:19 +02:00
Jmgr 1d84156509 Simplify bitshift divisions/multiplications 2021-04-21 05:31:17 +02:00
Psojed b31061ff83 Apply Sorcerer's mana cost reduction bonus only in Hellfire (#1613) 2021-04-19 13:09:43 +02:00
Anders Jenbo 61d15e23db 🎨 Apply direction enum to monsters and relations
Missiles _mimfnum is being used for a lot more then just directions and
can also be a 16 degree direction so can't apply enum verbs and
restricitons to it in most cases. This in turns also affects SetMissDir
and some other functions that have to stay int.
2021-04-18 23:13:03 +02:00
qndel ade4d1fb64 codefix in resurrect 2021-04-18 20:50:13 +02:00
Anders Jenbo 997c1dba55 🚚 Split up all.h in to proper header relations 2021-04-16 01:04:54 +02:00
Juliano Leal Goncalves 28ad9d43c5 🎨 Rename 'plr_class' enum to 'HeroClass'
Members were renamed as well for readability.
2021-04-12 20:00:53 +02:00
Juliano Leal Goncalves 7d95bfed39 ♻️ Convert 'plr_class' to a scoped enumeration 2021-04-12 20:00:53 +02:00
Anders Jenbo 61244c4d93 ♻️ Rearange and apply more enums 2021-04-10 05:24:01 +02:00
Anders Jenbo 20186e0370 🎨 Replace TRUE/FALSE with true/false
fix


Fix


fix
2021-04-09 15:13:02 +02:00