Table of Contents

About this document

This is the documentation reference for the Xelf game engine.

It includes all the documentation strings extracted from the Common Lisp source code. The rest of the documentation can be found at the Xelf site.

Documentation strings

*ACTIVE-PROMPT-COLOR* (variable)

*AFTER-LOAD-PROJECT-HOOK* (variable)

*AFTER-STARTUP-HOOK* (variable)

Hook run after startup.

*AUTHOR* (variable)

Name of the application author.

*AUTHOR-CONTACT* (variable)

*AUTHOR-COPYRIGHT-NOTICE* (variable)

Text of user or application specific copyright notice.

*BACKGROUND-COLOR* (variable)

The default background color of the XELF user interface.

*BASE-PORT* (variable)

*BOLD* (variable)

Resource name of default boldface font.

*BUFFER* (variable)

The currently active buffer.

*BUFFERS* (variable)

When non-nil, the UUID of the current buffer object.

*BURST-DURATION* (variable)

*BURST-PERIOD* (variable)

*BURST-TIMER* (variable)

*CACHED-QUADTREE* (variable)

*CENSUS* (variable)

*CHATTER-PERIOD* (variable)

*CLIENT* (variable)

*CLIENT-HOST* (variable)

*CLIENT-OUTPUT-PORT* (variable)

*CLIENT-PORT* (variable)

*COLORS* (variable)

*COPYRIGHT-NOTICE* (variable)

Copyright notices for Xelf, its dependencies, and the current Lisp implementation.

*CURRENT-DIRECTORY* (variable)

*CURRENT-SOUNDS* (variable)

*DATAGRAM* (variable)

*DATAGRAM-LENGTH* (variable)

*DEBUG-ON-ERROR* (variable)

*DEFAULT-CURSOR-WIDTH* (variable)

*DEFAULT-ENTRY-LABEL-COLOR* (variable)

*DEFAULT-ENTRY-TEXT-COLOR* (variable)

*DEFAULT-FRAME-RATE* (variable)

*DEFAULT-JOYSTICK-PROFILE* (variable)

*DEFAULT-PROMPT-HISTORY-SIZE* (variable)

*DEFAULT-PROMPT-LABEL-COLOR* (variable)

*DEFAULT-PROMPT-MARGIN* (variable)

*DEFAULT-PROMPT-OUTSIDE-TEXT-COLOR* (variable)

*DEFAULT-PROMPT-STRING* (variable)

*DEFAULT-PROMPT-TEXT-COLOR* (variable)

*DEFAULT-QUADTREE-DEPTH* (variable)

Default quadtree depth.

*DEFAULT-TEXTURE-FILTER* (variable)

Filter used for drawing rendered outline fonts. Valid values are :mipmap (the default), :linear, and :nearest.

*DEGRADE-STREAM-P* (variable)

*DIRECTIONS* (variable)

List of keywords representing the eight compass directions.

*ECHO-TIMEOUT-LENGTH* (variable)

*ECHO-TIMEOUT-SECONDS* (variable)

*ECHO-TIMER* (variable)

*EVENT-HANDLER-FUNCTION* (variable)

Function to be called with input events. Keyboard, mouse, and joystick events are represented as 'event lists' of the form:

(STRING . MODIFIERS)

where STRING is a string representing the key or button, and MODIFIERS is a list of key modifier symbols like :shift, :control, :alt, and so on.

The modifier list is sorted; thus, events can be compared for equality with `equal' and used as hashtable keys.

*EVENT-HOOK* (variable)

*EVERYTHING* (variable)

*EXECUTABLE* (variable)

Non-nil when running Xelf from a saved binary image.

*EXPORT-FORMATS* (variable)

*FLAG-RECEIVED-P* (variable)

*FLAG-SENT-P* (variable)

*FONT* (variable)

The current font resource name. See also WITH-FONT. See also the file 'xelf/standard/index.xelf' for examples of font resource declarations.

*FONT-TEXTURE-FILTER* (variable)

Filter used for drawing rendered outline fonts. Valid values are :linear (the default), :mipmap, and :nearest.

*FONT-TEXTURE-SCALE* (variable)

Scaling factor for rendering of outline fonts. Use this when your game window might be enlarged to the point of blurring font textures that are too small.

*FRAME-RATE* (variable)

Requested frame rate.

*FREQUENCY* (variable)

Sample rate of output.

*FULLSCREEN* (variable)

When non-nil, attempt to use fullscreen mode.

*GAME-VARIABLES* (variable)

*GENERIC-JOYSTICK-MAPPING* (variable)

*GL-SCREEN-HEIGHT* (variable)

Height of the window expressed in OpenGL coordinates.

*GL-SCREEN-WIDTH* (variable)

Width of the window expressed in OpenGL coordinates.

*ID-STRING* (variable)

*IGNORED-SLOTS* (variable)

*INACTIVE-PROMPT-COLOR* (variable)

*INHIBIT-SPLASH-SCREEN* (variable)

*INPUT* (variable)

*ITALIC* (variable)

Resource name of default italic font.

*JOYSTICK-AXIS-DEAD-ZONE* (variable)

*JOYSTICK-AXIS-SIZE* (variable)

*JOYSTICK-BUTTON-SYMBOLS* (variable)

*JOYSTICK-DEAD-ZONE* (variable)

*JOYSTICK-DEVICE* (variable)

The SDL device id of the current joystick.

*JOYSTICK-DEVICE-NUMBER* (variable)

The number of the current joystick.

*JOYSTICK-PROFILE* (variable)

*JOYSTICK-PROFILES* (variable)

*LAST-MESSAGE-TIMESTAMP* (variable)

*LINUX* (variable)

*LOCAL-HOST* (variable)

*MESSAGE-FUNCTION* (variable)

*MESSAGE-HISTORY* (variable)

*MESSAGE-HOOK-FUNCTIONS* (variable)

*MESSAGE-LOGGING* (variable)

*MESSAGE-LOSS-RATE* (variable)

*MESSAGE-QUEUE* (variable)

*MONOSPACE* (variable)

Name of the default monospace (fixed-width) font.

*NETPLAY* (variable)

*NEXT-UPDATE-HOOK* (variable)

Hook run after each update. Value is erased each time.

*NODE-STREAM* (variable)

*NODE-STREAM-RATE* (variable)

*NOMINAL-SCREEN-HEIGHT* (variable)

Nominal height of the window, in pixels.

*NOMINAL-SCREEN-WIDTH* (variable)

Nominal width of the window, in pixels.

*OBJECT-VARIABLES* (variable)

*OSX* (variable)

*OTHER-VARIABLES* (variable)

*OUTPUT* (variable)

*OUTPUT-CHANNELS* (variable)

Choose mono or stereo output.

*OUTPUT-CHUNKSIZE* (variable)

Buffer size. Affects latency.

*PERSISTENT-VARIABLES* (variable)

*PERSISTENT-VARIABLES-FILE-NAME* (variable)

*POINTER-X* (variable)

Current window-relative x-coordinate of the mouse pointer.

*POINTER-Y* (variable)

Current window-relative y-coordinate of the mouse pointer.

*PRELOAD-IMAGES* (variable)

*PRELOAD-SAMPLES* (variable)

*PROCESS-ALL-MESSAGES* (variable)

*PROJECT* (variable)

The name of the current project. This is set by OPEN-PROJECT; use that instead.

*PROJECT-DIRECTORIES* (variable)

List of directories where XELF will search for projects. Directories are searched in list order.

*PROJECT-PATH* (variable)

The pathname of the currently opened project.

*PROMPT* (variable)

*PROMPT-CURSOR-INACTIVE-COLOR* (variable)

*PROMPT-FONT* (variable)

*QUADTREE* (variable)

The active quadtree.

*QUADTREE-DEPTH* (variable)

Current depth of the quadtree.

*QUERY-PERIOD* (variable)

*RECEIVED-MESSAGES-COUNT* (variable)

*REMOTE-HOST* (variable)

*REMOTE-PORT* (variable)

*RESIZABLE* (variable)

When non-nil, game window will be resizable.

*RESIZE-HOOK* (variable)

Hook to be run after user resizes window.

*RESOURCE-HANDLERS* (variable)

A property list mapping resource type keywords to handler functions. Each function should accept one resource record, and return an object (possibly driver-dependent). When a resource is loaded (with `load-resource'), the appropriate handler is looked up, and invoked on the resource record. The return value is stored in the OBJECT field of the record.

