mirror of
https://github.com/YGGverse/hlsdk-portable.git
synced 2025-01-27 15:14:21 +00:00
71 lines
1.7 KiB
C++
71 lines
1.7 KiB
C++
/***
|
|
*
|
|
* Copyright (c) 1996-2001, 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 XENSPIT_H
|
|
#define XENSPIT_H
|
|
|
|
#ifdef _WIN32
|
|
#pragma once
|
|
#endif
|
|
|
|
#define XENSPIT_MAX_PROJECTILES 4
|
|
|
|
class CXenLargeSpit : public CBaseEntity
|
|
{
|
|
public:
|
|
void Spawn(void);
|
|
void Precache(void);
|
|
|
|
static CXenLargeSpit* Shoot(entvars_t *pevOwner, Vector vecStart, Vector vecAngles, Vector vecVelocity);
|
|
void Touch(CBaseEntity *pOther);
|
|
void EXPORT CycleThink(void);
|
|
|
|
virtual int Save(CSave &save);
|
|
virtual int Restore(CRestore &restore);
|
|
static TYPEDESCRIPTION m_SaveData[];
|
|
|
|
CBaseEntity* m_pChildren[XENSPIT_MAX_PROJECTILES];
|
|
int m_iChildCount;
|
|
};
|
|
|
|
|
|
class CXenSmallSpit : public CBaseEntity
|
|
{
|
|
public:
|
|
void Spawn(void);
|
|
void Precache(void);
|
|
|
|
static CXenSmallSpit* ShootStraight(entvars_t *pevOwner, Vector vecStart, Vector vecAngles, Vector vecVelocity);
|
|
static CXenSmallSpit* ShootCycle(entvars_t *pevOwner, Vector vecStart, Vector vecAngles, Vector vecVelocity, CBaseEntity* pParent, float flCycle = 0.0f);
|
|
void Touch(CBaseEntity *pOther);
|
|
void EXPORT CycleThink(void);
|
|
void EXPORT StraightThink(void);
|
|
|
|
virtual int Save(CSave &save);
|
|
virtual int Restore(CRestore &restore);
|
|
static TYPEDESCRIPTION m_SaveData[];
|
|
|
|
int m_iTrail;
|
|
float m_flCycle;
|
|
Vector m_vecOldVelocity;
|
|
|
|
CBaseEntity* m_pParent;
|
|
|
|
CBeam* m_pBeam;
|
|
};
|
|
|
|
|
|
|
|
#endif // XENSPIT_H
|