- reviewed and sorted out the remaining parts of g_shared
This commit is contained in:
parent
0b4862480e
commit
25d5b788f5
6 changed files with 333 additions and 68 deletions
|
|
@ -41,6 +41,12 @@ static FRandom pr_lightning ("Lightning");
|
|||
|
||||
IMPLEMENT_CLASS(DLightningThinker, false, false)
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
//
|
||||
//
|
||||
//
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
void DLightningThinker::Construct()
|
||||
{
|
||||
Stopped = false;
|
||||
|
|
@ -55,6 +61,12 @@ DLightningThinker::~DLightningThinker ()
|
|||
{
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
//
|
||||
//
|
||||
//
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
void DLightningThinker::Serialize(FSerializer &arc)
|
||||
{
|
||||
Super::Serialize (arc);
|
||||
|
|
@ -64,6 +76,12 @@ void DLightningThinker::Serialize(FSerializer &arc)
|
|||
("levels", LightningLightLevels);
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
//
|
||||
//
|
||||
//
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
void DLightningThinker::Tick ()
|
||||
{
|
||||
if (!NextLightningFlash || LightningFlashCount)
|
||||
|
|
@ -77,6 +95,12 @@ void DLightningThinker::Tick ()
|
|||
}
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
//
|
||||
//
|
||||
//
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
void DLightningThinker::LightningFlash ()
|
||||
{
|
||||
int i, j;
|
||||
|
|
@ -179,6 +203,12 @@ void DLightningThinker::LightningFlash ()
|
|||
}
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
//
|
||||
//
|
||||
//
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
void DLightningThinker::ForceLightning (int mode)
|
||||
{
|
||||
switch (mode)
|
||||
|
|
@ -196,12 +226,24 @@ void DLightningThinker::ForceLightning (int mode)
|
|||
}
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
//
|
||||
//
|
||||
//
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
static DLightningThinker *LocateLightning (FLevelLocals *Level)
|
||||
{
|
||||
auto iterator = Level->GetThinkerIterator<DLightningThinker>(NAME_None, STAT_LIGHTNING);
|
||||
return iterator.Next ();
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
//
|
||||
//
|
||||
//
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
void FLevelLocals::StartLightning ()
|
||||
{
|
||||
const bool isOriginalHexen = (gameinfo.gametype == GAME_Hexen)
|
||||
|
|
@ -237,6 +279,12 @@ void FLevelLocals::StartLightning ()
|
|||
}
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
//
|
||||
//
|
||||
//
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
void FLevelLocals::ForceLightning (int mode)
|
||||
{
|
||||
DLightningThinker *lightning = LocateLightning (this);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue