mirror of
https://github.com/softdorothy/Pararena2.git
synced 2024-06-02 00:41:46 +00:00
1 line
30 KiB
C
1 line
30 KiB
C
|
/*============================================================*/
/*============================================================*/
/*== ==*/
/*== Idle Support Routines ==*/
/*== ==*/
/*== (routines called from idle.c) ==*/
/*== ==*/
/*============================================================*/
/*============================================================*/
/*======================================================== Includes */
#include "Globals.h"
#include "UnivUtilities.h"
#include "SMS.h"
#include "IdleRoutines.h"
#include "SoundUtils.h"
#include "PlayerStats.h"
#include "ValidInstall.h"
/*======================================================== Functions */
/*======================================================== DrawOpenHand */
void DrawOpenHand (void)
{
Rect srcRect, destRect;
SetRect(&srcRect, 16, 227, 29, 236);
SetRect(&destRect, 0, 0, 13, 9);
OffsetRect(&destRect, replayRect.left + 74, replayRect.top + 55);
if (isColor)
CopyBits(&((GrafPtr)offCPartsPtr)->portBits, &(((GrafPtr)mainWndo)->portBits),
&srcRect, &destRect, srcCopy, nil);
else
CopyBits(&offPartsBits, &(mainWndo->portBits), &srcRect, &destRect,
srcCopy, nil);
}
/*======================================================== DrawClosedHand */
void DrawClosedHand (void)
{
Rect srcRect, destRect;
SetRect(&srcRect, 0, 227, 13, 236);
SetRect(&destRect, 0, 0, 13, 9);
OffsetRect(&destRect, replayRect.left + 74, replayRect.top + 55);
if (isColor)
CopyBits(&((GrafPtr)offCPartsPtr)->portBits, &(((GrafPtr)mainWndo)->portBits),
&srcRect, &destRect, srcCopy, nil);
else
CopyBits(&offPartsBits, &(mainWndo->portBits), &srcRect, &destRect,
srcCopy, nil);
}
/*======================================================== DrawOpenMouth */
void DrawOpenMouth (short waitFor)
{
Rect srcRect, destRect;
long dummyLong;
SetRect(&srcRect, 16, 222, 25, 227);
SetRect(&destRect, 0, 0, 9, 5);
OffsetRect(&destRect, replayRect.left + 152, replayRect.top + 49);
if (isColor)
CopyBits(&((GrafPtr)offCPartsPtr)->portBits, &(((GrafPtr)mainWndo)->portBits),
&srcRect, &destRect, srcCopy, nil);
else
CopyBits(&offPartsBits, &(mainWndo->portBits), &srcRect, &destRect,
srcCopy, nil);
Delay(waitFor, &dummyLong);
}
/*======================================================== DrawClosedMouth */
void DrawClosedMouth (short waitFor)
{
Rect srcRect, destRect;
long dummyLong;
SetRect(&srcRect, 0, 222, 9, 227);
SetRect(&destRect, 0, 0, 9, 5);
OffsetRect(&destRect, replayRect.left + 152, replayRect.top + 49);
if (isColor)
CopyBits(&((GrafPtr)offCPartsPtr)->portBits, &(((GrafPtr)mainWndo)->portBits),
&srcRect, &destRect, srcCopy, nil);
else
CopyBits(&offPartsBits, &(mainWndo->portBits), &srcRect, &destRect,
srcCopy, nil);
Delay(waitFor, &dummyLong);
}
/*======================================================== DoOpeningAnnouncer */
void DoOpeningAnnouncer (void)
{
Rect tempRect;
GrafPtr wasPort;
PicHandle thePict;
Handle theSound;
long dummyLong;
short i;
if (soundFileRefNum == -1)
return;
tempRect = replayRect;
InsetRect(&tempRect, 63, 63);
GetPort((GrafPtr *)&wasPort);
if (isColor)
{
SetPort((GrafPtr)offCWorkPtr);
thePict = GetPicture(kAnnouncerPict4ID);
}
else
{
SetPort((GrafPtr)offWorkPtr);
thePict = GetPicture(kAnnouncerPict1ID);
}
if (thePict == kNilPointer)
return;
DrawPicture(thePict, &replayRect);
ReleaseResource((Handle)thePict);
SetPort((GrafPtr)mainWndo);
for (i = 1; i < 65; i++)
{
PenPat(black);
FrameRect(&tempRect);
InsetRect(&tempRect, -1, -1);
PenPat(white);
FrameRect(&tempRect);
}
PenNormal();
SetPort((GrafPtr)wasPort);
tempRect = replayRect;
tempRect.top = tempRect.bottom - 4;
for (i = 0; i < 32; i++)
{
if (isColor)
CopyBits(&((GrafPtr)offCWorkPtr)->portBits, &(((GrafPtr)mainWndo)->portBits),
&tempRect, &tempRect, srcCopy, nil);
else
CopyBits(&offWorkBits, &(mainWndo->portBits), &tempRect, &tempRect,
srcCopy, nil
|