Object¶
-
class
Object
¶ Defined in System.sc.
The base class used for all SCI Objects. It provides some basic operations like asking if an object supports a particular selector, or if an object is subclass of a given class.
Subclasses: Sound
, Code
, IconItem
, Game
, Block
, Messager
, Control
, Feature
, Cycle
, SysWindow
, Script
, Sync
, Print
, Motion
, MessageObj
, ClickMenu
, Polygon
, File
, Timer
, TimeOut
, Flags
, Cue
, Region
, Event
, User
, Collection
, Cursor
.
Methods¶
-
new
() Returns a clone of itself
-
init
()
-
doit
()
-
dispose
()
-
showStr
(buffer) Copies the object’s name into the provided buffer.
-
showSelf
() Prints the object’s name on the screen.
-
perform
(object [...]) Calls the doit method on object with itself as the first parameter, and forwarding any additional supplied parameters.
Parameters: object (heapPtr) – Any object with a doit method.
-
isKindOf
(className) Determines if this object is a particular class, or inherits from that class.
Parameters: className (class) – A class name, such as Actor or Room Returns: TRUE is this object is of type className, or inherits from className.
-
isMemberOf
(theClass) Parameters: theClass (class) – A class, like MoveTo or Feature. Returns: TRUE if this object is an instance of this exact class, otherwise FALSE. Example usage:
(if (gThing isMemberOf: MoveTo) ; Do something... )
-
respondsTo
(selectorName) Parameters: selectorName (selector) – A property or method selector. Returns: TRUE if this object has selectorName as a property or method. Example usage:
(if (theThing respondsTo: #doit) (theThing doit:) )
-
yourself
() Returns the object itself. This is a convenient shortcut when you want to call a series of selectors on a new object and then pass that object directly to a function:
// Create a new polygon and add it to the room obstacles. (gRoom addObstacle: ((Polygon new:): type: PBarredAccess points: somePoints size: 4 dynamic: TRUE yourself: ))