This commit is contained in:
Daveo 2001-06-11 23:37:59 +00:00
parent 035137ce93
commit 660a63b903
5 changed files with 76 additions and 7 deletions

View File

@ -17,6 +17,8 @@
#include "FX\FXBaseAnim.h"
#include "FX\FXBaseEmitter.h"
#include "FX\FXAttachAnim.h"
#include "FX\FXBubble.h"
#include "FX\FXfallingTile.h"
#include "FX\FXSteam.h"
@ -27,6 +29,7 @@
/*****************************************************************************/
/*****************************************************************************/
// Anim Data
CFXBaseAnim::sFXAnim FXWaterSplashData=
{
ONE,
@ -175,6 +178,47 @@ CFXBaseAnim::sFXAnim FXBubbleOilData=
CFX::FX_TYPE_SPLASH_WATER
};
CFXBaseAnim::sFXAnim FXWaterFountainData=
{
ONE,
FRM__GUSH000,FRM__GUSH002,
3,
127,127,255,
CFXBaseAnim::FXANIM_FLAG_LOOP,
{0,0},
0,
};
CFXBaseAnim::sFXAnim FXAcidFountainData=
{
ONE,
FRM__GUSH000,FRM__GUSH002,
3,
0,255,0,
CFXBaseAnim::FXANIM_FLAG_LOOP,
{0,0},
0,
};
CFXBaseAnim::sFXAnim FXLavaFountainData=
{
ONE,
FRM__GUSH000,FRM__GUSH002,
3,
255,0,0,
CFXBaseAnim::FXANIM_FLAG_LOOP,
{0,0},
0,
};
CFXBaseAnim::sFXAnim FXOilFountainData=
{
ONE,
FRM__GUSH000,FRM__GUSH002,
3,
32,32,32,
CFXBaseAnim::FXANIM_FLAG_LOOP,
{0,0},
0,
};
/*****************************************************************************/
/*
CFXSteam *TestFXPtr=0;
@ -197,10 +241,11 @@ void TestFX(DVECTOR Pos)
}
*/
/*****************************************************************************/
int FXType=(CFX::FX_TYPE)CFX::FX_TYPE_BUBBLE_WATER;
void TestFX(DVECTOR Pos)
int FXType=(CFX::FX_TYPE)CFX::FX_TYPE_FOUNTAIN_WATER;
void TestFX(DVECTOR Pos,CThing *Parent)
{
CFX::Create((CFX::FX_TYPE)FXType,Pos);
CFXAttachAnim *FX=(CFXAttachAnim*)CFX::Create((CFX::FX_TYPE)FXType,Pos);
Parent->addChild(FX);
// TestFXPtr->setLife(32);
}
@ -260,6 +305,7 @@ CFX *NewFX;
NewFX=new ("FXOilDrip") CFXBaseAnim();
NewFX->setData(&FXOilDripData);
break;
case FX_TYPE_BUBBLE_WATER:
NewFX=new ("FXBubbleWater") CFXBubble();
NewFX->setData(&FXBubbleWaterData);
@ -277,6 +323,23 @@ CFX *NewFX;
NewFX->setData(&FXBubbleOilData);
break;
case FX_TYPE_FOUNTAIN_WATER:
NewFX=new ("FXWaterFountain") CFXAttachAnim();
NewFX->setData(&FXWaterFountainData);
break;
case FX_TYPE_FOUNTAIN_ACID:
NewFX=new ("FXAcidFountain") CFXAttachAnim();
NewFX->setData(&FXAcidFountainData);
break;
case FX_TYPE_FOUNTAIN_LAVA:
NewFX=new ("FXLavaFountain") CFXAttachAnim();
NewFX->setData(&FXLavaFountainData);
break;
case FX_TYPE_FOUNTAIN_OIL:
NewFX=new ("FXOilFountain") CFXAttachAnim();
NewFX->setData(&FXOilFountainData);
break;
case FX_TYPE_NRG_BAR:
NewFX=new ("NRG Bar") CFXNRGBar();
break;

View File

@ -33,6 +33,11 @@ public:
FX_TYPE_DROP_LAVA,
FX_TYPE_DROP_OIL,
FX_TYPE_FOUNTAIN_WATER,
FX_TYPE_FOUNTAIN_ACID,
FX_TYPE_FOUNTAIN_LAVA,
FX_TYPE_FOUNTAIN_OIL,
FX_TYPE_LIGHTNING_BOLT,
FX_TYPE_LIGHTNING_SHEET,
FX_TYPE_LIGHTNING_BLAST,
@ -92,6 +97,6 @@ virtual void collidedWith(CThing *_thisThing);
/*****************************************************************************/
/*****************************************************************************/
/*****************************************************************************/
void TestFX(DVECTOR Pos);
void TestFX(DVECTOR Pos,CThing *Parent);
#endif

View File

@ -108,6 +108,7 @@ POLY_FT4 *Ft4=SprBank->printRotatedScaledSprite(renderFrame,RenderPos.vx,RenderP
setShadeTex(Ft4,0);
setRGB0(Ft4,DataPtr->R,DataPtr->G,DataPtr->B);
setSemiTrans(Ft4,DataPtr->Flags & FXANIM_FLAG_TRANS);
Frame=Ft4;
}
/*****************************************************************************/

View File

@ -49,6 +49,7 @@ protected:
virtual void collidedWith(CThing *_thisThing);
sFXAnim *DataPtr;
POLY_FT4 *Frame;
s16 VelY;
s16 MaxFrame;
s16 CurrentFrame;

View File

@ -22,7 +22,7 @@
#include "fx\fxattachAnim.h"
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
const int DodgyYOffsetCosThePlatformAintInTheRightPosition_SortItOutCharles=32;
const int DodgyFXOffset=16;
void CNpcGeyserPlatform::postInit()
{
CNpcPlatform::postInit();
@ -32,11 +32,10 @@ void CNpcGeyserPlatform::postInit()
m_state = GEYSER_READY;
// Add fountain stuff
DVECTOR Pos=getPos();
Pos.vy+=DodgyYOffsetCosThePlatformAintInTheRightPosition_SortItOutCharles;
Pos.vy+=DodgyFXOffset;
CThing *FX=CFX::Create(CFX::FX_TYPE_FOUNTAIN_OIL,Pos);
addChild(FX);
CHARLES_DBGMSG("CNpcGeyserPlatform::postInit() - Reminder::Sort your platform positions out.\n");
}
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////