*RESOURCES* (variable)

A hash table mapping resource names to resource records. All loaded resources go in this one hash table.

The `resource table' maps resource names to their corresponding records. `Indexing' a resource means that its resource record is added to the resource table. `Loading' a resource means that any associated driver-dependent object (SDL image surface, audio buffer object, etc) is created, which may involve reading an image or sound file from the disk. This value is stored into the OBJECT field of the resource record upon loading; see `load-resource'.

The loading operation may be driver-dependent, so each resource type (i.e. :image, :text, :sound) is handled by its own plugin function (see `*resource-handlers*').

`Finding' a resource means looking up its record in the resource table, and loading the resource if it hasn't been loaded already. A lookup failure results in an error. See `find-resource'.

*SAFE-VARIABLES* (variable)

*SANS* (variable)

Name of the default sans-serif font.

*SCALE-OUTPUT-TO-WINDOW* (variable)

When non-nil, always show a fixed amount of the buffer when changing window size. Otherwise (the default) one onscreen pixel equals one unit of buffer space, so that more of the buffer shows if the window becomes larger.

*SCREEN-HEIGHT* (variable)

Physical height of the window, in pixels.

*SCREEN-WIDTH* (variable)

Physical width of the window, in pixels.

*SENT-MESSAGES-COUNT* (variable)

*SERIF* (variable)

Name of the default serif font.

*SERVER* (variable)

*SERVER-HOST* (variable)

*SERVER-OUTPUT-PORT* (variable)

*SERVER-PORT* (variable)

*SERVER-SENT-MESSAGES-COUNT* (variable)

*TERMINAL-BACKGROUND-COLOR* (variable)

*TERMINAL-BOTTOM* (variable)

*TERMINAL-DISPLAY-LINES* (variable)

*TERMINAL-ERROR-COLOR* (variable)

*TERMINAL-FONT* (variable)

*TERMINAL-FOREGROUND-COLOR* (variable)

*TERMINAL-LEFT* (variable)

*TERMINAL-LINES* (variable)

*TERMINAL-SHOW-TIME* (variable)

*TERMINAL-TIMER* (variable)

*TIME-BASE* (variable)

Default time base. Don't set this yourself; use SET-FRAME-RATE instead.

*UNIT* (variable)

*UPDATE-FUNCTION* (variable)

*UPDATES* (variable)

The number of game loop updates since startup.

*UPNP-CLIENT-HOST* (variable)

*UPNP-LOCAL-HOST* (variable)

*USE-ANTIALIASED-TEXT* (variable)

When non-nil, render outline fonts with antialiasing. See also **FONT-TEXTURE-FILTERFONT-TEXTURE-SCALE* and *.

*USE-SOUND* (variable)

Non-nil (the default) is to use sound. Nil disables sound.

*USE-TEXTURE-BLENDING* (variable)

*USE-UPNP* (variable)

*USER-INIT-FILE-NAME* (variable)

Filename for the user initialization script.

*USER-JOYSTICK-PROFILE* (variable)

*USER-KEYBOARD-LAYOUT* (variable)

*USER-PROJECTS-DIRECTORY* (variable)

*VERBOSE-P* (variable)

*VERTEX-COLOR-P* (variable)

*WINDOW-POSITION* (variable)

Controls the position of the game window. Either a list of coordinates or the symbol :center.

*WINDOW-TITLE* (variable)

Title string for OS window.

*WINDOWS* (variable)

*X11-COLOR-DATA* (variable)

*XELF-SERIES* (variable)

An integer giving the major API version of Xelf.

*XELF-VERSION* (variable)

A string giving the version number of Xelf.

+30FPS+ (variable)

Thirty frames per second.

+60FPS+ (variable)

Sixty frames per second.

+FLAG+ (variable)

+FULL-STATE+ (variable)

+HASH+ (variable)

+INPUT+ (variable)

+SECONDS-PER-MINUTE+ (variable)

+STATE+ (variable)

+UUID+ (variable)

+XELF+ (variable)

ABOVE (generic function)

(SELF &OPTIONAL OTHER)

ABOVE-CENTER (generic function)

(SELF &OPTIONAL OTHER)

ADD-BLOCK (variable)

ADD-HOOK (function)

(HOOK FUNC)

Hooks are special variables whose names are of the form `*foo-hook*' and whose values are lists of functions taking no arguments. The functions of a given hook are all invoked (in list order) whenever the hook is run with `run-hook'.

This function arranges for FUNC to be invoked whenever HOOK is triggered with `run-hook'. The function should have no arguments.

ADD-NODE (generic function)

(BUFFER NODE &OPTIONAL X Y (Z) REVIVE-P)

Add the mode NODE to the BUFFER. Optionally set the location with X,Y,Z.

ADD-RESOURCES (function)

(PLISTS)

Add the resources defined by PLISTS to the resource queue.

ADD-TAG (generic function)

(SELF TAG)

ADD-TERMINAL-LINE (function)

(STRING)

ADD-TO-LIST (function)

(LIST ELEMENT)

Add the item ELEMENT to the list LIST.

AFTER-PASTE (generic function)

(THING)

AIM (generic function)

(NODE HEADING)

Set the NODE's current heading to HEADING.

AIM-AT (generic function)

(NODE OTHER-NODE)

Set the NODE's heading to aim at the OTHER-NODE.

ALIGN-TO-PIXELS (generic function)

(SELF)

ALTERNATE-TAP (generic function)

(SELF X Y)

ALWAYS-BURSTING (macro)

(&BODY BODY)

ANALOG-STICK-HEADING (function)

(&OPTIONAL (STICK (JOYSTICK-LEFT-ANALOG-STICK)) (ID 0))

ANALOG-STICK-PRESSED-P (function)

(&OPTIONAL (STICK (JOYSTICK-LEFT-ANALOG-STICK)) (ID 0))

ANALOG-STICK-PRESSURE (function)

(&OPTIONAL (STICK (JOYSTICK-LEFT-ANALOG-STICK)) (ID 0))

ARROW-KEYS-DIRECTION (function)

AT-NEXT-UPDATE (macro)

(&BODY BODY)

Run the forms in BODY at the next game loop update.

BACKGROUND-COLOR (variable)

BACKGROUND-IMAGE (variable)

BACKGROUND-STREAM (generic function)

(BUFFER)

BACKWARD (generic function)

(NODE DISTANCE)

Move NODE backward DISTANCE units along the aim direction.

BACKWARD-CHAR (generic function)

(SELF)

BACKWARD-DELETE-CHAR (generic function)

(SELF)

BEGIN-NODE-STREAM (function)

(&OPTIONAL (STREAM (MAKE-NODE-STREAM)))

BEGINNING-OF-LINE (generic function)

(SELF)

BELOW (generic function)

(SELF)

BELOW-CENTER (generic function)

(SELF)

BIND-ANY-DEFAULT-EVENTS (generic function)

(SELF)

BIND-EVENT (generic function)

(NODE EVENT METHOD-NAME)

Bind the EVENT to invoke the method specified in METHOD-NAME, with NODE as the sole argument to the method.

EVENT is a list of the form:

(NAME modifiers…)

NAME is either a keyword symbol identifying the keyboard key, or a string giving the Unicode character to be bound. MODIFIERS is a list of keywords like :control, :alt, and so on.

Examples:

(bind-event self '(:up) 'move-up)
(bind-event self '(:down) 'move-down)
(bind-event self '(:q :control) 'quit)
(bind-event self '(:escape :shift) 'menu)

See also `keys.lisp' for the full table of key and modifier symbols.

