Pol  Revision:cb584c9
uomod.cpp File Reference
#include "pol_global_config.h"
#include "uomod.h"
#include <cmath>
#include <cstddef>
#include <exception>
#include <stdlib.h>
#include <string>
#include "../../bscript/berror.h"
#include "../../bscript/bobject.h"
#include "../../bscript/bstruct.h"
#include "../../bscript/dict.h"
#include "../../bscript/impstr.h"
#include "../../clib/cfgelem.h"
#include "../../clib/clib.h"
#include "../../clib/clib_endian.h"
#include "../../clib/compilerspecifics.h"
#include "../../clib/esignal.h"
#include "../../clib/logfacility.h"
#include "../../clib/passert.h"
#include "../../clib/refptr.h"
#include "../../plib/mapcell.h"
#include "../../plib/mapshape.h"
#include "../../plib/maptile.h"
#include "../../plib/staticblock.h"
#include "../../plib/stlastar.h"
#include "../../plib/systemstate.h"
#include "../action.h"
#include "../cfgrepos.h"
#include "../clidata.h"
#include "../containr.h"
#include "../core.h"
#include "../eventid.h"
#include "../fnsearch.h"
#include "../gameclck.h"
#include "../globals/object_storage.h"
#include "../globals/uvars.h"
#include "../guardrgn.h"
#include "../item/item.h"
#include "../item/itemdesc.h"
#include "../layers.h"
#include "../lightlvl.h"
#include "../listenpt.h"
#include "../los.h"
#include "../mdelta.h"
#include "../menu.h"
#include "../miscrgn.h"
#include "../mobile/charactr.h"
#include "../mobile/npc.h"
#include "../mobile/ufacing.h"
#include "../multi/boat.h"
#include "../multi/house.h"
#include "../multi/multi.h"
#include "../multi/multidef.h"
#include "../network/cgdata.h"
#include "../network/client.h"
#include "../network/packethelper.h"
#include "../network/packets.h"
#include "../npctmpl.h"
#include "../objtype.h"
#include "../pktboth.h"
#include "../pktdef.h"
#include "../polcfg.h"
#include "../polclass.h"
#include "../polclock.h"
#include "../polsig.h"
#include "../profile.h"
#include "../realms.h"
#include "../realms/realm.h"
#include "../resource.h"
#include "../savedata.h"
#include "../scrdef.h"
#include "../scrsched.h"
#include "../scrstore.h"
#include "../spells.h"
#include "../target.h"
#include "../uconst.h"
#include "../udatfile.h"
#include "../ufunc.h"
#include "../uimport.h"
#include "../umanip.h"
#include "../unicode.h"
#include "../uobject.h"
#include "../uoexec.h"
#include "../uopathnode.h"
#include "../uoscrobj.h"
#include "../uworld.h"
#include "../wthrtype.h"
#include "cfgmod.h"
#include "osmod.h"

Go to the source code of this file.

Classes

class  Pol::Module::EMenuObjImp
 

Namespaces

 Pol
 
 Pol::Bscript
 
 Pol::Core
 
 Pol::Module
 

Macros

#define CONST_DEFAULT_ZRANGE   19
 

Typedefs

typedef Plib::AStarSearch< UOPathState > Pol::Module::UOSearch
 

Functions

BObjectImp * Pol::Module::_complete_create_item_at_location (Item *item, unsigned short x, unsigned short y, short z, Realms::Realm *realm)
 
BObjectImp * Pol::Module::_create_item_in_container (UContainer *cont, const ItemDesc *descriptor, unsigned short amount, bool force_stacking, UOExecutorModule *uoemod)
 
void Pol::Module::append_objtypes (ObjArray *objarr, Menu *menu)
 
void Pol::Core::cancel_all_trades ()
 
void Pol::Core::cancel_trade (Mobile::Character *chr1)
 
unsigned char Pol::Module::decode_xdigit (unsigned char ch)
 
Bscript::BObjectImp * Pol::Core::equip_from_template (Mobile::Character *chr, const char *template_name)
 
std::string Pol::Core::get_textcmd_help (Mobile::Character *chr, const char *cmd)
 
void Pol::Module::handle_coord_cursor (Character *chr, PKTBI_6C *msg)
 
void Pol::Module::handle_script_cursor (Character *chr, UObject *obj)
 
static bool Pol::Module::item_create_params_ok (u32 objtype, int amount)
 
void Pol::Module::menu_selection_made (Network::Client *client, MenuItem *mi, PKTIN_7D *msg)
 
Bscript::BObjectImp * Pol::Core::open_trade_window (Network::Client *client, Mobile::Character *dropon)
 
Bscript::BObjectImp * Pol::Core::place_item_in_secure_trade_container (Network::Client *client, Items::Item *item)
 
void Pol::Module::replace_properties (Clib::ConfigElem &elem, BStruct *custom)
 
void Pol::Core::send_paperdoll (Network::Client *client, Mobile::Character *chr)
 
void Pol::Core::send_skillmsg (Network::Client *client, const Mobile::Character *chr)
 
void Pol::Core::send_tip (Network::Client *client, const std::string &tiptext)
 
void Pol::Module::true_extricate (Item *item)
 

Variables

const int Pol::Module::LH_FLAG_INCLUDE_HIDDEN = 2
 
const int Pol::Module::LH_FLAG_LOS = 1
 
