From 1687737ca713cd0baeca3cf79950ef4877640c99 Mon Sep 17 00:00:00 2001 From: Stijn Buys Date: Thu, 5 May 2011 18:08:45 +0000 Subject: Initial support for btCompoundShape and the infrastructure required to accomodate multiple meshes per collision model, added prototype files for signals --- src/core/signals.h | 51 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 src/core/signals.h (limited to 'src/core/signals.h') diff --git a/src/core/signals.h b/src/core/signals.h new file mode 100644 index 0000000..88841ea --- /dev/null +++ b/src/core/signals.h @@ -0,0 +1,51 @@ +/* + core/signals.h + This file is part of the Osirion project and is distributed under + the terms of the GNU General Public License version 2 +*/ + +#ifndef __INCLUDED_CORE_SIGNALS_H__ +#define __INCLUDED_CORE_SIGNALS_H__ + +#include + +#include "core/player.h" + +namespace core +{ + +/** + * @brief a signal is a confirmation request from one player to another. + */ +class Signal { +public: + /// signal types + enum Signals {Trade = 1, Dock = 2, Chat = 3}; + + /// current state of a signal + enum State {Rejected = 0, Accepted = 1, Pending = 2}; + + + /// type definition for the signal registry + typedef std::list Registry; + + static void send(Player *sender, Player *receiver, Signals signal); + + static void init(); + + static void done(); + + static void clear(); + +private: + Signals signal_type; + State signal_state; + unsigned long signal_timestamp; + + static Registry signal_registry; +}; + +} + +#endif // __INCLUDED_CORE_SIGNALS_H__ + -- cgit v1.2.3