Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* Create EGP object type, objectify EGP functions. * Finish the rest of the egpobjects * Some lints * Clean up and refactor EGP.Objects.Base initialization * Use metatables for EGPObject Add egpobject:toString() * Have egpRemove return null egpobject. Remove unnecessary code. * Silly workaround because I forgot how functions work. * Add index operators to EGP objects * Added E2Descriptions Genericized EGP object creation functions (will be used later for indexless functions) Add xwl:egpHasObject(xeo) Fixed removed EGP objects not equal to NULL * Make EGP:EditObject call Obj:EditObject Method will be removed in a later PR * Various additions - Added wirelink:egpCreate, creates an EGP Object prototype that is not initialized - Added egpobject:initialize to initialize EGP Object prototypes - Added xeo:unload(), removes the object while keeping its object intact - Added xeo:isLoaded() to see if object is initialized - Added xeo:egpIndex(n) to set and replace indexes of EGP Objects - Added xeo:egpSize(nn), :egpPos(nn), :egpPos(nnn) to better facilitate moving operations - Added xeo:egpPosAng(), returns vector of x, y, angle - Added xeo:egpPos(nnnn), sets x, y, x2, and y2 for lines - Added xeo:egpSetVertices(...), sets vertices of EGP Object - Added xeo:egpCopy(xeo) to copy one EGP object to another - Added angle to EGP baseObj and baseObj:SetPos - Nodiscard a bunch of functions - Changed EGP.Objects to use lowercase name in most cases - Bug fix for xwl:egpParent(xeoxeo) - Deduplicated some E2Descriptions * Minor bug fix * Add order methods * Minor fix for removing objects that don't exist * Removed egpCreate, bugfixes - Added auto-generated egp<Type>(index, table) constructors, replaces egpCreate - Added xeo:draw/:hide, replaces :initialize/:unload - Moved NULL_EGPOBJECT as a field of EGP - Made EGP:CreateObject() never return nil - Fixed some EGP functions erroneously returning nil - Changed xeo:egpOrderAbove/:egpOrderBelow to use EGP objects instead of index * Rename xeo:egpobjectContainsPoint to simply :containsPoint * forgot e2description * Fix nodraw * Fix set on poly-like object, add EGP object inheritance. * Rename every xeo function Add xeo:parent(), returns parent object Minor fixes and optimizations, chiefly with function returns Remove xeo:egpIndex(n), indexes should be irrelevant Removed redundant xeo:egpObjectType() that I swore I already removed * Add EGP object inheritance. Reduces LOC. +Other miscellaneous fixes to make this work. * E2Descriptions. Fix getMaterial returning entity. * Minor code reduction * Update to compiler rewrite * Minor update * Lint and minor optimize drawing for RoundedBox Simplify drawing for RoundedBoxOutline Lints * Fix problems with polys Massively simplify global pos getting Split getting global vertices into different function Fixed bad egpo indexget Harden EGPObjects against bad inputs Change some small syntax things * Fix oversight + minor change of local scope
- Loading branch information