qzdoom/src/g_strife/a_strifeglobal.h

85 lines
1.8 KiB
C
Raw Normal View History

#ifndef __A_STRIFEGLOBAL_H__
#define __A_STRIFEGLOBAL_H__
#include "dobject.h"
#include "info.h"
#include "a_pickups.h"
// Base class for every humanoid in Strife that can go into
// a fire or electric death.
class AStrifeHumanoid : public AActor
{
DECLARE_ACTOR (AStrifeHumanoid, AActor)
};
class AStrifePuff : public AActor
{
DECLARE_ACTOR (AStrifePuff, AActor)
};
class AFlameMissile : public AActor
{
DECLARE_ACTOR (AFlameMissile, AActor)
};
class ADegninOre : public AInventory
{
DECLARE_ACTOR (ADegninOre, AInventory)
public:
void GetExplodeParms (int &damage, int &dist, bool &hurtSource);
bool Use (bool pickup);
};
class ACoin : public AInventory
{
DECLARE_CLASS (ACoin, AInventory)
public:
const char *PickupMessage ();
bool HandlePickup (AInventory *item);
AInventory *CreateTossable ();
AInventory *CreateCopy (AActor *other);
};
class ADummyStrifeItem : public AInventory
{
DECLARE_ACTOR (ADummyStrifeItem, AInventory)
};
class AUpgradeStamina : public ADummyStrifeItem
{
DECLARE_STATELESS_ACTOR (AUpgradeStamina, ADummyStrifeItem)
public:
bool TryPickup (AActor *toucher);
};
class AUpgradeAccuracy : public ADummyStrifeItem
{
DECLARE_STATELESS_ACTOR (AUpgradeAccuracy, ADummyStrifeItem)
public:
bool TryPickup (AActor *toucher);
};
class ASlideshowStarter : public ADummyStrifeItem
{
DECLARE_STATELESS_ACTOR (ASlideshowStarter, ADummyStrifeItem)
public:
bool TryPickup (AActor *toucher);
};
class ASigil : public AWeapon
{
DECLARE_ACTOR (ASigil, AStrifeWeapon)
public:
bool HandlePickup (AInventory *item);
AInventory *CreateCopy (AActor *other);
void Serialize (FArchive &arc);
bool SpecialDropAction (AActor *dropper);
static int GiveSigilPiece (AActor *daPlayer);
int NumPieces, DownPieces;
};
extern const PClass *QuestItemClasses[31];
#endif