Welcome to PenUltima Online. Click to login or register.


CreateMultiAtLocation( x, y, z, objtype, flags := 0, realm := _DEFAULT_REALM )
Name Type
x,y,z Integer world coordinates
realm String - case-sensitive name of the realm
objtype Integer objtype, OR String ObjtypeName, OR GetItemDescriptor struct.
flags Integer (optional)
Creates a "multi" object (house or boat) at a location.
Notes: uo.em constants for flags:
houses only:
const CRMULTI_IGNORE_MULTIS     := 0x0001; //ignore intersecting multis
const CRMULTI_IGNORE_OBJECTS    := 0x0002; //ignore dynamic objects
const CRMULTI_IGNORE_WORLDZ     := 0x0004; //ignore standability,relative Z,world height
const CRMULTI_IGNORE_ALL        := 0x0007; 
objtype must be a multi type as defined in itemdesc.cfg having a type House or Boat.
For Boats: Position must be passable - every part of the hull sits on water, and no hull location is occupied by the hull of another ship, nor a static or dynamic blocking item. Runs scripts/misc/boat.ecl on creation.
Return values
Boat Reference or House Reference on success, and adds the multi to the world
"Invalid parameter type"
"Realm not found"
"Invalid Coordinates for Realm"
"That location is out of bounds"
"That objtype is not a Multi"
"Don't know what kind of multi to make"
"Multi definition not found for Boat, objtype=X, graphic=Y"
"No boatshape for Boat in boats.cfg, objtype=X, graphic=Y"
"Position indicated is impassable"
"Multi definition not found for House, objtype=X, graphic=Y"
"Location intersects with another structure" (use CRMULTI_IGNORE_MULTIS)
"Something is blocking that location" (use CRMULTI_IGNORE_OBJECTS)
"That location is not suitable" (use CRMULTI_IGNORE_WORLDZ)