Commit graph

41 commits

Author SHA1 Message Date
turleypol
d873551c25
removed pol_distance/inrange* functions (#556)
* 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
2023-12-25 22:02:52 +01:00
Kevin Eady
999ca84aea
Add Support for Snooping via Item Descriptor element SnoopScript (#491)
* Initial work on adding SnoopScript

* use message "That doesn't belong to you..." if lifting a snoopable item

* fix configfile changes

* Update core-changes
2022-12-20 21:32:47 +01:00
Peter Wedder
62638190a6
Change outgoing packet handlers to write CP-1252 when appropriate (#443)
* - Change all (most?) outgoing packet handlers that should write CP-1252 to convert UTF-8 to CP-1252.
- Update Clib::sanitizeUnicodeWithIso() to sanitize with CP-1252, which is what UO uses instead of ISO-8859.
- Add a test for Clib::sanitizeUnicodeWithIso() to check if it's performing the conversion correctly (currently it is not).

* Fix stylecheck

* Revert changes to sanitizeUnicodeWithIso()

* Change test so it matches acceptable sanitizeUnicodeWithIso behavior.

* Fix warnings.

* Add corechanges.
2021-11-09 08:01:31 +01:00
turleypol
7ee1b64e19
replaced baseclass x,y,z,realm members with Pos4d. (#420)
* replaced baseclass x,y,z,realm members with Pos4d.
Adapted the code, no changes except making the compiler happy

* review changes

* Fixed gotten_item

* fixed copy&waste
2021-09-10 20:17:25 +02:00
turleypol
9cfb4ec5a5 moved pkt headers into network folder 2018-12-30 21:35:54 +01:00
esdete
dc2d29b433 NULL to nullptr 2018-07-31 14:30:29 +02:00
Gabriele Tozzi
b72f725e02 Whitespace fixes 2018-04-03 04:13:03 +02:00
turleypol
dbb25bdb62
Include and buildsystem cleanup (#45)
Include cleanup
Reworked buildsystem (Linux only)
Removed dynamic libs, Linux now again uses static linking (like windows)
2018-01-29 21:55:48 +01:00
turleypol
798eda5b63 Cleanup of header includes. 2018-01-01 21:52:14 +01:00
turley
c855a27815 Added new baseclass for uobject
contains only minimum data and can be created with arbritary data.
This reduces memory overhead for each los-check.
Plus minor cleanup
2016-12-12 22:21:59 +01:00
turley
a983d25e4e removed bool members and replaced them with flags.
Further decrease memory foodprint.
2016-12-07 23:34:16 +01:00
turley
189cad3479 Formating everything
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!
2016-02-19 19:26:35 +01:00
Gabriele Tozzi
d1ac902926 Documentation: reformatted headers for DoxyGen 2016-01-28 14:52:40 +01:00
turley
dfd65e30cd Moved plib realm to pol 2015-09-18 19:11:46 +02:00
Thomas Volkert
1dd2200c6b Renamed endian.h to clib_endian.h to avoid redefinition problems in
system files and the general hiding of the endian.h from the system
2015-08-31 20:01:31 +02:00
turley
1a35f79c3a Moved more non frequent used attributes into dynprops. cleanup for the movepkt. 2015-05-15 14:14:03 +02:00
turley
64d8fdb310 Moved npc files into mobiles dir, changed the namespace accordingly
removed some old code
2015-01-16 19:44:07 +01:00
turley
79dff37246 Splitted gamestate external. 2015-01-02 14:46:44 +01:00
turley
88ec380941 Moved globals into separate directory. 2014-12-30 15:20:59 +01:00
turley
2737393f2a Tried to put all global vars into centralized structures.
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...
2014-12-30 14:14:41 +01:00
frozenblit
a704a90208 Another round of stl_inc.h cleanups 2014-11-01 22:27:42 +01:00
frozenblit
ed679dba3d Moved message handling code into its own cpp
Created a new file (msghandl.cpp) and moved the code from pol.cpp there.
Moved related files to the "network" folder, where they belong. Fixed
include names... (we should make this relative to the project root!)
2014-10-01 21:10:32 +02:00
turley
fb873de803 decoupled headers to optimize a bit the build time 2014-05-03 09:06:19 +00:00
turley
99d7dc3037 namespaces...finally :)
Hard part is finished every file is touched. Namespaces are currently rough named by directory name.
Maybe we could split it more
2013-12-21 09:10:46 +00:00
dsourc
460dae5b0e Pol doesnt send "I am frozen" messages anymore when paralyzed, now it sends in all those cases "I am paralyzed" messages 2013-09-21 14:46:49 +00:00
dsourc
f8c3cc6518 Added: scripts/misc/dblckickitem.ecl to run a script on every double click on items.
params are (mobile, item)
              usefull for removing meditation stuff and such in 1 place instead of every script.
     Note:    this script will not be attached to the mobile and will run before any usescript.
2012-03-07 19:34:22 +00:00
turley
11ce4da294 changed pkt writer
generic definition, but gives linker error if unsupported type used, and compiler error if <..> is missing. Damn argument deduction
hopefully with this last pkt error in tooltips will never happen.
Chances that i broke a pkt .... high :P
2012-02-19 20:40:44 +00:00
turley
b35cbd463d finished pkt refactoring
gave threads names under windows for better debugging
fixed memoryleak in ItemGivenEvent
2011-12-19 16:34:21 +00:00
turley
796d4992f9 finished refactoring of pkthelper 2011-12-17 12:05:57 +00:00
turley
440e57bced hsa mul support
changed objtype to max 0x20000
splitted pkt transmit
needs more testing
2011-06-14 15:20:00 +00:00
turley
823f18b0cc Added: pol.cfg AccountDataSafe (default -1)
Values:
            -1 : old behaviour, saves accounts.txt immediately after an account change
             0 : saves only during worldsave (if needed)
            >0 : saves every X seconds and during worldsave (if needed)
removed debugging stuff for pkts
2011-03-10 12:57:50 +00:00
turley
88c18237bd some pkt fixes + several debugtests (will be removed later) 2010-04-24 07:35:19 +00:00
turley
93b37c5862 pkt 0xA9,0xAA
some fixes
added PolCore().pkt_status array of structs{pkt,sub,count} (currently a bit senseless due to critical pkt handling)
2010-04-09 14:00:47 +00:00
turley
0f5026da5a todays work..pkt 0x76-0x90 2010-04-05 17:49:42 +00:00
turley
bb4fb33a70 Added: 0xF3 packet is send instead of 0x1A for clients >= 7 or UO:SA clients - Tomi
Added: polcfg Max_Tile_ID 0x3FFF / 0x7FFF (default 0x3FFF)
            since client 7.0.0.0 item graphic can be definied up to 0x7FFF - Tomi
Added: "SA" for expansion type. This includes sending 0x187DF with packet 0xB9. - Tomi
Added: support of new map TerMur - Tomi
Note: uoconvert param: 
            realm=termur mapid=5 width=1280 height=4096
Added: Gargoyle support (race = uo:RACE_GARGOYLE)
Note: graphics are: 
            UOBJ_GARGOYLE_MALE         0x029A
            UOBJ_GARGOYLE_FEMALE       0x029B
            UOBJ_GARGOYLE_MALE_GHOST   0x02B6
            UOBJ_GARGOYLE_FEMALE_GHOST 0x02B7
Added: support of UO:KR/SA char create packet 0x8D
Added: new gargoyle hair & beard 0x4258-0x425F & 0x42AD-0x42B0
Added: UO:KR/SA face support
Added: ssopt.SupportFaces 0/1/2 (default 0)
            set it to 1 to support basic faces
            set it to 2 to support roleplay faces (sets 0x2000 flag in 0xB9 packet)
Note: Faces are normal items (like hair/beard) with layer 15, objtype 0x3B44-0x3B57
            roleplay faces 0x3B4E-0x3B57
2009-12-02 15:28:42 +00:00
muaddib_pol
631ed68c4a + All projects now using literal paths for includes.
+ Disabled Compiler warning 4244 in VS for str.cpp and strutil.cpp due to fact they are false warnings there.
2009-09-12 23:51:20 +00:00
muaddib_pol
5740a51281 + Partial Network and Item code moved 2009-09-08 01:42:26 +00:00
muaddib_pol
6a73041445 + Network Code organized some. Baby steps, baby steps 2009-09-07 20:37:38 +00:00
muaddib_pol
49072c3c41 + To-Do file updates
+ Beginning of Mobile and Module source file organization
+ Makefile.Gcc updates
2009-09-06 14:11:24 +00:00
muaddib_pol
d5e678bdd6 + Organization updates.
* Account and Multi related pol-2008.vcproj organized.
2009-09-04 06:37:13 +00:00
muaddib_pol
d032ee448f + POL is now, open source. 2009-09-03 19:44:42 +00:00