ftp.nice.ch/pub/next/tools/screen/backspace/StarShip.NIHS.bs.tar.gz#/StarShipView.BackModule/Celestial.bproj/Celestial.h

This is Celestial.h in view mode; [Download] [Up]

#import <appkit/appkit.h>
#import "Thinker.h"
#import "Body.h"
#import "StarShipProtocol.h"
#import "CelestialCommon.h"


@interface Celestial:Object
{
	
	id starsObject;
	id tiffManagerObject;
	List *bodyList;
	Sound *pwrDownSnd;
	Sound  *pwrUpSnd;
	
	
	BOOL				starsStopping;	//if starsObject has been told to stop
	BOOL				starsStopped;
	BOOL 				soundEnabled;
    short        		totalBodies;		//how many different ones
	short				animBuilt;			//how many actually built
    short        		currentBodyIndex;
	short				cycleStartIndex;
	short				bodyCount;
	short				currentCycle;
	
	short				bodiesDone;			//how many bodies have been done
 	int					startInterval;		//how often to start
	BOOL				okToDoAnim;			// if tiff images are all loaded
	BOOL				tiffsNeedBuilding;
    Body                *currentBody;

    int 				nextStartTime;		//when to create next body
	float				objectSpeed;		//when creating next body
	int					cycles;				//number of complete cycles done
											// of total number of bodies
    NXRect				bounds;
    const char			*moduleDir;
    Storage				*tiffStorage;
	Storage				*avoidStorage;
    BOOL				firstState;
	int					tiffStorageIndex;	// points to next image to create
	int					animationIndex;		// keeps track where you are
											// in the animation creation
	int isMult;								//current body is multiple
 	float lastTheta[4];						//if doing mult then make sure
											// new theta isn't near old theta
	int		multDelay;						// delay between mult items
	short	currentMultTotal;				// total of mult items to process
}

- init;
- windowSizeChanged;
- setFirstState;
- (Body *)createBody:(int)index;
- setStartInterval: (Slider *)sender;
- setObjectSpeed: (Slider *)sender;
- setNextStartTime;
- setBoundsRect:(NXRect *)r;
- setNextStartTime;
- setStarsOutlet:(id)starsOutlet;
- changeBodyList:(int)index;
- (float)genUniqueTheta;
@end

These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.