Initial commit
This commit is contained in:
108
SOURCES/INCRUST.C
Normal file
108
SOURCES/INCRUST.C
Normal file
@@ -0,0 +1,108 @@
|
||||
#include "c_extern.h"
|
||||
|
||||
/*ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ*
|
||||
Û ÛÛÜ Û Ûßßßß ÛßßßÛ Û Û ÛÛßßß ßßÛßß ÛßßßÜ Û ÛÛßßß ÛßßßÛ
|
||||
ÛÛ ÛÛßÛÛ ÛÛ ÛÛßÛß ÛÛ Û ßßßßÛ ÛÛ ÛÛ Û ÛÛ ßßßßÛ ÛÛßßß
|
||||
ßß ßß ß ßßßßß ßß ß ßßßßß ßßßßß ßß ßßßßß ßßßß ßß ßßßßß ßß
|
||||
*ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ*/
|
||||
/*ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ*/
|
||||
|
||||
void InitIncrustDisp( WORD type,
|
||||
WORD num,
|
||||
WORD x, WORD y,
|
||||
WORD info,
|
||||
WORD move,
|
||||
WORD timeout )
|
||||
{
|
||||
T_INCRUST_DISP *ptrdisp ;
|
||||
WORD n ;
|
||||
|
||||
ptrdisp = ListIncrustDisp ;
|
||||
|
||||
for( n=0; n<MAX_INCRUST_DISP; n++, ptrdisp++ )
|
||||
{
|
||||
if( ptrdisp->Num == -1 ) /* slot libre */
|
||||
{
|
||||
ptrdisp->Num = num ;
|
||||
|
||||
ptrdisp->X = x ;
|
||||
ptrdisp->Y = y ;
|
||||
|
||||
ptrdisp->Type = type ;
|
||||
ptrdisp->Info = info ;
|
||||
|
||||
ptrdisp->Move = move ;
|
||||
|
||||
ptrdisp->TimerEnd = TimerRef + 50 * timeout ;
|
||||
|
||||
return ;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ*/
|
||||
|
||||
void ChangeIncrustPos( WORD xp0, WORD yp0, WORD xp1, WORD yp1 )
|
||||
{
|
||||
T_INCRUST_DISP *ptrdisp ;
|
||||
WORD n ;
|
||||
WORD dx, dy ;
|
||||
|
||||
dx = xp1 - xp0 ;
|
||||
dy = yp1 - yp0 ;
|
||||
|
||||
ptrdisp = ListIncrustDisp ;
|
||||
|
||||
for( n=0; n<MAX_INCRUST_DISP; n++, ptrdisp++ )
|
||||
{
|
||||
if( ptrdisp->Type == INCRUST_NUM )
|
||||
{
|
||||
ptrdisp->X += dx ;
|
||||
ptrdisp->Y += dy ;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ*/
|
||||
|
||||
WORD LastNumBulle = -1 ;
|
||||
WORD SpriteBulle = 91 ;
|
||||
|
||||
void DrawBulle( WORD numobj )
|
||||
{
|
||||
LONG dx, dy ;
|
||||
|
||||
ProjettePoint( ListObjet[numobj].PosObjX - WorldXCube,
|
||||
ListObjet[numobj].PosObjY + ListObjet[numobj].Ymax - WorldYCube,
|
||||
ListObjet[numobj].PosObjZ - WorldZCube ) ;
|
||||
|
||||
if( LastNumBulle != numobj )
|
||||
{
|
||||
SpriteBulle ^= 1 ;
|
||||
LastNumBulle = numobj ;
|
||||
}
|
||||
|
||||
GetDxDyGraph( 0, &dx, &dy, HQR_Get(HQRPtrSpriteExtra, SpriteBulle ) ) ;
|
||||
|
||||
if( SpriteBulle == 90 ) ScreenXmin = Xp + 10 ;
|
||||
else ScreenXmin = Xp - 10 - dx ;
|
||||
|
||||
ScreenYmin = Yp - 20 ;
|
||||
|
||||
|
||||
ScreenXmax = ScreenXmin + dx -1 ;
|
||||
ScreenYmax = ScreenYmin + dy -1 ;
|
||||
|
||||
SetClip( ScreenXmin, ScreenYmin, ScreenXmax, ScreenYmax ) ;
|
||||
|
||||
AffGraph( 0, ScreenXmin, ScreenYmin, HQR_Get(HQRPtrSpriteExtra, SpriteBulle) ) ;
|
||||
if( ClipXmin <= ClipXmax
|
||||
AND ClipYmin <= ClipYmax )
|
||||
{
|
||||
CopyBlockPhys( ClipXmin, ClipYmin, ClipXmax, ClipYmax ) ;
|
||||
}
|
||||
|
||||
UnSetClip() ;
|
||||
}
|
||||
|
||||
/*ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ*/
|
||||
Reference in New Issue
Block a user