peepmagnetclient.h from FreePop at Krugle
Show peepmagnetclient.h syntax highlighted
/***************************************************************************
firecolumnclient.h
-------------------
begin : Mon Jun 14 2004
copyright : (C) 2004 by Brendon Higgins
email : freepop-devel@lists.sourceforge.net
***************************************************************************/
/***************************************************************************
* *
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License, or *
* (at your option) any later version. *
* *
***************************************************************************/
#ifndef PEEPMAGNETCLIENT_H_INCLUDED
#define PEEPMAGNETCLIENT_H_INCLUDED
#include <entityclient.h>
#include <worldpos.h>
class OverSprite;
class PlayerClient;
/**
* A peep magnet, client edition.
*/
class PeepMagnetClient: public EntityClient {
public:
/**
* Constructor.
*/
PeepMagnetClient(WorldClient* w, const Identity& ident, CL_NetPacket &p,
int reason);
/**
* Destructor.
*/
virtual ~PeepMagnetClient();
virtual WorldPos getPos() const;
virtual void predict(const WorldClient* w, unsigned int d);
virtual void onFullUpdate(WorldClient* w, CL_NetPacket& p);
virtual bool drawUpdate(const WorldClient* w, unsigned int d);
virtual void draw(const WorldClient* w) const;
virtual void playerColourChange(WorldClient* w);
virtual void displayRotationChange(WorldClient* w, const Rotation& r);
/**
* Load the sprites into memory.
*/
static void loadSprites();
/**
* Free sprites.
*/
static void freeSprites();
/**
* The mini sprite cache.
*/
static OverSprite* spriteMiniCache;
private:
/**
* The position.
*/
WorldPos pos;
/**
* The player that owns this magnet.
*/
int ownerSlot;
/**
* The sprite.
*/
OverSprite* sprite;
/**
* Keep the sprite in memory
*/
static OverSprite* spriteDir0Cache;
/**
* Keep the sprite in memory
*/
static OverSprite* spriteDir1Cache;
};
#endif /* ndef FIRECOLUMNCLIENT_H_INCLUDED */
See more files for this project here