BIND-EVENT-TO-METHOD (function)

(BLOCK EVENT-NAME MODIFIERS METHOD-NAME)

Arrange for METHOD-NAME to be sent as a message to this object whenever the event (EVENT-NAME . MODIFIERS) is received.

BLEND (variable)

BOUNDING-BOX (generic function)

(OBJECT)

Return the bounding-box of this OBJECT as multiple values. The proper VALUES ordering is (TOP LEFT RIGHT BOTTOM), which could also be written (Y X (+ X WIDTH) (+ Y HEIGHT)) if more convenient.

BOUNDING-BOX-CONTAINS (function)

(BOX0 BOX1)

Test whether BOX0 contains BOX1. The bounding boxes are provided as lists of the form (TOP LEFT RIGHT BOTTOM).

BUFFER (variable)

BUILD-QUADTREE (function)

(BOUNDING-BOX0 &OPTIONAL (DEPTH *DEFAULT-QUADTREE-DEPTH*))

Build a complete quadtree structure inside BOUNDING-BOX0 with DEPTH levels.

BURST-MODE (function)

BURST-MODE-P (function)

BURST-PERIOD (function)

BURSTING (macro)

(&BODY BODY)

BUTTON-TO-SYMBOL (function)

(BUTTON)

CENTER-POINT (generic function)

(NODE)

Return as multiple values the coordinates of the NODE's center point.

CFLOAT (function)

(F)

CHANGE-IMAGE (generic function)

(NODE IMAGE)

Set the image of NODE to be IMAGE.

CHATTER-PERIOD (function)

CLASS-SLOTS (function)

(CLASS)

CLEAN-BUFFER (generic function)

(BUFFER)

CLEAN-DATABASE (generic function)

(BUFFER)

CLEAN-STRING (function)

(STRING)

CLEAR-INPUT-STATE (generic function)

(NODE)

CLEAR-LINE (generic function)

(SELF)

CLEAR-SOUNDS (function)

CLEAR-TERMINAL (function)

CLEAR-TEXT-IMAGE-CACHE (function)

(&KEY (DELETE-TEXTURES T))

Free up texture memory used by rendered outline fonts.

CLIENT-BUFFER (variable)

CLIENTP (generic function)

(BUFFER)

Return non-nil if this is the Netplay client.

CLONE (variable)

CLOSE-NETPLAY (function)

COLLIDE (generic function)

(THIS THAT)

Trigger defined collision methods for when THIS collides with THAT. If a collision method is defined as (COLLIDE CLASS-1 CLASS-2), then this COLLIDE will trigger when QUADTREE-COLLIDE is called on instances of CLASS-1 that are colliding with instances of CLASS-2.

If (COLLIDE CLASS-2 CLASS-1) is also defined, it will be triggered only when QUADTREE-COLLIDE is called on colliding instances of CLASS-2.

If you always want both orderings of the class pair's COLLIDE to be triggered, then you must call QUADTREE-COLLIDE on every object in the scene. This is done by default but can be interfered with if you use the slot COLLISION-TYPE.

COLLIDING-WITH-BOUNDING-BOX-P (function)

(SELF TOP LEFT RIGHT BOTTOM)

COLLIDING-WITH-P (generic function)

(THIS THAT)

Return non-nil when bounding boxes of THIS and THAT are colliding.

COLLIDING-WITH-RECTANGLE-P (generic function)

(NODE TOP LEFT WIDTH HEIGHT)

Return non-nil if NODE is colliding with the given rectangle.

COLLISION-TYPE (generic function)

(SB-PCL::OBJECT)

COLOR (generic function)

(SB-PCL::OBJECT)

COMPOSE (function)

(BUFFER1 BUFFER2)

Return a new buffer containing all the objects from both BUFFER1 and BUFFER2. The original buffers are destroyed.

COMPOSE-BELOW (function)

(&OPTIONAL BUFFER1 BUFFER2)

Return a new buffer containing all the objects from BUFFER1 and BUFFER2, with BUFFER2's objects pasted below those of BUFFER1. The original buffers are destroyed.

COMPOSE-BESIDE (function)

(&OPTIONAL BUFFER1 BUFFER2)

Return a new buffer containing all the objects from BUFFER1 and BUFFER2, with BUFFER2's objects pasted beside those of BUFFER1. The original buffers are destroyed.

COMPRESS-SEXP (function)

(SEXP)

COMPRESS-STRING (function)

(STRING)

CONNECTEDP (generic function)

(BUFFER)

CONNECTINGP (generic function)

(BUFFER)

CONTROL-CHARACTER-P (function)

(CHARACTER)

CREATE-PATH (function)

(FINDER &KEY (HEIGHT *PATH-GRID-RESOLUTION*) (WIDTH *PATH-GRID-RESOLUTION*)

(BUFFER (CURRENT-BUFFER))) Return a new path for the object FINDER in the buffer BUFFER. The arguments HEIGHT and WIDTH define the dimensions of the grid of cells to be searched for traversability.

CREATE-PROJECT-IMAGE (function)

(PROJECT &KEY FOLDER-NAME PARENT)

CURRENT-BUFFER (function)

Return the currently active buffer object.

CURRENT-DIRECTORY (function)

Returns the pathname of the current directory.

CURRENT-TIME (function)

DEFAULT-EVENTS (variable)

DEFAULT-PROJECT-DIRECTORIES (function)

DEFINE (macro)

(NAME &BODY BODY)

DEFINE-BUFFER (macro)

(NAME &BODY BODY)

DEFINE-RESOURCE (macro)

(&REST ENTRIES)

DEFPROJECT (variable)

DEFRESOURCE (macro)

(&REST ENTRIES)

Define a new resource.

A Xelf 'resource' is an image, sound, text, color, or font. Most resources will depend on a file for their data, such as a .PNG file for images and .WAV files for sounds.

A 'resource record' defines a resource. A resource record is a property list with the following elements:

  • :NAME A string; the name of the resource. (Required)
  • :TYPE A keyword symbol identifying the data type. Valid types are :color :music :image :sample :ttf :font If TYPE is not given, Xelf will try to guess the file type based on the extension given as the NAME.
  • :PROPERTIES Property list with extra data specific to resource TYPE.
  • :FILE Name of file to load data from, if any. Relative to project directory. If FILE is not given, use the NAME.

DEFUN-MEMO (macro)

