Game Development Community

Orion Elenzil's Resources

new console function: collapseWhiteSpace()

trivial function which collapses runs of whitespace.

Author Orion Elenzil Date 03/04/2007 (7:42 am) Comment 0 comments

new console functions: findWord(), findField(), findRecord().

getWord() and getField() and getRecord() return the unit at a given index in a list of units. however there seemed to be nothing to get the index of a given unit, so meet findWord() and findField() and findRecord().

Author Orion Elenzil Date 03/04/2007 (7:41 am) Comment 6 comments

new consoleMethod: SimSet::getRandomObject()

trivial function. might be worth including in head someday tho. heck maybe it's already in there. this is based on TGE 1.3.5

Author Orion Elenzil Date 01/31/2007 (2:40 pm) Comment 2 comments

Gui3DProjectionCtrl

This control is meant to be merely a container for other controls. What's neat is that it's easy to 'attach' this control to a point in world-space or, more interestingly, to an object such as a player.

Author Orion Elenzil Date 01/31/2007 (2:39 pm) Comment 62 comments

new console functions: SortWords() and SortNumbers()

qSort a list of words or numbers. TGE 1.3

Author Orion Elenzil Date 11/25/2006 (10:00 pm) Comment 7 comments

Indent "Loading compiled script.." lines by execDepth

A small change to make it easier to understand which .cs files are being loaded by which.

Author Orion Elenzil Date 11/13/2006 (4:42 pm) Comment 4 comments

Strikethrough and Bold tags for GuiMLTextCtrl

Add and formatting tags to GuiMLTextCtrl. Based on TGE 1.3.5

Author Orion Elenzil Date 11/13/2006 (4:35 pm) Comment 8 comments

GuiArray2Ctrl - A new simple control for working w/ large arrays of controls

I had a need for a largish array of GuiControls of the same type, and GuiArrayCtrl wasn't quite cutting it. So in comes the gorgeously named "GuiArray2Ctrl". It basically helps you make very large arrays. For example 1,000 controls can be handled easily.

Author Orion Elenzil Date 09/15/2006 (2:31 pm) Comment 15 comments

allowInstanceMethods extension to SimObject namespace

GuiControls, ScriptObjects, and a few other subclasses of SimObject allow you to use Instance Methods. An Instance Method is a method which belongs to a particular instance of a class, but not to every instance of the class. C++ does not allow instance methods, but many other languages do. This resource allows you to use instance methods on any SimObject.

Author Orion Elenzil Date 08/17/2006 (12:11 pm) Comment 0 comments

added: VectorInterp, ColorAdd, ColorSub, ColorScale, ColorInterp

trivial additional math console functions. only added in case someone in the future does a search. this resource will totally save you ten minutes!!!! omg! this stuff may already be in TGE 1.4, i'm not sure.

Author Orion Elenzil Date 08/17/2006 (12:09 pm) Comment 6 comments

GuiEditor improvement: Save Current Control

Adds a new file function to the in-game TGE 1.3 GuiEditor which allows you to save just a portion of the GUI to file. May or may not be relevant to TGE 1.4+.

Author Orion Elenzil Date 08/17/2006 (12:08 pm) Comment 2 comments

SceneObject::objBoxContainsPoint()

trivial function to return whether a world-space point is within an object's bounding box. - that's the object-aligned bounding box, not the world-aligned one. might save somebody ten minutes some day. coded in TGE 1.3, will undoubtedly work in TGE 1.4.

Author Orion Elenzil Date 08/17/2006 (12:04 pm) Comment 2 comments

Fix orientation in camera

this is a fix to a bug in camera's setOrbitMode() function. setOrbitMode takes a typical torquescript transform: "Px Py Pz Rvx Rvy Rvz Ra". However the rotation aspect of this transform was being totally munged by the code equating a basis vector with a set of euler rotations. This resource fixes this problem, and also improves the matrix class.

Author Orion Elenzil Date 07/03/2006 (11:34 am) Comment 12 comments

GuiSliderCtrl - add a auto-snap-to default value

You know in winamp how the slider for left/right balance has a little sticky spot at the center which the slider handle conveniently snaps to and how it's kind of nice ? Well it turns out to be even easier to implement than you might have thought, so there's no reason not to do it!

Author Orion Elenzil Date 07/03/2006 (11:27 am) Comment 2 comments

Proximity Math Utilities

A few functions to assist in working with Proximity. Integrates both radial and angular proximity. (AKA distance and field-of-view) Exposed to script.

Author Orion Elenzil Date 07/03/2006 (11:11 am) Comment 3 comments

Trivial bugfix to GuiMessageVectorCtrl - remove child-of-GuiScrollCtrl requirement

in stock TGE 1.3, if a GuiMessageVectorCtrl's attached MessageVector receives a new line, if the GuiControl is not a child of a GuiScrollCtrl, it crashes. booo! this fix is trivial, just noted here to capture it for posterity.

Author Orion Elenzil Date 04/11/2006 (2:02 pm) Comment 3 comments

GuiTextEditCtrl improvements

Make TGE 1.3's GuiTextEditCtrl behave more like a standard windows text edit control.

Author Orion Elenzil Date 04/02/2006 (10:32 am) Comment 7 comments

Network optimization - setMoveMaskIfReallyNeedTo()

edit: !!! do not use this resource as presented here !!! - see post at bottom. a fix is on the way ! in stock TGE1.3, player::updatePos() sets the player's movemask(). since updatePos is, i believe, called every server tick, this means about 13 bytes are being written every tick for in-scope player objects. which apparently may not be significant, thanks to the details of UDP packets and stuff, but at the same time is pretty unnecessary and easy to fix.

Author Orion Elenzil Date 02/28/2006 (7:00 pm) Comment 11 comments

GuiContol: reposition() instead of resize()

Improve performace when repositioning a GuiControl.

Author Orion Elenzil Date 02/23/2006 (10:51 am) Comment 2 comments

Small bugfix & Improvement to GuiShapeNameHud viewcone business

There's a small bug in GuiShapeNameHud's determination of what's in the viewcone, here's a fix and also a slight optimization.

Author Orion Elenzil Date 01/29/2006 (3:32 pm) Comment 8 comments