- Add uoconvert support for MultiCollection.uop
- Allow multiple elements in MultiTypes and Mounts in uoconvert.cfg
- Simplify entries in uoconvert.cfg to remove House and Stairs properties in the MultiTypes element
* Associate class descriptor with class instance
* Skeleton of BClassInstance, update tests
* Correctly handle methods on class instances
* Support calling members as methods
* Update super-multiple test
* Track called ctors; Introduce ins_check_mro
* Move class method funcref class to Executor
* Address GitHub CI annotations
- 'argument': conversion from 'size_t' to 'unsigned int'
* Update pol-core/bscript/bclassinstance.cpp
* Introduce BConstObject for class instances
* Fix unnecessary include in uotool
* Removed fixedalloc from BConstObject
* Additional test case
* Address Discord comments
- Reintroduce deleted copy assignment
* moved more members from Character to ClientGameData
reordered a few members to reduce padding
added memsize functions for std containers to simplify code
* few more comments
* refactored boat move, fixed truncation of position when switching realm.
more simplifications
added more tests
* move_multi now accepts oldlocation like the other move functions
* added corechanges
* 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
* converted multidef
added to the testsuite a big multi
ListMultisInBox now uses the update range, but since its the only spot
and the chances are low that someone really has such a big multi
corechanges are not really worth it I would say
* Fixed a few grid bugs, one endless loop and changed the range a chr can move while customhouse is active
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...
Added: MultiID entry to boats.cfg instead of the ObjType.
Changed: Multi itemdescs now require MultiID to be defined for each multi.
Note: Multi objtypes still need to be > MaxTileID from pol.cfg
Example of a multi entry in itemdesc
Boat 0x10000
{
Name SmallBoatN
MultiID 0x0
}
Added: boats.cfg is now shipped with the core too with boats up to date with HSA so just remove what you dont use.
Note: Reconvert of multis.cfg with UOConvert needed