(NAME ARGS MEMO-ARGS &BODY BODY)

Define a memoized function named NAME. ARGS is the lambda list giving the memoized function's arguments. MEMO-ARGS is a list with optional keyword arguments for the memoization process: :KEY, :VALIDATOR, and :TEST.

DEGRADE-STREAM-P (function)

DEGRADE-TIME-P (function)

(TIME)

DELETE-CHAR (generic function)

(SELF)

DEPTH (variable)

DERANGE (function)

(THINGS)

DESTROY (generic function)

(NODE)

Destroy this NODE and remove it from any buffers.

DIRECTION-DEGREES (function)

(DIRECTION)

Return the angle (in degrees) which DIRECTION points.

DIRECTION-HEADING (function)

(DIRECTION)

Return the angle (in radians) of the keyword DIRECTION.

DIRECTION-TO (generic function)

(NODE OTHER-NODE)

Returns the approximate keyword compass direction between NODE and OTHER-NODE.

DISABLE-KEY-REPEAT (function)

Disable key repeat.

DISTANCE (function)

(X1 Y1 X2 Y2)

Compute the distance between the points X1,Y1 and X2,Y2.

DISTANCE-BETWEEN (generic function)

(NODE OTHER-NODE)

Returns the distance between NODE and OTHER-NODE's center points.

DO-AFTER-EVALUATE (generic function)

(SELF)

DO-NODES (macro)

(SPEC &BODY BODY)

Iterate over the nodes in BUFFER, binding VAR to each node and evaluating the forms in BODY for each. SPEC is of the form (VAR BUFFER).

DRAW (generic function)

(NODE)

Draw this node as a sprite. By default only %IMAGE is drawn. The following node fields will control sprite drawing:

%OPACITY Number in the range 0.0-1.0 with 0.0 being fully transparent and 1.0 being fully opaque.

