First check-in.
This project was originally compiled with THINK C for the Macintosh. The project file is a THINK C project file. Then there is the assembly static library (SMS) that is linked in to provide fast, 4-channel sound (written by Patrick Buckland). Resource files, a balloon file for “balloon help” when it was a thing…. Good luck to anyone trying to bring this beast back to life.
This commit is contained in:
parent
038772c685
commit
806b9b47db
|
@ -0,0 +1 @@
|
|||
//============================================================
//============================================================
//== ==
//== About Dialog Routines Header ==
//== ==
//============================================================
//============================================================
#pragma once
//======================================================== Prototypes
void HiLiteOkayButton (void);
void UnHiLiteOkayButton (void);
void UpdateMainPict (DialogPtr);
pascal Boolean AboutFilter (DialogPtr, EventRecord *, short *);
void DoAbout (void);
//======================================================== Constants
#define rAboutDialogID 150 // res ID of About dialog
#define buttItemOkay 1 // item number of okay button
#define textItemVers 2 // item number of version text
#define pictItemMain 4 // item number of main PICT
#define kOkayButtPICTNotHiLit 150 // res ID of hilit button PICT
#define kOkayButtPICTHiLit 151 // res ID of unhilit button PICT
#define kAboutBandWPICT 152 // res ID of main B&W PICT
#define kAboutColorPICT 153 // res ID of main color PICT
//======================================================== Global Vars
extern Boolean isColor, doZooms;
|
|
@ -0,0 +1 @@
|
|||
//============================================================
//============================================================
//== ==
//== AnimCursor Header ==
//== ==
//============================================================
//============================================================
//======================================================== Defines
#define rAcurID 128
#define rHandCursorID 1000
//======================================================== Structs
typedef struct // defines acur format
{
short n;
short index;
union
{
Handle cursorHdl;
short resID;
} frame[1];
} acurRec, *acurPtr, **acurHandle;
//======================================================== Prototypes
Boolean GetMonoCursors (acurHandle);
Boolean GetColorCursors (acurHandle);
void InitAnimatedCursor (acurHandle);
void LoadCursors (void);
void DisposCursors (void);
void IncrementCursor (void);
void DecrementCursor (void);
void SpinCursor (short);
void BackSpinCursor (short);
//======================================================== External Variables
extern Cursor handCursor;
extern Boolean isColor;
|
|
@ -0,0 +1 @@
|
|||
//============================================================
//============================================================
//== ==
//== AppleTalkDDP Header ==
//== ==
//============================================================
//============================================================
#include <AppleTalk.h>
#include "Globals.h"
//======================================================== Defines
#define kBufferSize 1536
#define kLookupBufferSize 2048
#define kThisType "\pPararena"
#define kAnyZone "\p*"
#define kLookUpSelector "\p="
#define kMaxLookUpNumber 8
#define rNetStringID 190
#define rNetSelectDialogID 190
#define kButtNetOkay 1
#define kButtNetCancel 2
#define kButtNetLook 3
#define kButtNetNext 4
#define kButtNetPrev 5
#define kTextNetNumber 6
#define kTextNetWho 7
#define kNetPowBalloonItem 10
#define kUserNetFrame 11
#define kNetErrWrongSize 321
#define kNetErrNoErr 0
#define kNetErrBadHardware 1
#define kNetErrDriverFailed 2
#define kNetErrSocketFailed 3
#define kNetErrRegisterFailed 4
#define kNetErrCloseFailed 5
#define kNetErrUserCancelled 6
#define kNetErrRemoveFailed 7
#define kNetErrBuffersFailed 8
//======================================================== Type Definitions
typedef struct
{
Str255 name;
AddrBlock address;
} netUserArray[kMaxLookUpNumber];
//======================================================== Prototypes
short InitializeAppleTalk (void); // functions to call from outside
OSErr RegisterNameOnNet (void); // listed in calling sequence
pascal Boolean NamesFilter (DialogPtr, EventRecord *, short *);
Boolean SelectNetOpponentAsynch (void);
OSErr RequestReceiveDDP (void);
OSErr PollIncomingDDP (long, short, short);
OSErr PollSpecificDDP (long, short, short);
OSErr SendOutgoingDDP (long, short);
short CloseDownAppleTalk (void);
OSErr OpenAppleTalkDriver (void); // functions called internally
void GetDefaultName (void);
OSErr OpenSocketDDP (void);
OSErr LookUpNamesAsynch (void);
Boolean IsThereAnotherName (short);
Boolean IsLookUpFinished (void);
OSErr ProcessAName (netUserArray, short);
void UpdateNetOpponents (DialogPtr, netUserArray, short, short);
Boolean DetermineMasterSlave (void);
OSErr DeRegisterName (void);
OSErr CloseSocketDDP (void);
//======================================================== External Variables
extern string31 theNames[10];
extern long speedFlag, theirSpeed;
extern short whichHumanNumber;
extern Boolean isColor;
|
|
@ -0,0 +1 @@
|
|||
//============================================================
//============================================================
//== ==
//== Ball Header ==
//== ==
//============================================================
//============================================================
//======================================================== Defines
#define kInitBallFiringTime 120 // Ball constants
//======================================================== Prototypes
void BallRectFromPosition (void);
void ResetBall (void);
void DoAFoul (void);
void DoBallFiring (void);
void MoveRollingBall (void);
void DoBallInGoal (void);
void DoBallRolling (void);
void HandleBall (void);
//======================================================== External Variables
extern playerType thePlayer, theOpponent;
extern ballType theBall;
extern doorType theDoor;
extern WindowPtr mainWndo;
extern RGBColor RGBBlackColor, RGBWhiteColor;
extern RgnHandle screenRgn;
extern GrafPtr offMaskPort;
extern BitMap offMaskMap;
extern CGrafPort offCPartsPort, offCWorkPort;
extern CGrafPtr offCPartsPtr, offCWorkPtr;
extern BitMap offPartsBits, offWorkBits;
extern Rect offPartsRect, offWorkRect, offMaskRect;
extern long oldDistSquared;
extern short arenaSize, displayMode, displayHCenter, screenWide, screenHigh;
extern short playerScore, opponentScore, whosGotBall, loopsBallHeld;
extern short leftGoalLeague, rightGoalLeague;
extern short vertTable[41][81];
extern short *littleForceTable, *juniorForceTable, *varsityForceTable;
extern short *minorForceTable, *proForceTable;
extern Boolean leftGoalIsPlayers, leftScoredLast, drawThisFrame;
|
|
@ -0,0 +1 @@
|
|||
//============================================================
//============================================================
//== ==
//== Common Person Header ==
//== ==
//============================================================
//============================================================
//======================================================== Prototypes
void PersonRectFromPosition (playerType *);
void ResetPerson (playerType *);
void StartPersonBeamOut (playerType *);
void MovePerson (playerType *);
void OpponentDecides (playerType *);
void DoPersonInArena (playerType *);
void DoPersonBeamingIn (playerType *);
void DoPersonBeamingOut (playerType *);
void PersonStasisToBeamIn (playerType *);
void DoPersonInStasis (playerType *);
void HandlePerson (playerType *);
//======================================================== External Variables
extern ballType theBall;
extern WindowPtr mainWndo;
extern RGBColor RGBBlackColor, RGBWhiteColor;
extern RgnHandle screenRgn;
extern GrafPtr offMaskPort;
extern BitMap offMaskMap;
extern CGrafPort offCPartsPort, offCWorkPort;
extern CGrafPtr offCPartsPtr, offCWorkPtr;
extern BitMap offPartsBits, offWorkBits;
extern Rect offPartsRect, offWorkRect, offMaskRect;
extern Rect playerSrcRects[9][3], opponentSrcRects[9][3];
extern Rect fadeMaskRects[9][3];
extern long playerSrcAddrs[9][3], fadeMaskAddrs[9][3], opponentSrcAddrs[9][3];
extern long maskAddrs[9][3];
extern short arenaSize, displayMode, displayHCenter, displayVCenter;
extern short screenHigh, screenWide, whosGotBall, leftGoalLeague;
extern short rightGoalLeague;
extern short vertTable[41][81];
extern short *littleForceTable, *juniorForceTable, *varsityForceTable;
extern short *minorForceTable, *proForceTable;
extern short fadeMaskSequence[69];
extern Boolean leftGoalIsPlayers, netGameInSession, drawThisFrame;
|
|
@ -0,0 +1 @@
|
|||
//============================================================
//============================================================
//== ==
//== Computer Header ==
//== ==
//============================================================
//============================================================
//======================================================== Defines
#define kGeorgeCrouchPercent 60
#define kMaraCrouchPercent 70
#define kOttoCrouchPercent 80
#define kClaireCrouchPercent 90
#define kEazeCrouchPercent 96
#define kTeakCrouchPercent 98
//======================================================== Prototypes
short DiagonalToPerson (playerType *);
short DiagonalToBall (playerType *);
short OctalToPoint (playerType *, register short, register short);
void LookUpBoardForce (playerType *);
Boolean NearTheBall (playerType *);
Boolean NearTheEdge (playerType *);
Boolean NearTheEdgeSmarter (playerType *);
Boolean NearTheGoal (playerType *);
Boolean NearPerson (void);
Boolean DecentShot (playerType *);
Boolean ExcellentShot (playerType *);
Boolean ExcellentDirectionalShot (playerType *, short);
Boolean PointingToDisaster (playerType *);
short RunTheDiagonalNE (playerType *);
short RunTheDiagonalNW (playerType *);
short RunTheDiagonalSmarterNE (playerType *);
short RunTheDiagonalSmarterNW (playerType *);
short RunTheDiagonalSmartestNE (playerType *);
short RunTheDiagonalSmartestNW (playerType *);
short SeekPlayerGoal (playerType *);
short AnticipateBall (playerType *, short);
short SeekPersonsGoal (playerType *);
short AnticipatePersonsFlank (playerType *, short);
short AnticipatePersonsFace (playerType *, short);
short RunTheCircleRight (playerType *);
short RunTheCircleLeft (playerType *);
void BrakeIfLeaving (playerType *);
void BashUnlessLeaving (playerType *);
void GeorgeDecides (playerType *);
void MaraDecides (playerType *);
void OttoDecides (playerType *);
void ClaireDecides (playerType *);
void EazeDecides (playerType *);
void TeakDecides (playerType *);
//======================================================== External Variables
extern playerType thePlayer;
extern playerType theOpponent;
extern ballType theBall;
extern long oldDistSquared;
extern short whosGotBall, arenaSize, loopsBallHeld;
extern short *littleForceTable;
extern short vertTable[41][81]; // temp testing
extern short displayHCenter; // temp testing
extern short spacialToDirection[9];
extern short boardForceTable[9][2];
extern Boolean gameIsOver;
|
|
@ -0,0 +1 @@
|
|||
//============================================================
//============================================================
//== ==
//== ConfigureSound Header ==
//== ==
//============================================================
//============================================================
//======================================================== Prototypes
void UpdateVolumeIcon (DialogPtr);
void UpdateSoundDialog (DialogPtr);
pascal Boolean SoundFilter (DialogPtr, EventRecord *, short *);
Boolean DoConfigureSound (void);
//======================================================== Defines
#define rSoundDialogID 210
#define kSoundOkay 1
#define kSoundCancel 2
#define kSoundBalloon 3
#define kSoundVolume 6
#define kSoundLouder 7
#define kSoundSofter 8
#define kSoundIconRect 9
#define kSoundEnable 10
#define kSoundBeam 11
#define kSoundIncidental 12
#define kSoundCollisions 13
#define kSoundCrowd 14
#define kSoundTitleLeft 6
#define kSoundTitleTop 16
//======================================================== External Variables
extern short soundVolume;
extern Boolean isColor, doZooms, soundOn;
extern Boolean beamSoundOn, incidentSoundOn, collisionSoundOn, crowdSoundOn;
|
|
@ -0,0 +1 @@
|
|||
//============================================================
//============================================================
//== ==
//== DissBits Header ==
//== ==
//============================================================
//============================================================
//======================================================== Routines
void DissBits13QD (Rect *clippedRect);
void DissBits12QD (Rect *clippedRect);
void DissBits13Assm1 (Rect *clippedRect);
void DissBits13Assm4 (Rect *clippedRect);
void DissBits12Assm1 (Rect *clippedRect);
void DissBits12Assm4 (Rect *clippedRect);
void DissolveWorkToMain (void);
//======================================================== Globals
extern WindowPtr mainWndo;
extern CGrafPort offCWorkPort;
extern CGrafPtr offCWorkPtr;
extern BitMap offWorkBits;
extern Ptr offWorkPix;
extern Rect offWorkRect;
extern long screenRowAddrs[480], workRowOffsets[480];
extern short screenRowBytes, workRowBytes, displayMode;
extern Boolean isColor, useQD;
|
|
@ -0,0 +1 @@
|
|||
//============================================================
//============================================================
//== ==
//== Dynamics Header ==
//== ==
//============================================================
//============================================================
//======================================================== Defines
#define kPersonMass 4 // purely relative & arbitrary unit
#define kPersonSmallMass 2 // for colliding with ball
#define kBallMass 1
#define kPersonBallMass 5
#define kPersonPersonMass 8
#define kPersonDampening 2 // fraction subtracted when wall collided
#define kBallDampening 3 // bigger => more energy lost
#define kLoopsImpactless 6
#define kFrameToDampen 5
#define kEnergyAbsorbed 32 // fraction of velocity subtracted @ impact
#define kPBEnergyAbsorbed 4 // as above but for player/ball collisions
//======================================================== Prototypes
void DoPersonBallMerged (playerType *); // catching/dropping the ball
void DoPersonBallParted (playerType *);
void DoPersonBallCollided (playerType *); // ball/person dynamics
void DoPersonPersonCollided (void);
void CheckPersonBallCollision (playerType *); // test ball/person coll.
void CheckPersonPersonCollision (void);
void CheckPersonBallCollision (playerType *);
short GetPlaceOnArena (short, short);
void HandlePersonWallCollision (playerType *); // handle collisions with the wall
void CheckUpOnBall (void);
void HandleBallWallCollision (void);
void HandleCollisions (void); // handle non-wall collisions
//======================================================== External Variables
extern playerType theOpponent;
extern playerType thePlayer;
extern ballType theBall;
extern long oldDistSquared;
extern short whosGotBall, loopsBallHeld, leftGoalLeague, rightGoalLeague;
extern short *littleForceTable, *juniorForceTable, *varsityForceTable;
extern short *minorForceTable, *proForceTable;
extern short boardForceTable[9][2];
extern Boolean imTheMaster, netGameInSession, drawThisFrame;
|
|
@ -0,0 +1 @@
|
|||
//============================================================
//============================================================
//== ==
//== Environ Header ==
//== ==
//============================================================
//============================================================
//======================================================== Defines
// Alert and Dialog ID Constants
#define rSwitchDepthAlert 130
//======================================================== Prototypes
Boolean TrapExists (short);
Boolean DoWeHaveGestalt (void);
Boolean DoWeHaveWNE (void);
Boolean DoWeHaveColor (void);
Boolean DoWeHaveSystem602 (void);
Boolean DoWeHaveSystem605 (void);
Boolean DoWeHaveSystem7 (void);
short HowWillWeDisplay (Boolean);
short WhatsOurDepth (void);
Boolean CanWeDisplay4Bit (void);
void SwitchDepthOrAbort (void);
void CheckOurEnvirons (void);
//======================================================== External Variables
extern macEnvironment thisMac;
extern short displayMode;
extern Boolean isColor, knowsColor;
|
|
@ -0,0 +1 @@
|
|||
/*============================================================*/
/*============================================================*/
/*== ==*/
/*== File Error Handling Header ==*/
/*== ==*/
/*============================================================*/
/*============================================================*/
#pragma once
/*======================================================== Prototypes */
Boolean CheckFileError (short, StringPtr);
/*======================================================== Constants */
#define rFileErrorAlert 140 /* res ID of alert */
#define rFileErrorStrings 140 /* res ID of string list */
|
File diff suppressed because one or more lines are too long
|
@ -0,0 +1 @@
|
|||
/*============================================================*/
/*============================================================*/
/*== ==*/
/*== Human Header ==*/
/*== ==*/
/*============================================================*/
/*============================================================*/
/*======================================================== Prototypes */
void DetermineHumanFacing (playerType *);
void GetHumanInput (void);
void PrepareNetHumanInput (void);
void ProcessNetPlayerInput (void);
void HandleBoardCursor (void);
/*======================================================== External Variables */
extern playerType thePlayer, theOpponent;
extern ballType theBall;
extern cursorType boardCursor;
extern KeyMap theKeyMap;
extern WindowPtr mainWndo;
extern RGBColor RGBBlackColor, RGBWhiteColor;
extern RgnHandle screenRgn;
extern GrafPtr offMaskPort;
extern BitMap offMaskMap;
extern CGrafPort offCPartsPort, offCWorkPort;
extern CGrafPtr offCPartsPtr, offCWorkPtr;
extern BitMap offPartsBits, offWorkBits;
extern Rect offPartsRect, offWorkRect, offMaskRect, mouseFrame;
extern Rect playerSrcRects[9][3];
extern Rect fadeMaskRects[9][3];
extern long playerSrcAddrs[9][3], fadeMaskAddrs[9][3];
extern long maskAddrs[9][3];
extern short arenaSize, displayMode, displayHCenter, displayVCenter;
extern short screenWide, screenHigh, maxBoardForce;
extern short screenHCenter, screenVCenter;
extern short vertTable[41][81];
extern short boardForceTable[9][2];
extern short spacialToDirection[9];
extern short fadeMaskSequence[69];
extern Boolean leftGoalIsPlayers, showBoardCursor, disableBoardCursor;
extern Boolean wasBrakeOn;
|
|
@ -0,0 +1 @@
|
|||
/*============================================================*/
/*============================================================*/
/*== ==*/
/*== Idle Header ==*/
/*== ==*/
/*============================================================*/
/*============================================================*/
#pragma once
/*======================================================== Routine Prototypes */
void DoMouseEvent (void);
void DoKeyDown (void);
void DoUpdateEvent (WindowPtr);
void DoDiskEvent (void);
short WindowType (WindowPtr);
void DoActivate (WindowPtr, Boolean);
void DoActivateEvent (void);
void DoSuspendResumeEvent (void);
void HandleEvent (void);
/*======================================================== Globals */
extern macEnvironment thisMac;
extern WindowPtr mainWndo;
extern EventRecord theEvent;
extern Rect dragRect, sizeRect, nullRect;
extern short primaryMode, soundVolume, wasSoundVolume;
extern Boolean quitting, inBackground, pausing, splashIsUp;
|
File diff suppressed because one or more lines are too long
|
@ -0,0 +1 @@
|
|||
/*============================================================*/
/*============================================================*/
/*== ==*/
/*== InitGameStructs Header ==*/
/*== ==*/
/*============================================================*/
/*============================================================*/
/*======================================================== Defines */
#define kSmInitBallXPos 384 /* ball constants */
#define kSmInitBallZPos 14000
#define kSmInitBallXVel -4800
#define kSmInitBallZVel 0
#define kLgInitBallXPos 384
#define kLgInitBallZPos 17728
#define kLgInitBallXVel -5600 /* was -5600 */
#define kLgInitBallZVel 0
/*======================================================== Routines */
void SetPrefsToDefault (void);
void LoadThePreferences (void);
void LoadLargeDataStructures (void);
void VarInit (void);
void InitBallData (void);
void InitPlayerData (void);
void InitOpponentData (void);
void InitDigiDispData (void);
/*======================================================== External Variables */
extern ballType theBall;
extern playerType thePlayer;
extern playerType theOpponent;
extern doorType theDoor;
extern digiDispType scoreDisplays[2];
extern cursorType boardCursor;
extern replayType *replayData;
extern statType theStats[10];
extern string31 theNames[10];
extern string31 mostTitlesName, mostPointsName;
extern string31 mostFoulsName, mostCritsName;
extern macEnvironment thisMac;
extern RGBColor starColors[3];
extern Rect screenRect, nullRect, replayRect, colonDest, mouseFrame;
extern Rect leftArrowSrc, rightArrowSrc, leftArrowDest, rightArrowDest;
extern Rect leftArrowStorage, rightArrowStorage;
extern Rect timingSource, leftTimingDest, rightTimingDest;
extern Rect playerSrcRects[9][3], fadeMaskRects[9][3], opponentSrcRects[9][3];
extern Rect colonSrc[2];
extern Point starList[kNumberOfStars];
extern RgnHandle screenRgn; /* pull later */
extern long mostTitlesDate, mostPointsDate, lifeTime;
extern long mostFoulsDate, mostCritsDate, speedFlag;
extern long thisTime, encryptedNumber;
extern short mostTitles, mostPoints, mostFouls, mostCrits;
extern short screenWide, screenHigh, displayHCenter, displayVCenter, isDepth;
extern short displayMode, arenaSize, primaryMode, whichGame, isLeague;
extern short whichHumanNumber, leftPlayerNumber, rightPlayerNumber;
extern short screenHCenter, screenVCenter, soundVolume;
extern short maxBoardForce;
extern short antiWhosBall[4];
extern short vertTable[41][81];
extern short fadeMaskSequence[69];
extern short antiFacing[9];
extern short spacialToDirection[9];
extern short boardForceTable[9][2];
extern short teaksThreshholds[10];
extern short *littleForceTable, *juniorForceTable, *varsityForceTable;
extern short *minorForceTable, *proForceTable;
extern Boolean quitting, leftGoalIsPlayers, enableBackground;
extern Boolean useQD, isColor, showBoardCursor, autoSetDepth, enableAnnouncer;
extern Boolean pausing, newGame, autoTeamsDialog, canReplay, doSkipFrames;
extern Boolean replayGoals, replayFouls, replayOnR, replaySomething, willUseQD;
extern Boolean soundOn, beamSoundOn, incidentSoundOn, collisionSoundOn;
extern Boolean crowdSoundOn, smsActivated, doZooms, replayZooms, netOnly;
|
|
@ -0,0 +1 @@
|
|||
/*============================================================*/
/*============================================================*/
/*== ==*/
/*== Initialization Routines ==*/
/*== ==*/
/*============================================================*/
/*============================================================*/
/*======================================================== Prototypes */
void ToolBoxInit (void);
void BitMapInit (void);
void PixMap4Init (void);
void MaskMapInit (void);
void MaskPixInit (void);
void GetBaseAddressC (void);
void GetBaseAddress1 (void);
void LoadSounds (void);
void SpeedTest (void);
void InitializeAll (void);
/*======================================================== Globals */
extern ballType theBall;
extern playerType thePlayer;
extern playerType theOpponent;
extern doorType theDoor;
extern digiDispType scoreDisplays[2];
extern cursorType boardCursor;
extern macEnvironment thisMac;
extern EventRecord theEvent;
/* offscreen variables */
extern GrafPtr offBackPtr, offPartsPtr, offWorkPtr, offMaskPtr;
extern BitMap offBackBits, offPartsBits, offWorkBits, offMaskMap;
extern CGrafPort offCBackPort, offCPartsPort, offCWorkPort, offCMaskPort;
extern CGrafPtr offCBackPtr, offCPartsPtr, offCWorkPtr, offCMaskPtr;
extern Ptr offBackPix, offPartsPix, offWorkPix, offMaskPix;
extern Rect offBackRect, offPartsRect, offWorkRect, offMaskRect;
extern Rect leftArrowStorage, rightArrowStorage;
extern Rect colonDest, replayRect, rightArrowDest, leftArrowDest;
extern Rect playerSrcRects[9][3], fadeMaskRects[9][3], opponentSrcRects[9][3];
extern Rect colonSrc[2];
extern long screenBase, replaySrc, replayDest;
extern long insetBytes;
extern long ballSrcAddr, ballMaskAddr;
extern long playerSrcAddrs[9][3], fadeMaskAddrs[9][3], opponentSrcAddrs[9][3];
extern long maskAddrs[9][3];
extern long screenRowAddrs[480], workRowOffsets[480];
extern short workRowBytes, backRowBytes, partsRowBytes, soundFileRefNum;
extern short screenRowBytes, maskCRowBytes, maskRowBytes, soundVolume;
extern short displayMode, screenWide, screenHigh, isDepth, wasSoundVolume;
extern short soundPriorities[kMaxNumberOfSounds];
extern Boolean inBackground, smsActivated;
extern Boolean useQD, isColor, canNetwork, netOnly;
extern Boolean soundLoaded[kMaxNumberOfSounds];
extern Boolean incidentSoundLoaded[kMaxIncidentalSounds];
|
|
@ -0,0 +1 @@
|
|||
/*============================================================*/
/*============================================================*/
/*== ==*/
/*== Main Header ==*/
/*== ==*/
/*============================================================*/
/*============================================================*/
#pragma once
/*======================================================== Function Prototypes */
pascal void ThisSysBeep (short);
void RootLoop (void);
void DumpTheDefaults (void);
void ShutItDown (void);
|
|
@ -0,0 +1 @@
|
|||
/*============================================================*/
/*============================================================*/
/*== ==*/
/*== Main Window Header ==*/
/*== ==*/
/*============================================================*/
/*============================================================*/
/*======================================================== Defines */
#define rMainWndoID 128 /* 'wind' Resource ID Constant */
#define rCLUTID 128 /* 'clut' Resource ID Constant */
#define rSplashPICT1 5000 /* 'PICT' ID for B&W splash screen */
#define rSplashPICT4 5001 /* 'PICT' ID for 16 color splash screen */
/*======================================================== Routines */
void EraseMenuBarRect (void);
void FixVisRegion (void);
void LoadBackgroundPict (void);
void UpdateGoalPicts (Boolean);
void RefreshMainWindow (void);
void OpenMainWindow (void);
void DoSplashScreen (void);
void CloseMainWindow (void);
/*======================================================== External Variables */
extern playerType thePlayer;
extern WindowPtr mainWndo;
extern RGBColor RGBBlackColor, RGBWhiteColor;
extern BitMap offBackBits, offWorkBits;
extern GrafPtr offBackPtr;
extern CGrafPtr offCBackPtr, offCWorkPtr;
extern Rect dragRect, offWorkRect;
extern short screenHigh, screenWide, arenaSize, displayMode, wasMenuBarHeight;
extern short horizontal, vertical, primaryMode;
extern short leftGoalLeague, rightGoalLeague;
extern Boolean isColor, leftGoalIsPlayers, useQD, splashIsUp;
|
|
@ -0,0 +1 @@
|
|||
/*============================================================*/
/*============================================================*/
/*== ==*/
/*== Menu Header ==*/
/*== ==*/
/*============================================================*/
/*============================================================*/
/*======================================================== Defines */
/* Menu Constants */
#define iNoItem 0
#define rAppleMenuID 128 /* Apple */
#define iAboutItem 1
#define rFileMenuID 129 /* File */
#define iNewGame 1
#define iResumeGame 2
#define iEndGame 3
#define iQuit 5
#define rGameMenuID 130 /* Game */
#define iTeamsSetUp 1
#define iChooseLeague 2
#define iPracticeBoardin 4
#define iPracticeScoring 5
#define iStandardGame 6
#define iTournament 7
#define rOptionsMenuID 131 /* Options */
#define iInstantReplay 1
#define iSound 2
#define iNames 3
#define iPreferences 4
#define iPlayersStats 6
#define iRecords 7
#define iMemory 9
#define iConvert 10
#define iHelp 11
/*======================================================== Routines */
void CheckGameMenu (void);
void SetMBarToPlaying (void);
void SetMBarToIdle (void);
void ValidateMenuBar (void);
void DoAppleMenu (short);
void DoFileMenu (short);
void DoGameMenu (short);
void DoOptionsMenu (short);
void DoMenuChoice (long);
void MenuBarInit (void);
/*======================================================== Globals */
extern macEnvironment thisMac;
extern short primaryMode, whichGame, leftPlayerNumber, rightPlayerNumber;
extern short system7HelpItem;
extern Boolean quitting, menuBarIsHidden, pausing, netOnly;
|
|
@ -0,0 +1 @@
|
|||
/*============================================================*/
/*============================================================*/
/*== ==*/
/*== NetOpponent Header ==*/
/*== ==*/
/*============================================================*/
/*============================================================*/
/*======================================================== Defines */
#define kNetworkVersion 1
#define kHelloIndicator 4321
#define kRequestSize 6
#define kEnviroMessageSize 16
#define kRequestEnvironment 3735
#define kGotYourEnvironment 842
/*======================================================== Type Definintions */
typedef struct
{
long speed; /* 4 bytes */
short version; /* 2 bytes */
short arena; /* 2 bytes */
short goal; /* 2 bytes */
short spotPts; /* 2 bytes */
short league; /* 2 bytes */
Boolean scoredLast; /* 1 byte */
Boolean limited; /* 1 byte */
} environMessage; /* total size = 16 bytes */
typedef struct
{
short requested; /* 2 bytes */
short firstArgument; /* 2 bytes */
short secondArgument; /* 2 bytes */
} requestMessage; /* total size = 6 bytes */
/*======================================================== Prototypes */
OSErr SendSynchPulse (void);
OSErr SendThisEnvironment (void);
OSErr BegForSomething (short);
Boolean WaitForSynch (short);
Boolean ConfirmEnvironmentMatch (void);
Boolean WhatsTheGamesOutcome (void);
void PrepareStandardMessage (void);
void SendMessage (void);
Boolean SendModalMessage (short);
void ConfirmModalMessage (void);
void ReceiveMessage (void);
void TranslateStandardMessage (void);
void InitializeMessages (void);
Boolean SpotPoints (void);
/*======================================================== External Variables */
extern playerType thePlayer;
extern playerType theOpponent;
extern ballType theBall;
extern doorType theDoor;
extern masterSendType masterMessage;
extern slaveSendType slaveMessage;
extern long speedFlag, theirSpeed;
extern short frameCounter, newFrameCount, lastFrameCount;
extern short playerTotalFouls, opponentTotalFouls, playerTotalGoals;
extern short playerTotalCrits, opponentTotalCrits, opponentTotalGoals;
extern short playerFouls, opponentFouls, screenWide, wasLastSound;
extern short playerScore, opponentScore, whosGotBall, primaryMode;
extern short masterSendSize, slaveSendSize, loopDelay, isLeague, theirLeague;
extern short droppedPackets, sentPackets, lengthOfApplause, lengthOfMob;
extern short arenaSize, whichGame, spotPoints, spottedPoints, lastByteCount;
extern short firstPackageShort;
extern short antiFacing[9];
extern short antiWhosBall[4];
extern char playerWonTheGame;
extern Boolean imTheMaster, netMirroring, leftScoredLast, playerInBack;
extern Boolean useQD, leftGoalIsPlayers, madeThePickUp, theyAreMajor;
extern Boolean gameIsOver, doZooms, netOnly;
|
|
@ -0,0 +1 @@
|
|||
/*============================================================*/
/*============================================================*/
/*== ==*/
/*== Play Core Header ==*/
/*== ==*/
/*============================================================*/
/*============================================================*/
/*======================================================== Prototypes */
void DoCommandKey (void);
void DoPausing (void);
void UnPauseGame (void);
void DoSpecial (void);
void DoSoundToggle (void);
void CheckAbortiveInput (void);
void HandleTimerEtc (void);
void RunGameOverGame (void);
void RunNetGameOverGame (void);
void RunNetGame (void);
void RunBoardinGame (void);
void RunScorinGame (void);
void RunStandardGame (void);
void PlayGame (void);
/*======================================================== External Variables */
extern playerType thePlayer;
extern playerType theOpponent;
extern ballType theBall;
extern doorType theDoor;
extern digiDispType scoreDisplays[2];
extern replayType *replayData;
extern statType theStats[10];
extern string31 theNames[10];
extern soundQueue crowdQueue, incidentalQueue;
extern KeyMap theKeyMap;
extern EventRecord theEvent;
extern WindowPtr mainWndo;
extern RGBColor RGBBlackColor, RGBWhiteColor;
extern RgnHandle screenRgn;
extern GrafPtr offMaskPort;
extern BitMap offMaskMap;
extern CGrafPort offCPartsPort, offCWorkPort;
extern CGrafPtr offCPartsPtr, offCWorkPtr, offCBackPtr;
extern BitMap offPartsBits, offWorkBits, offBackBits;
extern Rect offPartsRect, offWorkRect, offMaskRect;
extern Rect cameraRect, replayRect, colonDest, screenRect;
extern Rect colonSrc[2];
extern long timeElapsed, baseTime, wasTime, timePaused, replayFlag;
extern short frameCounter, newFrameCount, lastFrameCount;
extern short primaryMode, displayMode, screenWide, screenHigh, arenaSize;
extern short displayHCenter, displayVCenter, whichGame, loopsBallHeld;
extern short playerFouls, opponentFouls, whosGotBall, whichHumanNumber;
extern short playerScore, opponentScore, lengthOfApplause;
extern short leftPlayerNumber, rightPlayerNumber, loopDelay, wasLastSound;
extern short masterSendSize, slaveSendSize, loopDelay, lengthOfMob;
extern short droppedPackets, sentPackets, lastSoundPriority;
extern short teaksThreshholds[10];
extern char playerWonTheGame;
extern Boolean pausing, quitting, useQD, isColor, leftScoredLast, gameIsOver;
extern Boolean autoTeamsDialog, leftGoalIsPlayers, madeThePickUp, soundOn;
extern Boolean netGameInSession, imTheMaster, playerJustScored, enableAnnouncer;
extern Boolean canReplay, replayGoals, replayFouls, replayOnR, replaySomething;
extern Boolean disableBoardCursor, smsActivated, newGame, enableBackground;
extern Boolean soundLoaded[kMaxNumberOfSounds];
|
|
@ -0,0 +1 @@
|
|||
/*============================================================*/
/*============================================================*/
/*== ==*/
/*== PlayUtils Header ==*/
/*== ==*/
/*============================================================*/
/*============================================================*/
/*======================================================== Prototypes */
void DoEndGame (void);
void UpdateWorldRecords (void);
void UpdateStats (void);
void InitiateGameOver (void);
void DoSlaveGameOver (void);
void DrawNames (void);
void UpdatePlayerScore (void);
void UpdateOpponentScore (void);
void DoPlayerScores (void);
void DoOpponentScores (void);
void HandlePlayerFoul (void);
void HandleOpponentFoul (void);
Boolean DoNetGameSetUp (void);
void DisplayHoopla (void);
Boolean CantRepeatTournament (void);
Boolean MustProLeagueTournament (void);
Boolean CanWePlay (void);
void PrepareNewGame (void);
/*======================================================== External Variables */
extern playerType thePlayer;
extern playerType theOpponent;
extern ballType theBall;
extern doorType theDoor;
extern digiDispType scoreDisplays[2];
extern replayType *replayData;
extern statType theStats[10];
extern string31 theNames[10];
extern string31 mostTitlesName, mostPointsName;
extern string31 mostFoulsName, mostCritsName;
extern soundQueue crowdQueue, incidentalQueue;
extern Str255 thisName, opponentsName;
extern KeyMap theKeyMap;
extern WindowPtr mainWndo;
extern RGBColor RGBBlackColor, RGBWhiteColor;
extern RgnHandle screenRgn;
extern GrafPtr offMaskPort;
extern BitMap offMaskMap;
extern CGrafPort offCPartsPort, offCWorkPort;
extern CGrafPtr offCPartsPtr, offCWorkPtr, offCBackPtr;
extern BitMap offPartsBits, offWorkBits, offBackBits;
extern Rect offPartsRect, offWorkRect, offMaskRect;
extern Rect cameraRect, replayRect, colonDest, screenRect;
extern Rect colonSrc[2];
extern long timeElapsed, baseTime, wasTime, timePaused, replayFlag;
extern long mostTitlesDate, mostPointsDate;
extern long mostFoulsDate, mostCritsDate;
extern short frameCounter, newFrameCount, lastFrameCount;
extern short mostTitles, mostPoints, mostFouls, mostCrits;
extern short primaryMode, displayMode, screenWide, screenHigh, arenaSize;
extern short displayHCenter, displayVCenter, whichGame, loopsBallHeld;
extern short playerFouls, opponentFouls, whosGotBall, whichHumanNumber;
extern short playerTotalFouls, opponentTotalFouls, playerTotalGoals;
extern short playerTotalCrits, opponentTotalCrits, opponentTotalGoals;
extern short playerScore, opponentScore, lengthOfApplause;
extern short leftPlayerNumber, rightPlayerNumber, loopDelay, wasLastSound;
extern short masterSendSize, slaveSendSize, loopDelay, lengthOfMob;
extern short droppedPackets, sentPackets, lastSoundPriority;
extern short spotPoints, spottedPoints, isLeague;
extern short teaksThreshholds[10];
extern char playerWonTheGame;
extern Boolean pausing, quitting, useQD, isColor, leftScoredLast, gameIsOver;
extern Boolean autoTeamsDialog, leftGoalIsPlayers, madeThePickUp, soundOn;
extern Boolean netGameInSession, imTheMaster, playerJustScored, enableAnnouncer;
extern Boolean canReplay, replayGoals, replayFouls, replayOnR, replaySomething;
extern Boolean disableBoardCursor, smsActivated, newGame, theyAreMajor;
extern Boolean wasBrakeOn, drawThisFrame, splashIsUp;
extern Boolean soundLoaded[kMaxNumberOfSounds];
|
|
@ -0,0 +1 @@
|
|||
/*============================================================*/
/*============================================================*/
/*== ==*/
/*== PlayerStats Header ==*/
/*== ==*/
/*============================================================*/
/*============================================================*/
/*======================================================== Defines */
#define rStatsDialogID 1004
#define rEraseStatsAlertID 1005
#define kStatsPopMenuID 1000
#define kTitles1PictID 1030
#define kTallys1PictID 1031
#define kDefeated1PictID 1032
#define kX1PictID 1033
#define kCheck1PictID 1034
#define kTitles4PictID 1040
#define kTallys4PictID 1041
#define kDefeated4PictID 1042
#define kX4PictID 1043
#define kCheck4PictID 1044
#define kStatsOkay 1
#define kStatsTitles 2
#define kStatsTallys 3
#define kStatsDefeated 4
#define kStatsBalloon 5
#define kStatsPopUp 6
#define kStatsErase 9
#define kEraseStatsOkay 1
#define kStatsTitleLeft 6
#define kStatsTitleTop 16
/*======================================================== Prototypes */
void EraseStats (short);
void DrawStatsPopUpItem (void);
void DrawStatsPopUp (void);
void RedrawStatValues (void);
void UpdateStatsDialog (DialogPtr);
void DoStatsPopUpSelect (DialogPtr);
pascal Boolean StatsFilter (DialogPtr, EventRecord *, short *);
Boolean DoPlayerStats (void);
void ResetWorldRecords (void);
/*======================================================== External Variables */
extern statType theStats[10];
extern string31 theNames[10];
extern string31 mostTitlesName, mostPointsName;
extern string31 mostFoulsName, mostCritsName;
extern Rect teamsPopUpRect;
extern MenuHandle teamsPopUp;
extern long mostTitlesDate, mostPointsDate;
extern long mostFoulsDate, mostCritsDate;
extern short mostTitles, mostPoints, mostFouls, mostCrits;
extern short teamsPopUpWidth, popUpItemSelected, whichHumanNumber;
extern short teaksThreshholds[10];
extern Boolean isColor, doZooms;
|
|
@ -0,0 +1 @@
|
|||
/*============================================================*/
/*============================================================*/
/*== ==*/
/*== Preferences Handling Header ==*/
/*== ==*/
/*============================================================*/
/*============================================================*/
#pragma once
/*======================================================== Constants */
#define kPrefCreatorType 'RenA' /* creator type of prefs file */
#define kPrefFileType 'renP' /* file type of prefs file */
#define kPrefFileName "\pPara Prefs" /* name of prefs file */
#define kDefaultPrefFName "\pPreferences" /* name for pref folder if error */
#define rPrefsStringsID 160 /* resource ID of prefs strings */
#define kPrefsFNameIndex 1 /* string corresponding to folder name */
/*======================================================== Prototypes */
Boolean CanUseFindFolder (void);
Boolean GetPrefsFPathSyst7 (long *, short *);
Boolean CreatePrefsFolder (short *);
Boolean GetPrefsFPathSyst6 (short *);
Boolean WritePrefsFileSyst7 (long *, short *, prefsInfo *);
Boolean WritePrefsFileSyst6 (short *, prefsInfo *);
Boolean SavePrefs (prefsInfo *);
Boolean ReadPrefsFileSyst7 (long *, short *, prefsInfo *);
Boolean ReadPrefsFileSyst6 (short *, prefsInfo *);
Boolean LoadPrefs (prefsInfo *);
|
|
@ -0,0 +1 @@
|
|||
/*============================================================*/
/*============================================================*/
/*== ==*/
/*== Render Header ==*/
/*== ==*/
/*============================================================*/
/*============================================================*/
/*======================================================== Prototypes */
void FillInTheSrcAndMaskRect (playerType *);
void FillInTheSrcAndMaskAddr (playerType *);
void DetermineFrameRate (void);
void HandlePreGraphics (void);
void HandlePostGraphics (void);
void RenderScene (void);
void DisplayScoreDigit (short, short, short);
void DisplayPlayerFouls (short);
void DisplayOpponentFouls (short);
void TwinkleAStar (void);
void DrawAllStars (void);
void UpdateArrows (void);
void UpdateBallTimers (playerType *);
/*======================================================== External Variables */
extern playerType thePlayer;
extern playerType theOpponent;
extern ballType theBall;
extern cursorType boardCursor;
extern Rect leftTimingDest, rightTimingDest;
extern Rect playerSrcRects[9][3], fadeMaskRects[9][3], opponentSrcRects[9][3];
extern long playerSrcAddrs[9][3], fadeMaskAddrs[9][3];
extern long maskAddrs[9][3], opponentSrcAddrs[9][3];
extern long screenRowAddrs[480], workRowOffsets[480];
extern short isDepth;
extern Boolean useQD, isColor, netGameInSession, playerInBack, drawThisFrame;
extern Boolean imTheMaster, madeThePickUp, leftGoalIsPlayers, doSkipFrames;
extern Boolean splashIsUp;
|
|
@ -0,0 +1 @@
|
|||
/*============================================================*/
/*============================================================*/
/*== ==*/
/*== RenderAsm1 Header ==*/
/*== ==*/
/*============================================================*/
/*============================================================*/
/*======================================================== Prototypes */
void DropDoorToWorkMapAsm1 (void);
void MaskCursorAsm1 (long, short);
void MaskBallAsm1 (long, short);
void MaskPlayerAsm1 (long, long, long, short);
void DumpWholePlayerAsm1 (long, long);
void DumpWholeBallAsm1 (long, long);
void DumpCursorAsm1 (long, long);
void DumpDoorToScreenAsm1 (void);
void PatchPlayerAsm1 (long, long);
void PatchBallAsm1 (long, long);
void PatchCursorAsm1 (long, long);
void RenderSceneAsm1 (void);
void ReplayWorkToMainAsm1 (void);
/*======================================================== External Variables */
extern playerType thePlayer;
extern playerType theOpponent;
extern ballType theBall;
extern doorType theDoor;
extern digiDispType scoreDisplays[2];
extern cursorType boardCursor;
extern BitMap offBackBits, offPartsBits, offWorkBits;
extern Rect screenRect, cameraRect;
extern WindowPtr mainWndo;
extern Ptr offBackPix, offPartsPix, offWorkPix;
extern long screenBase, replaySrc, replayDest;
extern long ballSrcAddr, ballMaskAddr;
extern long screenRowAddrs[480], workRowOffsets[480];
extern long playerSrcAddrs[9][3], fadeMaskAddrs[9][3], opponentSrcAddrs[9][3];
extern long maskAddrs[9][3];
extern short screenRowBytes, workRowBytes, backRowBytes, partsRowBytes;
extern short maskRowBytes;
extern Boolean knowsColor, playerInBack, showBoardCursor, disableBoardCursor;
extern Boolean drawThisFrame;
|
|
@ -0,0 +1 @@
|
|||
/*============================================================*/
/*============================================================*/
/*== ==*/
/*== RenderAsm4 Header ==*/
/*== ==*/
/*============================================================*/
/*============================================================*/
/*======================================================== Prototypes */
void DropDoorToWorkMapAsm4 (void);
void MaskBoardCursorAsm4 (long, short);
void MaskBallAsm4 (long, short);
void MaskPlayerAsm4 (long, long, long, short);
void DumpWholePlayerAsm4 (long, long);
void DumpWholeBallAsm4 (long, long);
void DumpCursorAsm4 (long, long);
void DumpDoorToScreenAsm4 (void);
void PatchPlayerAsm4 (long, long);
void PatchBallAsm4 (long, long);
void PatchCursorAsm4 (long, long);
void RenderSceneAsm4 (void);
void ReplayWorkToMainAsm4 (void);
/*======================================================== External Variables */
extern playerType thePlayer;
extern playerType theOpponent;
extern ballType theBall;
extern doorType theDoor;
extern digiDispType scoreDisplays[2];
extern cursorType boardCursor;
extern BitMap offMaskMap;
extern Rect screenRect, cameraRect;
extern CGrafPtr offCPartsPtr, offCWorkPtr;
extern Ptr offBackPix, offPartsPix, offWorkPix;
extern long screenBase, replaySrc, replayDest;
extern long ballSrcAddr, ballMaskAddr;
extern long screenRowAddrs[480], workRowOffsets[480];
extern long playerSrcAddrs[9][3], fadeMaskAddrs[9][3], opponentSrcAddrs[9][3];
extern long maskAddrs[9][3];
extern short screenRowBytes, workRowBytes, backRowBytes, partsRowBytes;
extern Boolean playerInBack, showBoardCursor, disableBoardCursor, drawThisFrame;
|
|
@ -0,0 +1 @@
|
|||
/*============================================================*/
/*============================================================*/
/*== ==*/
/*== QuickDraw Rendering Header ==*/
/*== ==*/
/*============================================================*/
/*============================================================*/
/*======================================================== Prototypes */
void RenderSceneQD1 (void);
void RenderSceneQDC (void);
void DisplayScoreDigitQD1 (short, short, short);
void DisplayScoreDigitQDC (short, short, short);
void DisplayPlayerFoulsQD1 (short);
void DisplayPlayerFoulsQDC (short);
void DisplayOpponentFoulsQD1 (short);
void DisplayOpponentFoulsQDC (short);
void TwinkleAStarQD1 (short);
void TwinkleAStarQDC (short, short);
void DrawOffscreenAStarQD1 (short);
void DrawOffscreenAStarQDC (short, short);
void UpdateArrowsQD1 (void);
void UpdateArrowsQDC (void);
void RedrawWholeScreen (void);
void ReplayBackToWorkQD1 (void);
void ReplayBackToWorkQDC (void);
void ReplayWorkToMainQD1 (void);
void ReplayWorkToMainQDC (void);
Boolean DumpPict (short);
void UpdateBallTimersQD1 (Rect *);
void UpdateBallTimersQDC (Rect *);
/*======================================================== External Variables */
extern playerType thePlayer;
extern playerType theOpponent;
extern ballType theBall;
extern doorType theDoor;
extern digiDispType scoreDisplays[2];
extern replayType *replayData;
extern RGBColor RGBBlackColor;
extern RGBColor starColors[3];
extern WindowPtr mainWndo;
extern GrafPtr offBackPtr, offWorkPtr;
extern GrafPtr offMaskPort;
extern BitMap offBackBits, offPartsBits, offWorkBits;
extern BitMap offMaskMap;
extern CGrafPort offCBackPort, offCPartsPort, offCWorkPort;
extern CGrafPtr offCBackPtr, offCPartsPtr, offCWorkPtr;
extern Rect offBackRect, offPartsRect, offWorkRect, offMaskRect;
extern Rect replayRect, cameraRect, colonDest;
extern Rect leftArrowSrc, rightArrowSrc, leftArrowDest, rightArrowDest;
extern Rect leftArrowStorage, rightArrowStorage, timingSource;
extern Rect playerSrcRects[9][3], fadeMaskRects[9][3], opponentSrcRects[9][3];
extern Rect colonSrc[2];
extern Point starList[kNumberOfStars];
extern short displayMode, screenWide, screenHigh, whosGotBall;
extern short playerFouls, opponentFouls;
extern Boolean leftGoalIsPlayers, playerInBack, playerJustScored, isColor;
extern Boolean drawThisFrame, showBoardCursor;
|
|
@ -0,0 +1 @@
|
|||
/*============================================================*/
/*============================================================*/
/*== ==*/
/*== Replay Header ==*/
/*== ==*/
/*============================================================*/
/*============================================================*/
/*======================================================== Constants Defined */
#define kCameraInertia 5
/*======================================================== Prototypes */
void AmassReplayData (void);
void DoInstantReplay (void);
void RenderInstantReplayQD1 (void);
void RenderInstantReplayQDC (void);
void RenderInstantReplay (void);
/*======================================================== External Variables */
extern playerType thePlayer;
extern playerType theOpponent;
extern ballType theBall;
extern doorType theDoor;
extern digiDispType scoreDisplays[2];
extern replayType *replayData;
extern WindowPtr mainWndo;
extern GrafPtr offBackPtr, offWorkPtr;
extern RGBColor RGBBlackColor, RGBWhiteColor;
extern RgnHandle screenRgn;
extern GrafPtr offMaskPort;
extern BitMap offPartsBits, offWorkBits, offBackBits, offMaskMap;
extern CGrafPort offCPartsPort, offCWorkPort;
extern CGrafPtr offCPartsPtr, offCWorkPtr, offCBackPtr;
extern Ptr offBackPix;
extern Rect offPartsRect, offWorkRect, offMaskRect;
extern Rect cameraRect, replayRect, colonDest, screenRect;
extern Rect playerSrcRects[9][3], fadeMaskRects[9][3], opponentSrcRects[9][3];
extern Rect colonSrc[2];
extern long timeElapsed, baseTime, wasTime, replaySrc, replayDest;
extern short frameCounter, newFrameCount, lastFrameCount;
extern short primaryMode, displayMode, screenWide, screenHigh, arenaSize;
extern short displayHCenter, displayVCenter, workRowBytes, screenRowBytes;
extern short playerFouls, opponentFouls;
extern short playerScore, opponentScore;
extern short leftPlayerNumber, rightPlayerNumber, loopDelay;
extern short masterSendSize, slaveSendSize, loopDelay;
extern short droppedPackets, sentPackets, whosGotBall;
extern Boolean pausing, quitting, useQD, isColor, leftScoredLast, replayZooms;
extern Boolean autoTeamsDialog, leftGoalIsPlayers, madeThePickUp;
extern Boolean netGameInSession, imTheMaster, canReplay, playerJustScored;
|
|
@ -0,0 +1 @@
|
|||
#define AnyChannel -1
#define SMSTime1 26
#define SMSTime2 30
#define SMSTime4 42
#define kNoChannel 0
#define kOneChannel 1
#define kTwoChannel 2
#define kFourChannel 4
pascal extern void SMSINIT(void);
pascal extern void SMSEXIT(void);
pascal extern void SMSSETMODE (short theMode);
pascal extern int SMSGETMODE (void);
pascal extern void SMSSWITCHER (EventRecord *theEvent);
pascal extern void SMSSTART (short soundID);
pascal extern void SMSSTARTLO (short soundID);
pascal extern void SMSSTARTMID (short soundID);
pascal extern void SMSSTARTHI (short soundID);
pascal extern void SMSSTARTCHAN (short soundID, short channel);
pascal extern void SMSSTARTBIND (short soundID, Ptr completionProc);
pascal extern void SMSSTARTGEN (short soundID, short channel, short priority, short repetitions, Ptr completionProc);
pascal extern void SMSSTOP (void);
pascal extern void SMSSTOPP (short priority);
pascal extern void SMSSTOPCHAN (short channel);
pascal extern void SMSSTOPGEN (short channel, short priority);
pascal extern void SMSLOAD (short soundID);
pascal extern void SMSUNLOAD (short soundID);
pascal extern void SMSLOCK (short soundID);
pascal extern void SMSUNLOCK (short soundID);
pascal extern void SMSSOUNDON (void);
pascal extern void SMSSOUNDOFF (void);
pascal extern void SMSSETSTATE (Boolean state);
pascal extern char SMSGETSTATE (void);
pascal extern char SMSCHANNELFREE (short channel);
pascal extern int SMSDECOMPRESS (Handle theSound);
pascal extern void SMSSETIMING (short oneChan, short twoChan, short threeChan);
pascal extern char SMSSOUNDMANAGER (void);
|
|
@ -0,0 +1 @@
|
|||
pascal void Show_help( short help_dlog_id, StringPtr help_text_name,
short base_pict_id, StringPtr default_filename,
StringPtr default_menuname );
pascal void Flash_button( DialogPtr the_dialog, short item_number );
|
|
@ -0,0 +1 @@
|
|||
/*============================================================*/
/*============================================================*/
/*== ==*/
/*== SoundUtils Header ==*/
/*== ==*/
/*============================================================*/
/*============================================================*/
/*======================================================== Prototypes */
void TurnSMSOn (void);
void TurnSMSOff (void);
void PlaySoundSMS (short);
void PlayIncidentSoundSMS (short);
void FlushSoundQueues (void);
void BeginGamePointSound (void);
void BeginAllTiedSound (void);
void StartCrowdSound (void);
void StartApplauseSound (void);
void Applaud (void);
void StartMobSound (void);
void HandleCrowdSound (void);
void StopCrowdSound (void);
void ResumeCrowdSound (void);
void QueueUpIncidental (short, short, short);
void HandleIncidentalQueue (void);
/*======================================================== External Variables */
extern soundQueue crowdQueue, incidentalQueue;
extern short lengthOfApplause, lengthOfMob, whichGame, wasLastSound;
extern short lastSoundPriority, soundFileRefNum;
extern short soundPriorities[kMaxNumberOfSounds];
extern Boolean beamSoundOn, incidentSoundOn, collisionSoundOn, crowdSoundOn;
extern Boolean smsActivated, soundOn, imTheMaster, gameIsOver, netGameInSession;
extern Boolean soundLoaded[kMaxNumberOfSounds];
extern Boolean incidentSoundLoaded[kMaxIncidentalSounds];
|
|
@ -0,0 +1 @@
|
|||
/*============================================================*/
/*============================================================*/
/*== ==*/
/*== Team Set-Up Header ==*/
/*== ==*/
/*============================================================*/
/*============================================================*/
/*======================================================== Defines */
#define rTeamsDialogID 1000
#define kTeamsPopMenuID 1000
#define kButtItemOkay 1
#define kButtItemCancel 2
#define kUserPopUpItem 3
#define kUserIconItem 4
#define kGeorgeIconItem 5
#define kMaraIconItem 6
#define kOttoIconItem 7
#define kClaireIconItem 8
#define kEazeIconItem 9
#define kTeakIconItem 10
#define kNetIconItem 11
#define kLeftStandItem 12
#define kRightStandItem 13
#define kPowBalloonItem 14
#define kStandsItem 15
#define kSeperatorItem 16
#define kArenaFrameItem 17
#define kCheckTeamsAuto 18
#define kTeamsTitleLeft 6
#define kTeamsTitleTop 16
#define rTeamsStandPictID1 2002
#define rTeamsStandPictID4 2003
#define rTeamsSeperatorPictID1 2004
#define rTeamsSeperatorPictID4 2005
/*======================================================== Prototypes */
void WhosOnFirst (void);
void UpdateLeftStand (DialogPtr);
void UpdateRightStand (DialogPtr);
void DrawTeamsPopUpItem (void);
void DrawTeamsPopUp (void);
void RedrawStandNames (DialogPtr);
void RedrawNetIcon (DialogPtr);
void GrayOutIcons (DialogPtr);
void UpdateTeamsDialog (DialogPtr);
void DoDragIcon (DialogPtr, Point, short);
void DoTeamsPopUpSelect (void);
void SwapLeftAndRightSelected (DialogPtr);
pascal Boolean TeamsFilter (DialogPtr, EventRecord *, short *);
Boolean DoTeamsSetUp (void);
/*======================================================== Globals */
extern playerType thePlayer;
extern playerType theOpponent;
extern string31 theNames[10];
extern Cursor handCursor;
extern short whichHumanNumber, leftPlayerNumber, rightPlayerNumber, arenaSize;
extern short whichGame, leftGoalLeague, rightGoalLeague, isLeague, theirLeague;
extern Boolean isColor, autoTeamsDialog, canNetwork, leftGoalIsPlayers;
extern Boolean disableBoardCursor, netGameInSession, doZooms;
|
File diff suppressed because one or more lines are too long
|
@ -0,0 +1 @@
|
|||
/*============================================================*/
/*============================================================*/
/*== ==*/
/*== ValidInstall Header ==*/
/*== ==*/
/*============================================================*/
/*============================================================*/
/*======================================================== Defines */
#define kEncryptMask 0x08423735
#define kLegalVolumeCreation 0xA687BB77
#define rMasterDialogID 1010
#define kMasterFinderButton 1
#define kMasterNetOnlyButton 2
#define kMasterUserBalloon 3
#define kMasterTitleLeft 6
#define kMasterTitleTop 16
/*======================================================== Prototypes */
short GetSystemVolume (void);
long VolumeCreated (void);
Boolean VolumeMatchesPrefs (long, long *);
Boolean PowerBook100Exception (void);
Boolean SpecificVolumeCreated (void);
pascal Boolean MasterFilter (DialogPtr, EventRecord *, short *);
Boolean GetMasterDisk (void);
Boolean ValidInstallation (Boolean);
/*======================================================== External Variables */
extern long encryptedNumber, tempLong;
extern Boolean isColor;
|
|
@ -0,0 +1 @@
|
|||
_____________________________________________________
_____________________________________________________
Pararena 2.0 Version History
_____________________________________________________
_____________________________________________________
=== Pararena 2.00 ===
¥ Initial release.
=== Pararena 2.01 ===
¥ No longer attempts to unmount start-up volume during validation.
¥ Forces opponents to both play Professional League when playing each other.
¥ Forces opponents to play a Standard Game when playing each other.
¥ Doesn't steal your "show off time" when Instant Replay comes up after game over.
¥ First Demo version spun off.
=== Pararena 2.02 ===
¥ Got rid of random bit of text that could appear in "AboutÉ" dialog (non-Demo only).
=== Pararena 2.03 ===
¥ Changed 4-bit AboutÉ box PICT.
¥ Recompiled with THINK C 5.04.
¥ Cleaned up some of the ValidInstall.c code (nil completionPtrs, NewPtr() calls, etc.).
¥ Cleaned up color splash screen just a touch.
¥ Replaced DisposHandle() calls with DisposCIcon() calls in Sound dialog.
¥ Added a few keyboard shortcuts in Sound dialog.
¥ Fixed GetChooserName function.
¥ Added 1993 to the copyright strings.
¥ Changed back-door date to my sister's birthday.
¥ Doesn't complain if UnmountVol() fails because of fBsyErr.
=== Pararena 2.04 ===
¥ No longer register name on network via a temp param block (now stays allocated).
¥ Filled in Prefs file calls ioCompletion field with nil pointer just to be safe.
¥ Moved ShieldCursor() call to beginning of direct-to-screen routines.
¥ Added ShowCursor() calls to tail of direct-to-screen drawing.
=== Pararena 2.05 ===
¥ Call InitCursor() after dismissing Help dialog (sometimes left the text cursor).
¥ Got rid of the Beep from Switch Depth Alert (most annoying).
¥ Fixed white rect around Instant Replay window (was being menuBar clipped).
¥ Fixed garbage left behind by Instant Replay window (was being menuBar clipped).
<-- note: v. 2.05 never shipped since a bug was found to have been introduced -->
=== Pararena 2.06 ===
¥ Completely rewrote the MenuBar show/hide routine to fix the bug introduced in 2.05.
¥ Modified how pixmaps created to fix a bug on my Duo 210 - no SetEntries() call.
=== Pararena 2.07 ===
¥ Recompiled with THINK C 6.00.
¥ Added secret QT feature - holding <option-cmd-R> down dumps replay to PICTs.
|
Binary file not shown.
|
@ -0,0 +1 @@
|
|||
/*======================================================== ShowMenuBar */
void ShowMenuBar (WindowPtr theWindow)
{
Rect theRect;
RgnHandle worldRgn, menuBarRgn;
GrafPtr wasPort;
Point originPt;
if (GetMBarHeight() == 0)
{
GetPort((GrafPtr)&wasPort);
SetPort((GrafPtr)theWindow);
GetOrigin(&originPt);
SetOrigin(0, 0);
MBarHeight = wasMenuBarHeight;
theRect = (**GetGrayRgn()).rgnBBox;
UnionRect(&theRect, &screenBits.bounds, &theRect);
worldRgn = NewRgn();
OpenRgn();
FrameRoundRect(&theRect, 16, 16);
CloseRgn(worldRgn);
theRect = screenBits.bounds;
theRect.bottom = theRect.top + wasMenuBarHeight;
menuBarRgn = NewRgn();
RectRgn(menuBarRgn, &theRect);
SectRgn(worldRgn, menuBarRgn, menuBarRgn); /* /------------------\ */
DisposeRgn(worldRgn); /* |__________________| */
UnionRgn(theWindow->visRgn, menuBarRgn, theWindow->visRgn);
DiffRgn(theWindow->visRgn, menuBarRgn, theWindow->visRgn);
DisposeRgn(menuBarRgn);
DrawMenuBar();
SetOrigin(originPt.h, originPt.v);
SetPort((GrafPtr)wasPort);
}
}
/*======================================================== HideMenuBar */
void HideMenuBar (WindowPtr theWindow)
{
Rect theRect;
RgnHandle worldRgn, menuBarRgn;
GrafPtr wasPort;
Point originPt;
short nowMBarHeight;
nowMBarHeight = GetMBarHeight();
if (nowMBarHeight != 0)
{
GetPort((GrafPtr)&wasPort);
SetPort((GrafPtr)theWindow);
GetOrigin(&originPt);
SetOrigin(0, 0);
wasMenuBarHeight = GetMBarHeight();
MBarHeight = 0;
theRect = (**GetGrayRgn()).rgnBBox;
UnionRect(&theRect, &screenBits.bounds, &theRect);
worldRgn = NewRgn(); // /-----------\
OpenRgn(); // | whole |
FrameRoundRect(&theRect, 16, 16); // | desktop |
CloseRgn(worldRgn); // \___________/
theRect = screenBits.bounds;
theRect.bottom = theRect.top + wasMenuBarHeight;
menuBarRgn = NewRgn();
RectRgn(menuBarRgn, &theRect);
SectRgn(worldRgn, menuBarRgn, menuBarRgn); // /------------------\
DisposeRgn(worldRgn); // |__________________|
UnionRgn(theWindow->visRgn, menuBarRgn, theWindow->visRgn);
DisposeRgn(menuBarRgn);
SetOrigin(originPt.h, originPt.v);
SetPort((GrafPtr)wasPort);
}
}
/*======================================================== ShowMenuBar */
void ShowMenuBar (WindowPtr theWindow)
{
Rect theRect;
short nowMBarHeight;
nowMBarHeight = GetMBarHeight();
if (nowMBarHeight == 0)
{
MBarHeight = wasMenuBarHeight;
DiffRgn(GrayRgn, menuBarRgn, GrayRgn);
DisposeRgn(menuBarRgn);
// DrawMenuBar();
}
}
/*======================================================== HideMenuBar */
void HideMenuBar (WindowPtr theWindow)
{
Rect theRect;
short nowMBarHeight;
nowMBarHeight = GetMBarHeight();
if (nowMBarHeight != 0)
{
wasMenuBarHeight = GetMBarHeight();
MBarHeight = 0;
theRect = screenBits.bounds;
theRect.bottom = theRect.top + wasMenuBarHeight;
menuBarRgn = NewRgn();
RectRgn(menuBarRgn, &theRect);
UnionRgn(GrayRgn, menuBarRgn, GrayRgn);
PaintOne(kNilPointer, menuBarRgn);
}
}
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -0,0 +1 @@
|
|||
//============================================================
//============================================================
//== ==
//== Dump Pict Routines ==
//== ==
//============================================================
//============================================================
#include "UnivUtilities.h"
//extern GrafPtr offWorkPtr;
//extern BitMap offWorkBits;
//extern CGrafPort offCWorkPort;
//extern CGrafPtr offCWorkPtr;
//extern Rect replayRect;
//-------------------------------------------------------- Type Definitions
typedef struct
{
PicHandle pHand;
short gRef;
Boolean fileOK;
} GDataRec;
typedef struct
{
CGrafPort TRUEPort;
GDataRec GDStuff;
} GportPlus, *GPPtr;
//-------------------------------------------------------- Prototypes
void DeathKiss (short, short, StringPtr);
pascal void PutPICTData (Ptr, short);
//-------------------------------------------------------- PutPICTData
pascal void PutPICTData (Ptr dataPtr, short byteCount)
{
long longCount;
GPPtr myPortPlus;
GetPort((GrafPtr *)&myPortPlus);
longCount = byteCount;
if (myPortPlus->GDStuff.fileOK)
{
if (FSWrite(myPortPlus->GDStuff.gRef, &longCount, dataPtr) != noErr)
myPortPlus->GDStuff.fileOK = FALSE;
if (myPortPlus->GDStuff.pHand != kNilPointer)
(**(myPortPlus->GDStuff.pHand)).picSize += longCount;
}
}
//-------------------------------------------------------- DeathKiss
void DeathKiss (short globalRef, short vrefnum, StringPtr nameStr)
{
OSErr theErr;
if (globalRef != 0)
theErr = FSClose(globalRef);
theErr = FSDelete(nameStr, vrefnum);
SysBeep(1);
}
//-------------------------------------------------------- PICTOut
void PICTOut (void)
{
OSErr err;
short i, vrefnum, globalRef;
long longCount, longZero, bytesAvail;
CQDProcs myProcs;
QDProcs myOldProcs;
Picture savePictSizeFrame;
Str255 nameStr;
GrafPtr oldPort;
GportPlus wPortPlus;
GPPtr wPortPlusPtr;
PicHandle pictHand;
SysEnvRec theWorld;
BitMapPtr bitPtr;
GDHandle myDev;
err = SysEnvirons(1, &theWorld);
wPortPlusPtr = &wPortPlus;
globalRef = 0;
if (GetVInfo(0, (StringPtr)nameStr, &vrefnum, &bytesAvail) != noErr)
{
DeathKiss(globalRef, vrefnum, nameStr);
return;
}
PasStringCopy("\pScreen 0", nameStr);
do
{
err = Create(nameStr, vrefnum, 'GAO.', 'PICT');
if (err != noErr)
{
if (err == dupFNErr)
{
nameStr[8]++;
}
else
{
DeathKiss(globalRef, vrefnum, nameStr);
return;
}
}
}
while (err != noErr);
if (FSOpen(nameStr, vrefnum, &globalRef) != 0)
{
DeathKiss(globalRef, vrefnum, nameStr);
return;
}
longZero = 0L;
longCount = 4L;
for (i = 0; i < (532 / 4); i++)
{
err = FSWrite(globalRef, &longCount, &longZero);
if (err != noErr)
{
DeathKiss(globalRef, vrefnum, nameStr);
return;
}
}
if (SetFPos(globalRef, fsFromStart, 522) != noErr)
{
DeathKiss(globalRef, vrefnum, nameStr);
return;
}
GetPort(&oldPort);
wPortPlus.GDStuff.gRef = globalRef;
wPortPlus.GDStuff.pHand = kNilPointer;
wPortPlus.GDStuff.fileOK = TRUE;
if (theWorld.hasColorQD)
{
OpenCPort((CGrafPtr)wPortPlusPtr);
SetStdCProcs(&myProcs);
((GrafPtr)wPortPlusPtr)->grafProcs = (QDProcs *)&myProcs;
myProcs.putPicProc = (QDPtr)PutPICTData;
myDev = GetMainDevice();
bitPtr = (BitMapPtr)*(**myDev).gdPMap;
}
else
{
OpenPort((GrafPtr)wPortPlusPtr);
SetStdProcs(&myOldProcs);
((GrafPtr)wPortPlusPtr)->grafProcs = &myOldProcs;
myOldProcs.putPicProc = (QDPtr)PutPICTData;
bitPtr = (BitMapPtr)&wPortPlusPtr->TRUEPort.portPixMap;
}
ClipRect(&bitPtr->bounds);
pictHand = OpenPicture(&bitPtr->bounds);
if (pictHand != kNilPointer)
{
wPortPlus.GDStuff.pHand = pictHand;
CopyBits(bitPtr, bitPtr, &bitPtr->bounds, &bitPtr->bounds, srcCopy, kNilPointer);
ClosePicture();
KillPicture(pictHand);
}
else
wPortPlus.GDStuff.fileOK = FALSE;
((GrafPtr)wPortPlusPtr)->grafProcs = kNilPointer;
SetPort(oldPort);
if (theWorld.hasColorQD)
CloseCPort((CGrafPtr)wPortPlusPtr);
else
ClosePort((GrafPtr)wPortPlusPtr);
if (!(wPortPlus.GDStuff.fileOK))
{
DeathKiss(globalRef, vrefnum, nameStr);
return;
}
if (SetFPos(globalRef, fsFromStart, 512) != noErr)
{
DeathKiss(globalRef, vrefnum, nameStr);
return;
}
longCount = sizeof(Picture);
if (FSWrite(globalRef, &longCount, &savePictSizeFrame) != noErr)
{
DeathKiss(globalRef, vrefnum, nameStr);
return;
}
if (FSClose(globalRef) != noErr)
{
DeathKiss(globalRef, vrefnum, nameStr);
return;
}
}
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -0,0 +1 @@
|
|||
/*============================================================*/
/*============================================================*/
/*== ==*/
/*== File Error Handling File ==*/
/*== ==*/
/*============================================================*/
/*============================================================*/
/*======================================================== Includes */
#include "UnivUtilities.h"
#include "FileError.h"
/*======================================================== CheckFileError */
Boolean CheckFileError (short resultCode, StringPtr fileName)
{
short dummyInt, stringIndex;
Str255 errMessage, errNumString;
if (resultCode == noErr) /* No problems? Then cruise */
{
return(TRUE);
}
switch (resultCode)
{
case dirFulErr:
stringIndex = 2;
break;
case dskFulErr:
stringIndex = 3;
break;
case ioErr:
stringIndex = 4;
break;
case bdNamErr:
stringIndex = 5;
break;
case fnOpnErr:
stringIndex = 6;
break;
case mFulErr:
stringIndex = 7;
break;
case tmfoErr:
stringIndex = 8;
break;
case wPrErr:
stringIndex = 9;
break;
case fLckdErr:
stringIndex = 10;
break;
case vLckdErr:
stringIndex = 11;
break;
case fBsyErr:
stringIndex = 12;
break;
case dupFNErr:
stringIndex = 13;
break;
case opWrErr:
stringIndex = 14;
break;
case volOffLinErr:
stringIndex = 15;
break;
case permErr:
stringIndex = 16;
break;
case wrPermErr:
stringIndex = 17;
break;
default:
stringIndex = 1;
break;
}
InitCursor();
GetIndString(errMessage, rFileErrorStrings, stringIndex);
NumToString((long)resultCode, errNumString);
ParamText(errMessage, errNumString, fileName, "\p");
CenterAlert(rFileErrorAlert);
dummyInt = Alert(rFileErrorAlert, 0L);
return(FALSE);
}
|
File diff suppressed because one or more lines are too long
|
@ -0,0 +1 @@
|
|||
/*============================================================*/
/*============================================================*/
/*== ==*/
/*== Idle Routines ==*/
/*== ==*/
/*== (event handling routines) ==*/
/*== ==*/
/*============================================================*/
/*============================================================*/
/*======================================================== Includes */
#include "AppleEvents.h"
#include "Globals.h"
#include "UnivUtilities.h"
#include "Idle.h"
#include "Menu.h"
#include "MainWindow.h"
#include "SoundUtils.h"
#include <Sound.h>
#include "Show_help.h"
/*======================================================== DoMouseEvent */
void DoMouseEvent (void)
{
WindowPtr whichWindow;
GrafPtr wasPort;
Point tempPt;
Rect sizeRect;
long menuChoice, windSize;
short thePart;
thePart = FindWindow(theEvent.where, &whichWindow);
switch (thePart)
{
case inMenuBar:
menuChoice = MenuSelect(theEvent.where);
DoMenuChoice(menuChoice);
break;
case inSysWindow:
SystemClick(&theEvent, whichWindow);
break;
case inDrag:
break;
case inContent:
break;
case inGrow:
break;
case inGoAway:
break;
case inZoomIn:
break;
case inZoomOut:
break;
default:
break;
}
}
/*======================================================== DoKeyDown */
void DoKeyDown (void)
{
register char theChar;
theChar = theEvent.message & charCodeMask;
if ((theEvent.modifiers & cmdKey) != 0)
DoMenuChoice(MenuKey(theChar));
else
{
if ((theChar == kTabKeyASCII) && (primaryMode == kPlayMode) && (pausing))
{
pausing = FALSE;
}
else if (theChar == kHelpKeyASCII)
{
Show_help(rHelpDialogID, (StringPtr)"\pParaHelp", rHelpBasePictID,
(StringPtr)"\pPararena Help", (StringPtr)"\p");
}
}
}
/*======================================================== DoUpdateEvent */
void DoUpdateEvent (WindowPtr theWindow)
{
GrafPtr wasPort;
GetPort(&wasPort);
SetPort((GrafPtr)theWindow);
BeginUpdate((GrafPtr)theWindow);
if (theWindow == mainWndo)
{
if (splashIsUp)
DoSplashScreen();
else
RefreshMainWindow();
}
EndUpdate(theWindow);
SetPort((GrafPtr)wasPort);
}
/*======================================================== DoDiskEvent */
void DoDiskEvent (void)
{
Point dialogPt;
short theErr;
if (HiWrd(theEvent.message) != noErr)
{
SetPt(&dialogPt, kDILeft, kDITop);
theErr = DIBadMount(dialogPt, theEvent.message);
}
}
/*======================================================== WindowType */
short WindowType (WindowPtr theWindow)
{
if (theWindow == kNilPointer)
return (kIsNilWindow);
if (((WindowPeek)theWindow)->windowKind < 0)
return (kIsDAWindow);
return (kIsUnknownWindow);
}
/*======================================================== DoActivate */
void DoActivate (WindowPtr theWindow, Boolean isToActivate)
{
short typeIs;
typeIs = WindowType(theWindow);
}
/*======================================================== DoActivateEvent */
void DoActivateEvent (void)
{
DoActivate((GrafPtr)theEvent.message, (theEvent.modifiers & activeFlag) != 0);
}
/*======================================================== DoSuspendResumeEvent */
void DoSuspendResumeEvent (void)
{
short nowVolume;
switch ((theEvent.message >> 24) & 0x0FF) /* high byte of message */
{
case kSuspendResumeMssg:
inBackground = ((theEvent.message & kResumeMask) == 0);
DoActivate(FrontWindow(), !inBackground);
if (inBackground)
{
TurnSMSOff();
}
else
{
GetSoundVol(&nowVolume);
if (nowVolume != soundVolume)
{
wasSoundVolume = nowVolume;
}
}
break;
default:
break;
}
}
/*======================================================== HandleEvent */
void HandleEvent (void)
{
RgnHandle mouseRgn;
Boolean gotEvent;
if ( thisMac.hasWNE )
{
mouseRgn = kNilPointer;
gotEvent = WaitNextEvent(everyEvent, &theEvent, kSleepTime, mouseRgn);
}
else
{
SystemTask();
gotEvent = GetNextEvent(everyEvent, &theEvent);
}
if (gotEvent)
{
switch (theEvent.what)
{
case nullEvent:
break;
case mouseDown:
DoMouseEvent();
break;
case mouseUp:
DoMouseEvent();
break;
case autoKey:
DoKeyDown();
break;
case keyDown:
DoKeyDown();
break;
case keyUp:
break;
case updateEvt:
DoUpdateEvent((GrafPtr)theEvent.message);
break;
case diskEvt:
DoDiskEvent();
break;
case activateEvt:
DoActivateEvent();
break;
case app4Evt:
DoSuspendResumeEvent();
break;
case kHighLevelEvent:
break;
default:
break;
}
}
}
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Loading…
Reference in New Issue