00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef __CS_PROCPLASMATEX_H__
00021 #define __CS_PROCPLASMATEX_H__
00022
00023 #include "csutil/cscolor.h"
00024 #include "cstool/proctex.h"
00025
00029 class csProcPlasma : public csProcTexture
00030 {
00031 private:
00033 unsigned char *palette;
00035 int palsize;
00036
00038 uint8 *costable;
00039
00041 uint8 anims0, anims1, anims2, anims3;
00043 uint8 offsets0, offsets1;
00045 int frameincr0, frameincr1, frameincr2, frameincr3;
00046 int lineincr0, lineincr1, lineincr2, lineincr3;
00047 int offsetincr0, offsetincr1;
00048
00050 void MakePalette (int max);
00052 uint8 GetCos (uint8 angle) const { return costable[angle]; }
00054 void MakeTable ();
00055
00056 public:
00058 csProcPlasma ();
00060 virtual ~csProcPlasma ();
00061
00062 virtual bool PrepareAnim ();
00063
00065 virtual void Animate (csTicks current_time);
00066 };
00067
00068 #endif // __CS_PROCPLASMATEX_H__
00069