%BLEND Blending mode for OpenGL compositing. See the function `set-blending-mode' for a list of modes.

DRAW-BORDER (generic function)

(SELF &OPTIONAL (COLOR))

DRAW-BOX (function)

(X Y WIDTH HEIGHT &KEY (COLOR "black") (ALPHA 1))

DRAW-CURSOR (generic function)

(SELF &REST ARGS)

DRAW-HOVER (generic function)

(SELF)

DRAW-IMAGE (function)

(NAME X Y &KEY (Z 0.0) (BLEND :ALPHA) (OPACITY 1.0) HEIGHT WIDTH)

Draw the image named NAME at x,y,z, sized HEIGHT, WIDTH, with blending mode BLEND.

DRAW-LINE (function)

(X0 Y0 X1 Y1 &KEY (COLOR "white"))

DRAW-STRING (function)

(STRING X Y &KEY (COLOR *COLOR*) (FONT *FONT*) (Z 0))

Render the string STRING at x,y with color COLOR and font FONT.

DRAW-STRING-BLENDED (variable)

DRAW-STRING-SHADED (variable)

DRAW-STRING-SOLID (variable)

DRAW-TERMINAL (function)

(&OPTIONAL (NUMBER-OF-LINES *TERMINAL-DISPLAY-LINES*) TRANSLUCENT)

DRAW-TERMINAL-MAYBE (function)

(&OPTIONAL NUMBER-OF-LINES TRANSLUCENT)

DRAW-TEXTURED-RECTANGLE (function)

(X Y Z WIDTH HEIGHT TEXTURE &KEY (BLEND :ALPHA) (OPACITY 1.0)

(VERTEX-COLOR "white")) Draw an OpenGL textured rectangle at X, Y, Z with width WIDTH and height HEIGHT. The argument TEXTURE is a string image name (or a texture returned by FIND-TEXTURE). BLEND sets the blending mode and can be one of :ALPHA, :ADDITIVE, :MULTIPLY.

DRAW-TEXTURED-RECTANGLE-* (function)

(X Y Z WIDTH HEIGHT TEXTURE &KEY U1 V1 U2 V2 (WINDOW-X (WINDOW-X))

(WINDOW-Y (WINDOW-Y)) ANGLE (BLEND :ALPHA) (OPACITY 1.0) (VERTEX-COLOR "white")) Draw an OpenGL textured rectangle at X, Y, Z with width WIDTH and height HEIGHT. The argument TEXTURE is a string image name (or a texture returned by FIND-TEXTURE). BLEND sets the blending mode and can be one of :ALPHA, :ADDITIVE, :MULTIPLY. OPACITY is 1.0 for opaque, 0.0 for transparent.

DRAW-TEXTURED-RECTANGLE-^ (variable)

DROP (generic function)

(SELF NEW-BLOCK &OPTIONAL (DX) (DY) (DZ))

DROP-NODE (generic function)

(SELF OBJECT &OPTIONAL X Y Z)

DUPLICATE (generic function)

(NODE &REST INITARGS &KEY &ALLOW-OTHER-KEYS)

Make a copy of this NODE.

EMPTYP (generic function)

(NODE)

ENABLE-KEY-REPEAT (function)

(&OPTIONAL (DELAY *KEY-REPEAT-DELAY*) (INTERVAL *KEY-REPEAT-INTERVAL*))

Enable key repeat after DELAY milliseconds, repeating at INTERVAL milliseconds.

END-OF-LINE (generic function)

(SELF)

ENTER (generic function)

(SELF &OPTIONAL NO-CLEAR)

ESTIMATE-MESSAGE-LOSS-RATE (function)

(SENT RECEIVED)

EVALUATE-EXPRESSION (generic function)

(SELF SEXP)

EVENTS (variable)

EXIT (generic function)

(SELF)

EXPIRED-TIME-P (function)

(TIME)

FANCY-FORMAT-EXPRESSION (generic function)

(SELF SEXP)

FIELD-VALUE (function)

(FIELD OBJECT)

FIND-BOUNDING-BOX (function)

(NODES)

Return as multiple values the minimal bounding box containing the NODES.

FIND-DIRECTION (function)

(X1 Y1 X2 Y2)

Return the heading (in radians) of the ray from Y1,X1 to Y2,X2.

FIND-HEADING (function)

(X0 Y0 X1 Y1)

Return the angle in radians of the ray from the point X0,Y0 to the point X1,Y1.

FIND-HEADING-DIRECTION (function)

(FLOAT)

FIND-INPUT (generic function)

(SQUAREBALL::ROBOT)

FIND-INSTANCES (function)

(BUFFER CLASS-NAME)

FIND-LOCAL-INPUTS (generic function)

(BUFFER)

FIND-OBJECT (function)

(THING &OPTIONAL NO-ERROR)

FIND-PATH (function)

(PATH X0 Y0 X1 Y1)

FIND-PATH-WAYPOINTS (function)

(PATH X0 Y0 X1 Y1)

Find a path from the starting point to the goal in PATH using A*. Returns a list of coordinate waypoints an AI can follow to reach the goal.

FIND-PLAYER (generic function)

(SQUAREBALL::ARENA SQUAREBALL::N)

FIND-RESOURCE (function)

(NAME &OPTIONAL NOERROR)

Obtain the resource named NAME, performing any necessary loading. Unless NOERROR is non-nil, signal an error when NAME cannot be found.

FIND-RESOURCE-OBJECT (function)

(NAME &OPTIONAL NOERROR)

Obtain the resource object named NAME, or signal an error if not found.

FIND-RESOURCE-PROPERTY (function)

(RESOURCE-NAME PROPERTY)

Read the value of PROPERTY from the resource RESOURCE-NAME.

FIND-SLOTS (function)

(OBJECT)

FIND-TEXT-IMAGE (function)

(&REST ARGS)

FIND-TEXTURE (function)

(NAME)

FLAG-P (generic function)

(SEXP)

FLAG-RECEIVED-P (function)

FLAG-SENT-P (function)

FLATTEN (generic function)

(THING)

FLATTEN-GAME-VARIABLES (function)

(&OPTIONAL FORCE)

FLATTEN-GAME-WORLD (function)

FLATTEN-OBJECT-VARIABLES (function)

(&OPTIONAL FORCE)

FLATTEN-VARIABLE (function)

(SYM)

FOLLOW-WITH-CAMERA (generic function)

(BUFFER NODE)

Arrange for the BUFFER to follow NODE with the camera as it moves.

FOLLOWED-OBJECT (variable)

FONT-HEIGHT (function)

(FONT)

Height of a line of text in font FONT.

FONT-TEXT-WIDTH (function)

(STRING &OPTIONAL (FONT *FONT*))

Width of STRING when rendered in FONT.

FONT-WIDTH (function)

(FONT)

Character with of a bitmap font FONT. Signals an error when called on an outline font.

FORMAT-TERMINAL (function)

(FORMAT-STRING &REST ARGS)

FORWARD (generic function)

(NODE DISTANCE)

Move the NODE forward along its current heading for DISTANCE units.

FORWARD-CHAR (generic function)

(SELF)

FRAME-STATE-P (generic function)

(SEXP)

FULL-COPYRIGHT-NOTICE (function)

FULL-STATE-P (generic function)

(SEXP)

GET-COLOR (variable)

GET-NODES (generic function)

(BUFFER)

Collect all the nodes in the buffer as a list. Consider using DO-NODES instead.

GLIDE-FOLLOW (generic function)

(SELF OBJECT)

GLIDE-WINDOW-TO (generic function)

(BUFFER X Y &OPTIONAL Z)

Configure window to glide smoothly to the point X,Y.

GLIDE-WINDOW-TO-NODE (generic function)

(BUFFER NODE)

Configure window to glide smoothly to the NODE.

GOTO (generic function)

(SELF)

GRACEFULLY (macro)

(&BODY BODY)

HALT-MUSIC (function)

(&OPTIONAL (FADE-MILLISECONDS 0))

Stop all music playing, optionally taking FADE-MILLISECONDS to fade out.

HALT-SAMPLE (function)

(CHANNEL &REST ARGS)

Stop playing the sample on channel CHANNEL.

HANDLE-COLLISION (generic function)

(NODE OTHER-NODE)

Wraparound for collision handling. You shouldn't need to use this explicitly.

HANDLE-EVENT (generic function)

(NODE EVENT)

Attempt to find a binding for EVENT in NODE, and execute it if found.

HANDLE-POINT-MOTION (generic function)

(SELF X Y)

HAS-NODE-P (variable)

HAS-TAG (generic function)

(SELF TAG)

HEADING (function)

(LEVEL TEXT STREAM)

HEADING-BETWEEN (generic function)

(NODE OTHER-NODE)

Return the angle (in radians) of the ray from NODE to OTHER-NODE.

HEADING-DEGREES (function)

(RADIANS)

Convert RADIANS to degrees.

HEADING-DIRECTION (function)

(HEADING)

HEADING-TO-CURSOR (variable)

HEIGHT (generic function)

(SB-PCL::OBJECT)

HIDE-TERMINAL (function)

HOLDING-BUTTON-P (function)

(JOYSTICK)

HOLDING-CONTROL-P (variable)

HOLDING-DOWN-ARROW-P (function)

HOLDING-ENTER-P (function)

HOLDING-LEFT-ARROW-P (function)

HOLDING-RETURN-P (function)

HOLDING-RIGHT-ARROW-P (function)

HOLDING-SHIFT-P (function)

HOLDING-UP-ARROW-P (function)

HORIZONTAL-SCROLLING-MARGIN (variable)

HOST-ID (function)

HOST-ID-STRINGS (function)

HUMANP (generic function)

(SQUAREBALL::ROBOT)

IGNORED-SLOT-P (function)

(SLOT)

IMAGE (variable)

IMAGE-HEADING (variable)

IMAGE-HEIGHT (function)

(IMAGE)

Return the height in pixels of IMAGE.

IMAGE-WIDTH (function)

(IMAGE)

Return the width in pixels of IMAGE.

INDEX-ALL-IMAGES (function)

Index all .PNG images in the project.

INDEX-ALL-SAMPLES (function)

Index all .WAV samples in the project.

INDEX-PENDING-RESOURCES (function)

INDEX-RESOURCE (function)

(RESOURCE)

Add the RESOURCE's record to the resource table. If a record with that name already exists, it is replaced.

INITIALIZE (generic function)

(SELF &KEY)

INITIALIZE-SOUNDS (function)

INPUT-P (generic function)

(SB-PCL::OBJECT)

INPUT-SOCKET (generic function)

(BUFFER)

INPUT-STATE-P (generic function)

(SEXP)

INPUT-TIME (generic function)

(SB-PCL::OBJECT)

INPUT-UPDATE-P (generic function)

(SB-PCL::OBJECT)

INSERT (generic function)

(NODE &OPTIONAL X Y Z)

Add the NODE to the current buffer, optionally at X,Y,Z.

INSERT-STRING (generic function)

(SELF STRING)

INSTALL-QUADTREE (generic function)

(SELF)

IS-JOYSTICK-EVENT (variable)

IS-RAW-JOYSTICK-EVENT (variable)

JOYSTICK-AXIS-PRESSED-P (function)

(AXIS &OPTIONAL (ID 0))

JOYSTICK-AXIS-RAW-VALUE (function)

(AXIS &OPTIONAL (ID 0))

JOYSTICK-AXIS-VALUE (function)

(AXIS &OPTIONAL (ID 0))

JOYSTICK-BUTTON-PRESSED-P (function)

(BUTTON &OPTIONAL (ID 0))

JOYSTICK-BUTTON-STATE (function)

(BUTTON &OPTIONAL (ID 0))

JOYSTICK-BUTTONS (function)

(&OPTIONAL (PROFILE (JOYSTICK-PROFILE)))

JOYSTICK-EVENT-P (function)

(EVENT)

Return non-nil if the EVENT is a joystick event.

JOYSTICK-LEFT-ANALOG-STICK (function)

(&OPTIONAL (PROFILE (JOYSTICK-PROFILE)))

JOYSTICK-NAME (function)

(&OPTIONAL (PROFILE (JOYSTICK-PROFILE)))

JOYSTICK-PROFILE (function)

JOYSTICK-RIGHT-ANALOG-STICK (function)

(&OPTIONAL (PROFILE (JOYSTICK-PROFILE)))

JOYSTICK-TYPE (function)

(&OPTIONAL (PROFILE (JOYSTICK-PROFILE)))

KEYBOARD-DOWN-P (function)

(KEY)

Returns t if the KEY is depressed.

KEYBOARD-HELD-P (function)

(KEY)

Returns the duration in seconds that KEY has been depressed over a number of game loops.

KEYBOARD-KEYS-DOWN (function)

Returns a list of the keys that are depressed.

KEYBOARD-MODIFIER-DOWN-P (function)

(MOD)

Returns t if the modifier key MOD is depressed.

KEYBOARD-MODIFIERS (function)

Returns a list of the modifier keys that are depressed.

KEYBOARD-PRESSED-P (function)

(KEY)

Returns t if KEY has just been depressed in the current game loop.

KEYBOARD-RELEASED-P (function)

(KEY)

Returns t if KEY has just been released in the current game loop.

KEYBOARD-TIME-IN-CURRENT-STATE (function)

(KEY)

Returns the duration in seconds that KEY is either pressed or depressed.

KEYBOARD-TIME-IN-PREVIOUS-STATE (function)

(KEY)

Returns the duration in seconds that KEY was in its previous state either pressed or depressed.

KILL-BUFFER (variable)

LABEL-STRING (generic function)

(SELF)

LABEL-WIDTH (generic function)

(SELF)

LAST-MESSAGE-TIME (function)

LAST-TERMINAL-LINE (function)

LAST-X (generic function)

(SB-PCL::OBJECT)

LAST-Y (generic function)

(SB-PCL::OBJECT)

LAST-Z (generic function)

(SB-PCL::OBJECT)

LEFT-ANALOG-STICK-HEADING (function)

(&OPTIONAL (ID 0))

LEFT-ANALOG-STICK-PRESSED-P (function)

(&OPTIONAL (ID 0))

LEFT-ANALOG-STICK-PRESSURE (function)

(&OPTIONAL (ID 0))

LEFT-OF (generic function)

(SELF &OPTIONAL OTHER)

LEFT-OF-CENTER (generic function)

(SELF &OPTIONAL OTHER)

LINE (variable)

LINES-PER-SCREEN (function)

LOAD-PROJECT-IMAGE (function)

(PROJECT &KEY WITHOUT-DATABASE WITH-DATABASE)

LOAD-RESOURCE (function)

(RESOURCE)

Load the driver-dependent object of RESOURCE into the OBJECT field so that it can be fed to the console.

LOAD-USER-INIT-FILE (function)

LOAD-VARIABLES (function)

LOCAL-HOST (generic function)

(BUFFER)

LOCAL-MACHINE-DESCRIPTION (function)

LOCAL-PORT (generic function)

(BUFFER)

LOCATION (generic function)

(NODE)

Return as values the X,Y location of NODE.

LOGGING (function)

(FORMAT &REST ARGS)

MAKE-BOUNDING-BOX (variable)

MAKE-CENSUS (generic function)

(BUFFER)

MAKE-CLIENT-UPDATE (variable)

MAKE-DIRECTORY-MAYBE (function)

(NAME)

MAKE-EVENT (function)

(CODE MODIFIERS)

Create an input event for the key CODE with MODIFIERS pressed. The argument CODE may be one of:

  • a keyword symbol naming the keyboard key, such as :RETURN or :SPACE (see also `make-key-symbol'.)
  • a one-character string, whose first character is the translated Unicode character being bound
  • an integer whose value is the unicode character code from SDL

