MI_FireRing adds missiles MIS_FIREWALL with TARGET_BOTH and src equals
to either player ID, or -1 if Fire Ring is casted as trap. This has
consequences:
1. Because TARGET_BOTH MonsterMHit was called, as it usually called for
Firewalls. During this calls reference to Player gets garbage data (id
-1). This may miscalculate:
- no heal flags
- knockback flags (already fixed in this PR)
- unsquelch position.last
2. drops ear for firewall flame originating from Fire Ring from trap
Fix:
- Separated TARGET_BOTH from IsTrap for monsters to ensure TryHitMonster
will get passed TrapMissile (MonsterTrapHit) is called instead.
- added additional condition for earflag
Add FreeBSD install instructions.
FreeBSD port has been reworked and updated to latest release, notable changes are:
---
games/devilutionX: update to 1.4
- Update to 1.4
- Drop dependency on font, no longer needed
- Drop unnecessary .desktop file patches (also upstream PR exists)
- Install from the port (instead of patching CMakeLists.txt), to be
more explicit and flexible
- Convert to pkg-plist as there are more files now
- The new version tries to fetch dependencies from the net, for some
depenencies this is unconditional. Fetch these properly with
GH_TUPLE and place in a directory where CMake expectes them.
- Upstream code expects patch component in the version, so add an extra
.0 to VERSION_NUM. This should not break on (future) X.Y.Z versions
as the component will move to micropatch position and will be ignored
- BINARY_RELEASE option is gone
- Untie DEBUG (engine debug bode) from WITH_DEBUG knob (build debug
binary), these are orthogonal
- Properly support optional depends; zerotier is the only one
broken as it conflicts with system header (see
https://github.com/diasurgical/devilutionX/issues/4585)
- Install devilutionx (own) data file
- Since it's not versioned, use a little hack to add a tag to the
filename to avoid clashes on the future updates; this seemed less
evil than introducing DIST_SUBDIR
- Use two-level datadir to be consistent with ~/.local/share path
- Update pkg-message (Diablo data file doesn't have to be lowercase,
works either way)
---
FreeBSD port url: https://www.freshports.org/games/devilutionX/
Thanks,
Nuno Eduardo Teixeira
eduardo@FreeBSD.org
The version in Ubuntu 22.04 comes without `ConvertUTF.{h,c}`.
We actually do not need `ConvertUTF.{h,c}` and starting from
v4.19 it is possible to tell SimpleIni to not include it
by setting `SI_NO_CONVERSION`.
Sets `SI_NO_CONVERSION` and raises the minimum required SimpleIni
version to 4.19.