* added explicit targets for every 3rd party lib
these contain include dirs/libs/compiler defs
* moved each 3rd party lib into a version folder, to give each target a
dedicated include directory.
Now noone should add lib root folder as include dir
Used private linking where possible
disabled building of boost, wasnt used at all
* regnerate boost cache
adapted targets for coverity
* removed pol_distance/inrange* functions
replaced lastxyz with Pos4d
* replaced WorldIterator::InVisualRange with InMaxVisualRange returning
all objects in maximum update range. Adapted each caller, they now have
to check in_visual_range
Multis should now be send to clients with its footprint in mind.
added testscript for boat moving in/out of range
* removed non pos InRange/InBox functions
gamestate.update_range doesnt need to be a Vector, renamed
* corrected send_action_to_inrange
* replaced clip methods with general numeric type clamp function
* added Range2d constructor with radius
* splitted update_range. chr has now a los_size (how far can it see) and
an object has a visible_size (0 for objects 1/2 footprint for multis)
* use in_range instead of pol_distance
* corrected order of checks
* fixed warnings
* fixed visual size of multis
testclient added wornitems pkt support
added tests for los
* corechanges
* Fix SetString packet hook method writing UTF-8 instead of CP-1252. Add a new method, SetUtf8String, for writing UTF-8.
* Add functions that operate on whole strings.
* Fix a couple of bugs and add unit tests.
* Do not convert if the string doesn't contain any UTF-8
* Convert 0x80..0x9f control characters, which don't exist in cp1252, to question marks
* Fix SetUtf8String writing too few bytes if the string contained multi-byte UTF-8 characters
* Remove extraneous parameter from TextCommandScript documentation
* Update changes and docs
* added os:GetEnvironmentVariable to list all environs or get a single one
* first version of restarting the core to test save/load
added environment variable to filter tests
* fixed string constructor (size_t instead of signed int)
* added string_view constructor
* splitted and extended restart tests
* added docs
* added pol.cfg setting to disallow environment variable access
* Change environmental variable access rules
Instead of defaulting to all values allowed, now defaults to none. May
specify either `*` to allow all variables, or a comma-delimited list.
* Address review changes
- Use Clib lower instead of boost
- const auto references
- Separate tests for access and finding env vars
* Update documentation
* Apply suggestions from code review
Co-authored-by: Kevin Eady <8634912+KevinEady@users.noreply.github.com>
Co-authored-by: Fernando Rozenblit <rozenblit@gmail.com>
Authors are not forced to use the clang-format setting, but should
atleast be inspired by the style.
The only thing which is now not allowed are tabs for ident/alignment!
Currently plib/systemstate, pol/uvars, pol/ucfg, pol/multi/multidef
Next step should be to split them based on usage, since its currently a bit of include hell...
Ignored a return in Math::Abs(), fixed unchecked return for flags in
Npc::TurnToward().
Two others in the packet object: SetUnicodeString() and
SetUnicodeStringFlipped(), neither was checking if the conversion from
array to UC was working.
pkt.sendpacket() & SendPacket() now accepts client or character
r/o members:
ip, acctname, clientversion, clientinfo, clienttype, clientver_detail, uo_expansion_client
methods:
compareversion()
used as prelogin param for packethooks instead of old struct (so you can send packets)
Added: character.client
returns ClientRef object or error
Note: This or next release duplicate members/methods get deleted from chr (except acctname)