or,

  • a cons of the form (key unicode) will be passed through unaltered.

MAKE-FLAG (function)

MAKE-KEYWORD (function)

(&REST ARGS)

MAKE-NODE-STREAM (function)

(&OPTIONAL (BUFFER (CURRENT-BUFFER)))

MAKE-NON-KEYWORD (function)

(S)

Make the symbol or string S into a non-keyword symbol.

MAKE-QUADTREE (function)

(X Y WIDTH HEIGHT &KEY OBJECTS (DEPTH *DEFAULT-QUADTREE-DEPTH*))

Make a new quadtree with the given dimensions, OBJECTS, and DEPTH.

MESSAGE (function)

(FORMAT-STRING &REST ARGS)

Print a log message by passing the arguments to `*message-function'. When the variable `*message-logging*' is nil, this output is disabled.

MESSAGE-READY-P (generic function)

(BUFFER)

MESSAGE-TO-STANDARD-OUTPUT (function)

(MESSAGE-STRING)

METHOD-ARGLIST (variable)

METHOD-ARGLIST-FOR-SWANK (variable)

METHOD-DOCUMENTATION (variable)

MIDPOINT (function)

(A B)

MINUTES (function)

(N)

Returns the number of updates in N minutes.

MOVE (generic function)

(NODE HEADING DISTANCE)

Move the NODE toward HEADING by DISTANCE units.

MOVE-TO (generic function)

(NODE X Y &OPTIONAL Z)

Move the NODE to the point X,Y,Z.

MOVE-TOWARD (generic function)

(NODE DIRECTION &OPTIONAL (STEPS))

Move the node STEPS units in compass direction DIRECTION.

MOVE-WINDOW (generic function)

(BUFFER DX DY &OPTIONAL DZ)

Move the buffer's window by DX,DY.

MOVE-WINDOW-TO (generic function)

(BUFFER X Y &OPTIONAL Z)

Move the buffer's window to X,Y.

MOVE-WINDOW-TO-NODE (generic function)

(BUFFER NODE)

Move the buffer's window to the node NODE.

NEW (function)

(CLASS &REST ARGS)

NEWLINE (generic function)

(SELF)

NEXT-NODE (function)

NICE-STRING (function)

(STRING)

NODE (variable)

NODE-STREAM (function)

NORMALIZE-EVENT (function)

(EVENT)

