mirror of https://github.com/r4sas/ExtraMirror
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
55 lines
1.9 KiB
55 lines
1.9 KiB
/*** |
|
* |
|
* Copyright (c) 1999, Valve LLC. All rights reserved. |
|
* |
|
* This product contains software technology licensed from Id |
|
* Software, Inc. ("Id Technology"). Id Technology (c) 1996 Id Software, Inc. |
|
* All Rights Reserved. |
|
* |
|
* Use, distribution, and modification of this source code and/or resulting |
|
* object code is restricted to non-commercial enhancements to products from |
|
* Valve LLC. All other use, distribution, or modification is prohibited |
|
* without written permission from Valve LLC. |
|
* |
|
****/ |
|
#ifndef SHAKE_H |
|
#define SHAKE_H |
|
|
|
// Screen / View effects |
|
|
|
// screen shake |
|
extern int gmsgShake; |
|
|
|
// This structure is sent over the net to describe a screen shake event |
|
typedef struct |
|
{ |
|
unsigned short amplitude; // FIXED 4.12 amount of shake |
|
unsigned short duration; // FIXED 4.12 seconds duration |
|
unsigned short frequency; // FIXED 8.8 noise frequency (low frequency is a jerk,high frequency is a rumble) |
|
} ScreenShake; |
|
|
|
extern void V_ApplyShake( float *origin, float *angles, float factor ); |
|
extern void V_CalcShake( void ); |
|
extern int V_ScreenShake( const char *pszName, int iSize, void *pbuf ); |
|
extern int V_ScreenFade( const char *pszName, int iSize, void *pbuf ); |
|
|
|
|
|
// Fade in/out |
|
extern int gmsgFade; |
|
|
|
#define FFADE_IN 0x0000 // Just here so we don't pass 0 into the function |
|
#define FFADE_OUT 0x0001 // Fade out (not in) |
|
#define FFADE_MODULATE 0x0002 // Modulate (don't blend) |
|
#define FFADE_STAYOUT 0x0004 // ignores the duration, stays faded out until new ScreenFade message received |
|
|
|
// This structure is sent over the net to describe a screen fade event |
|
typedef struct |
|
{ |
|
unsigned short duration; // FIXED 4.12 seconds duration |
|
unsigned short holdTime; // FIXED 4.12 seconds duration until reset (fade & hold) |
|
short fadeFlags; // flags |
|
byte r, g, b, a; // fade to color ( max alpha ) |
|
} ScreenFade; |
|
|
|
#endif // SHAKE_H |
|
|
|
|