const unsigned Pol::Module::LMBLEX_FLAG_CONCEALED = 0x8
 
const unsigned Pol::Module::LMBLEX_FLAG_DEAD = 0x04
 
const unsigned Pol::Module::LMBLEX_FLAG_HIDDEN = 0x02
 
const unsigned Pol::Module::LMBLEX_FLAG_NORMAL = 0x01
 
const unsigned Pol::Module::LMBLEX_FLAG_NPC_ONLY = 0x20
 
const unsigned Pol::Module::LMBLEX_FLAG_PLAYERS_ONLY = 0x10
 
const int Pol::Module::TGTOPT_CHECK_LOS = 0x0001
 
const int Pol::Module::TGTOPT_HARMFUL = 0x0002
 
const int Pol::Module::TGTOPT_HELPFUL = 0x0004
 

Detailed Description

History
  • 2005/03/02 Shinigami: internal_MoveItem - item took from container don't had the correct realm
  • 2005/04/02 Shinigami: mf_CreateItemCopyAtLocation - added realm param
  • 2005/04/28 Shinigami: mf_EnumerateItemsInContainer/enumerate_contents - added flag to list content of locked container too
  • 2005/04/28 Shinigami: added mf_SecureTradeWin - to init secure trade via script over long distances added mf_MoveItemToSecureTradeWin - to move item to secure trade window via script
  • 2005/04/31 Shinigami: mf_EnumerateItemsInContainer - error message added
  • 2005/06/01 Shinigami: added mf_Attach - to attach a Script to a Character mf_MoveItem - stupid non-realm anti-crash bugfix (e.g. for intrinsic weapons without realm) added mf_ListStaticsAtLocation - list static Items at location added mf_ListStaticsNearLocation - list static Items around location added mf_GetStandingLayers - get layer a mobile can stand
  • 2005/06/06 Shinigami: mf_ListStatics* will return multi Items too / flags added
  • 2005/07/04 Shinigami: mf_ListStatics* constants renamed added Z to mf_ListStatics*Location - better specify what u want to get modified Z handling of mf_ListItems*Location* and mf_ListMobilesNearLocation* better specify what u want to get added realm-based coord check to mf_ListItems*Location*, mf_List*InBox and mf_ListMobilesNearLocation* added mf_ListStaticsInBox - list static items in box
  • 2005/07/07 Shinigami: realm-based coord check in mf_List*InBox disabled
  • 2005/09/02 Shinigami: mf_Attach - smaller bug which allowed u to attach more than one Script to a Character
  • 2005/09/03 Shinigami: mf_FindPath - added Flags to support non-blocking doors
  • 2005/09/23 Shinigami: added mf_SendStatus - to send full status packet to support extensions
  • 2005/12/06 MuadDib: Rewrote realm handling for Move* and internal_move_item. New realm is to be passed to function, and oldrealm handling is done within the function. Container's still save and check oldrealm as before to update clients.
  • 2006/01/18 Shinigami: added attached_npc_ - to get attached NPC from AI-Script-Process Obj
  • 2006/05/10 Shinigami: mf_ListMobilesNearLocationEx - just a logical mismatch
  • 2006/05/24 Shinigami: added mf_SendCharacterRaceChanger - change Hair, Beard and Color
  • 2006/06/08 Shinigami: started to add FindPath logging
  • 2006/09/17 Shinigami: mf_SendEvent() will return error "Event queue is full, discarding event"
  • 2006/11/25 Shinigami: mf_GetWorldHeight() fixed bug because z was'n initialized
  • 2007/05/03 Turley: added mf_GetRegionNameAtLocation - get name of justice region
  • 2007/05/04 Shinigami: added mf_GetRegionName - get name of justice region by objref
  • 2007/05/07 Shinigami: fixed a crash in mf_GetRegionName using NPCs; added TopLevelOwner
  • 2008/07/08 Turley: Added mf_IsStackable - Is item stackable?
  • 2008/07/21 Mehdorn: mf_ReserveItem() will return 2 if Item is already reserved by me (instead of 1)
  • 2009/07/27 MuadDib: Packet Struct Refactoring
  • 2009/08/08 MuadDib: mf_SetRawSkill(), mf_GetRawSkill(), mf_ApplyRawDamage(), mf_GameStat(), mf_AwardRawPoints(), old replace_properties(), mf_GetSkill() cleaned out.
  • 2009/08/25 Shinigami: STLport-5.2.1 fix: additional parentheses in mf_ListMultisInBox
  • 2009/09/03 MuadDib: Changes for account related source file relocation Changes for multi related source file relocation
  • 2009/09/14 MuadDib: Slot support added to creation/move to container.
  • 2009/09/15 MuadDib: Multi registration/unregistration support added.
  • 2009/10/22 Turley: added CanWalk()
  • 2009/11/19 Turley: added flag param to UpdateMobile controls if packet 0x78 or 0x77 should be send - Tomi
  • 2009/12/02 Turley: added config.max_tile_id - Tomi
  • 2009/12/17 Turley: CloseWindow( character, type, object ) - Tomi
  • 2010/01/15 Turley: (Tomi) season stuff (Tomi) SpeakPowerWords font and color params
  • 2011/11/12 Tomi: added extobj.mount

Definition in file uomod.cpp.

Macro Definition Documentation