Convert EVENT to a normal form suitable for `equal' comparisons.

NUMBER-OF-JOYSTICKS (function)

OBJECT-EQ (function)

(A B)

OBJECTS (generic function)

(SB-PCL::OBJECT)

ON-SCREEN-P (function)

(NODE)

Return non-nil when NODE touches the buffer's window bounding box.

OPACITY (variable)

OPEN-CLIENT-SOCKET (function)

OPEN-PROJECT (function)

(&OPTIONAL (PROJECT *PROJECT*) PARAMETERS)

Set the current project to PROJECT.

OPEN-SERVER-SOCKET (function)

OPPOSITE-DIRECTION (function)

(DIRECTION)

Return the direction keyword that is the opposite direction from DIRECTION.

OPPOSITE-HEADING (function)

(HEADING)

Return the heading angle opposite to HEADING.

OUTPUT-HOST (generic function)

(BUFFER)

OUTPUT-PORT (generic function)

(BUFFER)

OUTPUT-SOCKET (generic function)

(BUFFER)

PARSE-IP (function)

(STRING)

PASTE (function)

(DESTINATION SOURCE &OPTIONAL (DX 0) (DY 0))

Copy the objects in SOURCE into DESTINATION with offset DX,DY.

PASTE-AS-NEW-BUFFER (variable)

PASTE-FROM (variable)

PASTE-HERE (generic function)

(BUFFER)

Paste nodes from the clipboard here.

PASTE-INTO (function)

(SELF SOURCE &OPTIONAL (DX 0) (DY 0))

PAUSE (variable)

PAUSED (variable)

PERCENT-GRAY (function)

(&REST ARGS)

PERCENT-GREY (function)

(PERCENTAGE)

PERCENT-OF-TIME (macro)

(PERCENT &BODY BODY)

Evaluate the BODY forms PERCENT percent of the time.

PERIODICALLY (macro)

(&BODY BODY)

PERSISTENT-VARIABLES-FILE (function)

(&OPTIONAL (PROJECT *PROJECT*))

PINNED (variable)

PLAY-MUSIC (function)

(MUSIC-NAME &REST ARGS)

Begin playing the music resource MUSIC-NAME. If the resource MUSIC-NAME has the property :volume, its value is used as the volume of the music. This should be an integer between 0 and 127.

PLAY-SAMPLE (function)

(SAMPLE-NAME &REST ARGS)

When sound is enabled, play the sample resource SAMPLE-NAME. If successful, returns the integer CHANNEL number playing the sound.

PLAY-SAMPLE* (function)

(SAMPLE)

PLAYER-ID (generic function)

(SB-PCL::OBJECT)

PNODE (variable)

POPULATE (generic function)

(BUFFER)

PRELOAD-RESOURCES (function)

Preload all currently indexed resources.

PRESS (generic function)

(SELF X Y &OPTIONAL BUTTON)

PRINT-DATA (generic function)

(SELF DATA &OPTIONAL COMMENT)

PROCESS-FLAG (generic function)

(BUFFER SEXP)

PROCESS-INPUT (generic function)

(BUFFER SEXP)

PROCESS-MESSAGES (generic function)

(BUFFER)

PROCESS-SEXP (generic function)

(BUFFER RAW-SEXP &OPTIONAL TIME)

PROCESS-STATE (generic function)

(BUFFER SEXP)

PROCESS-TIME-OUT (generic function)

(BUFFER)

PROCESS-XELF-OBJECT (generic function)

(BUFFER SEXP)

PROJECT-ORTHOGRAPHICALLY (function)

(&OPTIONAL (DEPTH-TEST T))

PROMPT (variable)

PROMPT-STRING (variable)

QUADTREE (class)

(SB-PCL::OBJECT)

QUADTREE-COLLIDE (generic function)

(OBJECT QUADTREE)

Detect and handle collisions of OBJECT with other objects within the QUADTREE. The multimethod COLLIDE will be invoked on each pair of (OBJECT OTHER-OBJECT)

QUADTREE-DELETE (generic function)

(OBJECT TREE)

Delete the object OBJECT from the quadtree TREE.

QUADTREE-DELETE-MAYBE (generic function)

(OBJECT TREE)

QUADTREE-DEPTH (generic function)

(SB-PCL::OBJECT)

QUADTREE-INSERT (generic function)

(OBJECT TREE)

Insert the object OBJECT into the quadtree TREE.

QUADTREE-INSERT-MAYBE (generic function)

(OBJECT TREE)

QUADTREE-NODE (generic function)

(SB-PCL::OBJECT)

QUADTREE-UPDATE (variable)

QUANTIZE-HEADING (function)

(H)

QUERY-PERIOD (function)

QUERYING (macro)

(&BODY BODY)

QUIT (function)

(&OPTIONAL SHUTDOWN)

Exit the game engine.

RADIAN-ANGLE (function)

(DEGREES)

Convert DEGREES to radians.

RANDOM-CHOOSE (function)

(SET)

Randomly choose one element of the list SET and return it.

READ-EXPRESSION (generic function)

(SELF INPUT-STRING)

READ-SEXP-FROM-FILE (function)

(FILENAME)

RECEIVE-MESSAGE (generic function)

(BUFFER)

RECOMPILE (generic function)

(SELF)

REFORMAT-IP (function)

(IP)

REGISTER-CONNECTION (generic function)

(BUFFER)

REGISTER-LOCAL-HOST (generic function)

(BUFFER HOST)

REGISTER-LOCAL-PORT (generic function)

(BUFFER PORT)

REGISTER-REMOTE-HOST (generic function)

(BUFFER HOST)

REGISTER-REMOTE-PORT (generic function)

(BUFFER PORT)

REGISTER-SOCKET (generic function)

(BUFFER SOCKET)

RELEASE (generic function)

(SELF X Y &OPTIONAL BUTTON)

REMOTE-HOST (generic function)

(BUFFER)

REMOTE-PORT (generic function)

(BUFFER)

REMOVE-BLOCK (variable)

REMOVE-CONTROL-CHARACTERS (function)

(STRING)

REMOVE-NODE (generic function)

(BUFFER NODE)

Remove the object NODE from BUFFER.

REMOVE-TAG (generic function)

(SELF TAG)

RENDER-NOISE (function)

(WIDTH HEIGHT &KEY (GRAININESS 1.0) ARRAY)

Return a rectangle subdivision noise field with WIDTH,HEIGHT.

RENEW-ECHO-TIMER (function)

RESET-JOYSTICK (function)

(&OPTIONAL (DEVICE 0))

Re-open the joystick device and re-initialize the state.

RESET-MESSAGE-FUNCTION (function)

RESIZE (generic function)

(NODE WIDTH HEIGHT)

Resize the NODE to be WIDTH by HEIGHT units.

RESIZE-TO-BACKGROUND-IMAGE (generic function)

(BUFFER)

Resize the buffer to fit its background image.

RESIZE-TO-IMAGE (generic function)

(NODE)

Resize the NODE to fit its image.

RESTORE-LOCATION (generic function)

(QUADRILLE)

REVIVE (generic function)

(NODE REVIVE-P)

RIGHT-ANALOG-STICK-HEADING (function)

(&OPTIONAL (ID 0))

RIGHT-ANALOG-STICK-PRESSED-P (function)

(&OPTIONAL (ID 0))

RIGHT-ANALOG-STICK-PRESSURE (function)

(&OPTIONAL (ID 0))

RIGHT-OF (generic function)

(SELF)

RIGHT-OF-CENTER (generic function)

(SELF)

ROLE-INDICATOR (function)

RUN-HOOK (function)

(HOOK)

Call all the functions in HOOK, in list order.

SAMPLE-PLAYING-P (function)

(SAMPLE)

SAVE-EXCURSION (variable)

SAVE-LOCATION (generic function)

(QUADRILLE)

SCALE (generic function)

(SELF X-FACTOR &OPTIONAL Y-FACTOR)

SCALE-BOUNDING-BOX (function)

(BOX FACTOR)

SCALE-WINDOW (generic function)

(SELF &OPTIONAL (WINDOW-SCALE-X) (WINDOW-SCALE-Y))

SCROLL-DOWN (generic function)

(SELF)

SCROLL-LEFT (generic function)

(SELF)

SCROLL-RIGHT (generic function)

(SELF)

SCROLL-TAP (generic function)

(SELF X Y)

SCROLL-UP (generic function)

(SELF)

SECONDS (function)

(N)

Returns the number of updates in N seconds.

SECONDS->FRAMES (function)

(SECONDS)

Return the time in SECONDS as an integer number of frames. Based on the current *FRAME-RATE*.

SEEK-MUSIC (function)

(POSITION)

SELF (variable)

SEND-EVENT (function)

(EVENT)

Send the event EVENT to the currently active objects.

SEND-FLAG (generic function)

(BUFFER)

SEND-FRAME-STATE (generic function)

(BUFFER)

SEND-FULL-STATE-MAYBE (generic function)

(BUFFER &OPTIONAL FORCE)

SEND-INPUT (generic function)

(BUFFER)

SEND-MESSAGE (generic function)

(BUFFER SEXP)

SEND-NODE (function)

(NODE)

SEND-NODE-STREAM (function)

(&OPTIONAL (RATE *NODE-STREAM-RATE*))

SERIALIZE (function)

(SEXP)

SERVER-BUFFER (variable)

SERVERP (generic function)

(BUFFER)

Return non-nil if this is the Netplay server.

SET-BLENDING-MODE (function)

(MODE)

SET-FIELD-VALUE (function)

(FIELD OBJECT VALUE)

SET-MUSIC-VOLUME (function)

(NUMBER)

Set the mixer music volume between 0 (silent) and 127 (full volume).

SET-NODE-STREAM (function)

(VAL)

SHORT-STRING (function)

(STRING)

SHOW-TERMINAL (function)

(&OPTIONAL (TIME *TERMINAL-SHOW-TIME*))

SHUT-DOWN (function)

SLOT-DEFINITION-NAME (function)

(SLOT)

SNAP-WINDOW-TO-NODE (generic function)

(BUFFER NODE)

Snap the window to the node NODE.

SOLOP (generic function)

(BUFFER)

SPACEBAR (generic function)

(BUFFER)

SPLASH-SCREEN-MAYBE (generic function)

SPLIT-STRING-ON-LINES (function)

(STRING)

STACK-HORIZONTALLY (function)

(&REST BUFFERS)

Combine BUFFERS into a single buffer, with each buffer stacked horizontally.

STACK-VERTICALLY (function)

(&REST BUFFERS)

Combine BUFFERS into a single buffer, with each buffer stacked vertically.

START (generic function)

(SELF)

START-NETPLAY (function)

(&OPTIONAL (NETPLAY *NETPLAY*))

START-SESSION (function)

Initialize the console, open a window, and play. We want to process all inputs, update the game state, then update the display.

START-UP (function)

STATE-P (generic function)

(SEXP)

STEP-COORDINATES (function)

(X Y HEADING &OPTIONAL (DISTANCE 1))

Return as multiple values the coordinates of the point DISTANCE units away from X,Y in the direction given by HEADING.

STEP-IN-DIRECTION (function)

(X Y DIRECTION &OPTIONAL (N 1))

Return the point X Y moved by n squares in DIRECTION.

STEP-TOWARD-HEADING (generic function)

(NODE HEADING &OPTIONAL (DISTANCE))

Return as multiple values the point DISTANCE units at angle HEADING away from the center of NODE.

STOP (generic function)

(SELF)

STOP-FOLLOWING (generic function)

(BUFFER)

Stop all buffer following.

STREAMING-P (variable)

SWITCH-TO-BUFFER (function)

(BUFFER)

Set the currently active buffer to BUFFER.

TAGS (variable)

TAP (generic function)

(SELF X Y)

TEE (function)

(STRING &REST ARGS)

TIMED-OUT-P (function)

TOGGLE-DEBUG (variable)

TOUCHING-POINT-P (generic function)

(NODE X Y)

Return non-nil if this NODE's bounding box touches the point X,Y.

TRANSFORM-WINDOW (function)

(&KEY (X 0) (Y 0) (Z 0) (SCALE-X 1.0) (SCALE-Y 1.0) (SCALE-Z 1.0))

TRIM (generic function)

(BUFFER)

Trim excess space from the buffer.

TRUNCATE-STRING (function)

(STRING)

TRY-CONNECT (generic function)

(BUFFER)

TRY-DEGRADE-STREAM (generic function)

(BUFFER)

TRY-HANDSHAKE (generic function)

(BUFFER)

TRY-IMPROVE-STREAM (generic function)

(BUFFER)

TURN-LEFT (generic function)

(NODE RADIANS)

Increase heading by RADIANS.

TURN-RIGHT (generic function)

(NODE RADIANS)

Decrease heading by RADIANS.

UNBIND-EVENT (generic function)

(NODE EVENT MODIFIERS)

Remove event binding for EVENT from NODE.

UNCOMPRESS-SEXP (function)

(DATA &OPTIONAL LENGTH)

UNFLATTEN (generic function)

(SEXP)

UNFLATTEN-HASH (function)

(DATA TEST)

UNFLATTEN-STATE (function)

(SEXP)

UNFLATTEN-VARIABLE (function)

(DATA)

UNFLATTEN-XELF (generic function)

(SEXP)

UNITS (function)

(SQUAREBALL::N)

UNSERIALIZE (function)

(STRING)

UPDATE (generic function)

(NODE)

Update the node's game logic for one frame.

UPDATE-BOUNDING-BOX (generic function)

(OBJECT QUADTREE)

Update the OBJECT's new bounding box and position in QUADTREE.

UPDATE-BURST-TIMER (function)

UPDATE-INPUT-STATE (generic function)

(NODE PLIST TIME)

UPDATE-LAYOUT-MAYBE (generic function)

(SELF)

UPDATE-TERMINAL-TIMER (function)

UPDATE-WINDOW-GLIDE (generic function)

(SELF)

USE-FILTER (function)

(FILTER)

UUID (generic function)

(SB-PCL::OBJECT)

VALIDATE-MESSAGE (generic function)

(BUFFER OCTETS LENGTH HOST PORT)

VERBOSELY (function)

(FORMAT &REST ARGS)

VERTICAL-SCROLLING-MARGIN (variable)

VISIBLE (variable)

VISIT (variable)

WIDTH (generic function)

(SB-PCL::OBJECT)

WILL-OBSTRUCT-P (generic function)

(NODE PATH-FINDER)

Returns non-nil when the node NODE will obstruct PATH-FINDER during path finding.

WINDOW-BOUNDING-BOX (generic function)

(BUFFER)

Return as multiple values the world-coordinate bounding box of the buffer's viewing window.

WINDOW-POINTER-X (function)

(&OPTIONAL (X *POINTER-X*))

Return the absolute x-coordinate of the mouse pointer.

WINDOW-POINTER-Y (function)

(&OPTIONAL (Y *POINTER-Y*))

Return the absolute y-coordinate of the mouse pointer.

WINDOW-SCROLLING-SPEED (variable)

WINDOW-X (function)

WINDOW-X0 (variable)

WINDOW-Y (function)

WINDOW-Y0 (variable)

WINDOW-Z (variable)

WINDOW-Z0 (variable)

WITH-BORDER (function)

(BORDER BUFFER)

Return a new buffer with the objects from BUFFER surrounded by a border of thickness BORDER units.

WITH-BUFFER (macro)

(BUFFER &REST BODY)

Evaluate the BODY forms in the given BUFFER.

WITH-FIELD-VALUES (variable)

WITH-FIELDS (macro)

(FIELDS OBJECT &BODY BODY)

WITH-FIELDS-EX (variable)

WITH-FONT (macro)

(FONT &REST BODY)

Evaluate forms in BODY with FONT as the current font.

WITH-LOCAL-FIELDS (variable)

WITH-NEW-BUFFER (macro)

(&BODY BODY)

Evaluate the BODY forms in a new buffer.

WITH-QUADTREE (macro)

(QUADTREE &BODY BODY)

Evaluate BODY forms with *QUADTREE* bound to QUADTREE.

WITH-SESSION (macro)

(&BODY BODY)

Starts up Xelf, runs the BODY forms, and starts the main game loop. Xelf will exit after the game loop terminates.

WITH-TIMESTAMP (function)

(&REST ARGS)

WITHOUT-STYLE-WARNINGS (macro)

(&BODY BODY)

WRITE-SEXP-TO-FILE (function)

(FILENAME SEXP)

X (generic function)

(NODE)

Return the current x-coordinate of the NODE.

XBLOCK (variable)

XELF (variable)

XELF-DATAGRAM-P (generic function)

(SEXP)

XELF-OBJECT (variable)

XELF-OBJECT-P (variable)

XELFP (function)

(X)

XNODE (variable)

Y (generic function)

(NODE)

Return the current y-coordinate of the NODE.

Z (generic function)

(NODE)

Return the current z-coordinate of the NODE.

Author: David O'Toole

Created: 2017-04-14 Fri 09:24

Validate