amxmodx/modules/hamsandwich/forward.h

56 lines
957 B
C
Raw Normal View History

// vim: set ts=4 sw=4 tw=99 noet:
//
// AMX Mod X, based on AMX Mod by Aleksander Naszko ("OLO").
// Copyright (C) The AMX Mod X Development Team.
//
// This software is licensed under the GNU General Public License, version 3 or higher.
// Additional exceptions apply. For full license details, see LICENSE.txt or visit:
// https://alliedmods.net/amxmodx-license
//
// Ham Sandwich Module
//
#include "amxxmodule.h"
#ifndef FORWARD_H
#define FORWARD_H
#include <am-refcounting.h>
enum fwdstate
{
FSTATE_INVALID = 0,
FSTATE_OK,
FSTATE_PAUSE,
FSTATE_STOP,
FSTATE_DESTROY
};
class Forward :public ke::Refcounted<Forward>
{
public:
int id; // id of the forward
fwdstate state;
Forward(int id_) : id(id_), state(FSTATE_OK)
{
/* do nothing */
};
Forward() : id(-1), state(FSTATE_INVALID)
{
/* do nothing */
}
~Forward()
{
MF_UnregisterSPForward(id);
}
inline void Set(int i)
{
state=FSTATE_OK;
id=i;
};
};
#endif