Commit Graph
535 Commits
Author SHA1 Message Date
Gleb Mazovetskiy 5355146d51 Use structured bindings 2023-08-29 12:56:49 +01:00
ephphatha e6890cc5cc Move MaxCharacterLevel to playerdat and add helpers for the various uses 2023-08-24 05:46:44 +02:00
ephphatha 14639cd096 Replace _pNextExper with getter method
No real need to persist this value
2023-08-24 05:46:44 +02:00
ephphatha da76e131e4 Add getter/setter for character levels to ensure _pNextExper stays synced 2023-08-24 05:46:44 +02:00
ephphatha d92d152576 Use unsigned type for character levels 2023-08-24 05:46:44 +02:00
Gleb Mazovetskiy 8c1a847f41 Remove utils/stdcompat/string_view.hpp 2023-08-14 09:59:14 +01:00
Gleb Mazovetskiy c19bfe87fa Remove utils/stdcompat/algorithm.hpp 2023-08-14 01:54:29 +01:00
Gleb Mazovetskiy 62d067b653 Remove utils/stdcompat/abs.hpp 2023-08-14 01:54:29 +01:00
Gleb Mazovetskiy 74755c8be7 Remove utils/stdcompat/cstddef.hpp 2023-08-14 01:54:29 +01:00
qndel 4884da895c rename AddWarpMissile -> AddPortalMissile 2023-08-12 18:10:22 +02:00
qndel 398d09477a rename AddInTownPortal -> AddPortalInTown 2023-08-12 18:10:22 +02:00
staphen cc5261fa15 Support for ears in PlayerNetPack 2023-07-06 02:47:29 +02:00
Anders Jenbo efa51993e3 Split network player sync and hero save file 2023-06-24 04:18:14 +02:00
staphen 9381251b9d Fix net validation of durability for items without durability 2023-06-18 06:26:22 +02:00
Anders Jenbo 89a677d0cb Validate item modifier ranges 2023-06-16 15:59:47 +02:00
Anders Jenbo 23e479e9aa Remove unused item properties from network 2023-06-16 15:59:47 +02:00
Anders Jenbo f1c447c7f2 Do not allow bosted item stats in base game 2023-06-16 03:59:37 +02:00
Anders Jenbo 67ea5bcbe6 Sync monster light when position is gotten from the network 2023-06-03 21:07:22 +02:00
qndel ddd0f1b051 dont always force staff recharge to change spell 2023-05-28 16:09:01 +02:00
ephphatha 9987bb6be2 Avoid unnecessary item initialisation and copy 2023-05-12 06:27:12 +02:00
ephphatha 6b21728440 Inline single use function InvPutItem 2023-05-12 06:27:12 +02:00
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
2023-05-10 13:50:12 +01:00
ephphatha 03e35988f1 Dedupe OnRespawnItem/OnSpawnItem
Both methods were exactly the same apart from the use of temporaries for swapped message params.
2023-05-07 13:33:40 +02:00
ephphatha 3a7ae732cd use unsigned types for item seeds 2023-05-06 18:02:54 +02:00
obligaron bf86114ec3 Sync learned/changed spells 2023-04-24 18:19:27 +02:00
Anders Jenbo e969a8ad01 Invert player to vision relation 2023-04-21 21:25:19 +02:00
obligaron 1a3e72bf17 Unify normal casting and casting from inventory 2023-04-17 03:22:50 +02:00
obligaron 40bb3aeb45 Replace earflag with DeathReason 2023-04-14 23:34:54 +02:00
staphen 151564f46d Remove optimization that skips quest sync at game start 2023-04-09 20:50:55 +02:00
Łukasz 2ec0603896 use Points instead of x, ys in GetRndObjLoc (objects.cpp) and portal-related functions (portal.cpp) (#5897)
Nice cleanup, thanks.
2023-03-18 21:46:00 +01:00
obligaron 55bf5348c4 Multiplayer: Prevent trapped doors to fire twice 2023-02-27 05:03:57 +01:00
Gleb Mazovetskiy ca3ba14f82 msg.cpp: Always set spellFrom
Note that in a few places it is always being set to 0.

This is probably wrong and should instead be passed in the network
message as a parameter.

For now, this at least fixes the crash observed in #5791.
2023-02-15 21:52:03 +01:00
Gleb Mazovetskiy ebcd6b222d Optimize SpellData size: 40 bytes -> 24 2023-02-10 10:51:06 +00:00
obligaron 5e9801f0cf Sync Quest._qmsg 2023-02-07 08:02:38 +01:00
Gleb Mazovetskiy b61dac853b Add GetSpellData(SpellID) 2023-02-05 12:12:48 +00:00
KPhoenix d813f13700 enum spell_id -> enum class SpellID 2023-02-05 10:24:58 +00:00
Eric Robinson 049f75515b Fix bug in ef3a57b7 (#5732) 2023-01-29 02:59:30 +01:00
Eric Robinson ef3a57b7d9 enum spell_type -> enum class SpellType (#5674) 2023-01-28 22:25:37 +01:00
Eric Robinson 30c1991039 enum _mai_id -> enum class MonsterAIID (#5683) 2023-01-28 00:10:15 +01:00
Gleb Mazovetskiy 068fdac7c1 Do not use PKWare with no MPQs + NONET
Reduces RG99 binary size by 12 KiB
2023-01-23 01:51:16 +00:00
c99f7cf644 Floating numbers (#5639)
Co-authored-by: qndel <[email protected]>
Co-authored-by: Stephen C. Wills <[email protected]>
2023-01-22 07:20:10 +01:00
KPhoenix 8db521727d enum missile_id -> enum class MissileID
Changes `enum missile_id` to `enum class MissileID`
2023-01-18 17:17:25 +00:00
staphen 0c4015869c Remove unused _mdir variable from monster deltas 2023-01-01 22:22:20 +01:00
obligaron 0c3b434d76 Make debug command restart compatible with multiplayer 2022-12-17 19:37:52 +01:00
Gleb Mazovetskiy bf2e6cd262 Fix disappearing portal
Fixes a regression introduced in ca69237d59.

Fixes #5609
2022-12-17 12:06:22 +01:00
Gleb Mazovetskiy ca69237d59 Big-endian support for multiplayer
Not sure if this works but it's a start
2022-12-15 05:59:17 +01:00
Gleb Mazovetskiy ef4a547954 msg.cpp: Log received commands debug define 2022-12-15 05:59:17 +01:00
obligaron b3b62800b5 Initial sync qvar2 2022-11-27 18:27:06 +01:00
obligaron 911ba21e0e Set player old position on level join to prevent a crash when leaving the game 2022-11-24 06:15:48 +01:00
obligaron 50cea20687 Show portal opening animation in town 2022-11-23 03:08:52 +01:00