mirror of
https://github.com/0TheSpy/Seaside.git
synced 2025-01-09 19:08:48 +08:00
52 lines
1.6 KiB
C++
52 lines
1.6 KiB
C++
#ifndef IEFFECTS_H
|
|
#define IEFFECTS_H
|
|
|
|
#ifdef _WIN32
|
|
#pragma once
|
|
#endif
|
|
|
|
#include "basetypes.h"
|
|
#include "vector.h"
|
|
#include "interface.h"
|
|
#include "ipredictionsystem.h"
|
|
|
|
enum ShakeCommand_t;
|
|
class Vector;
|
|
class CGameTrace;
|
|
typedef CGameTrace trace_t;
|
|
|
|
|
|
#define IEFFECTS_INTERFACE_VERSION "IEffects001"
|
|
abstract_class IEffects : public IPredictionSystem
|
|
{
|
|
public:
|
|
virtual ~IEffects() {};
|
|
virtual void Beam(const Vector & Start, const Vector & End, int nModelIndex,
|
|
int nHaloIndex, unsigned char frameStart, unsigned char frameRate,
|
|
float flLife, unsigned char width, unsigned char endWidth, unsigned char fadeLength,
|
|
unsigned char noise, unsigned char red, unsigned char green,
|
|
unsigned char blue, unsigned char brightness, unsigned char speed) = 0;
|
|
|
|
virtual void Smoke(const Vector& origin, int modelIndex, float scale, float framerate) = 0;
|
|
|
|
virtual void Sparks(const Vector& position, int nMagnitude = 1, int nTrailLength = 1, const Vector* pvecDir = NULL) = 0;
|
|
|
|
virtual void Dust(const Vector& pos, const Vector& dir, float size, float speed) = 0;
|
|
|
|
virtual void MuzzleFlash(const Vector& vecOrigin, const Vector& vecAngles, float flScale, int iType) = 0;
|
|
|
|
virtual void MetalSparks(const Vector& position, const Vector& direction) = 0;
|
|
|
|
virtual void EnergySplash(const Vector& position, const Vector& direction, bool bExplosive = false) = 0;
|
|
|
|
virtual void Ricochet(const Vector& position, const Vector& direction) = 0;
|
|
|
|
virtual float Time() = 0;
|
|
virtual bool IsServer() = 0;
|
|
|
|
virtual void SuppressEffectsSounds(bool bSuppress) = 0;
|
|
};
|
|
|
|
|
|
|
|
#endif |