• Main Page
  • Classes
  • Files
  • File List
  • File Members

code/include/powerups/PowerupBigHand.h

Go to the documentation of this file.
00001 /*
00002  * TetriCycle
00003  * Copyright (C) 2009, 2010 Cale Scholl
00004  *
00005  * This file is part of TetriCycle.
00006  *
00007  * TetriCycle is free software: you can redistribute it and/or modify
00008  * it under the terms of the GNU Lesser General Public License as published
00009  * by the Free Software Foundation, either version 3 of the License, or
00010  * (at your option) any later version.
00011  *
00012  * TetriCycle is distributed in the hope that it will be useful,
00013  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00014  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015  * GNU Lesser General Public License for more details.
00016  *
00017  * You should have received a copy of the GNU Lesser General Public License
00018  * along with TetriCycle.  If not, see <http://www.gnu.org/licenses/>.
00019  */
00020 
00021 /** @file PowerupBigHand.h
00022  * @author Cale Scholl / calvinss4
00023  *
00024  * @page poweruplistpage Powerup List
00025  *
00026  * @section PowerupBigHand
00027  * A powerup used to obscure the player's view.
00028  */
00029 
00030 #pragma once
00031 #ifndef __POWERUPBIGHAND_H__
00032 #define __POWERUPBIGHAND_H__
00033 
00034 #include "Powerup.h"
00035 
00036 /// A powerup used to obscure the player's view.
00037 class PowerupBigHand : public Powerup
00038 {
00039 public:
00040   virtual PowerupId GetPowerupId() { return powerupId; }
00041   virtual GuiImageData* GetImageData() { return imageData; }
00042   virtual string* GetHelpText() { return helpText; }
00043 
00044 protected:
00045   PowerupBigHand()
00046   {
00047     STATIC
00048     (
00049       vector<Powerup *> &powerupVector = Powerup::GetVector();
00050       powerupId = powerupVector.size();
00051       powerupVector.push_back(this);
00052     )
00053   }
00054   virtual ~PowerupBigHand() { }
00055 
00056   /// Returns a new powerup instance.
00057   virtual Powerup* GetInstance() { return new PowerupBigHand(); }
00058 
00059   virtual void StartEffect(u8 player);
00060   virtual void StopEffect(u8 player);
00061 
00062 private:
00063   static PowerupId powerupId;
00064   static Powerup *instance;
00065   static GuiImageData *imageData;
00066   static string helpText[2];
00067 };
00068 
00069 #endif // __POWERUPBIGHAND_H__

Generated on Wed Oct 20 2010 17:06:58 for TetriCycle by  doxygen 1.7.1