Updates for GZDoom 4.12, part 1 (new functions, variables, flags, etc.).
This commit is contained in:
parent
1fb4c27383
commit
f38db38751
79 changed files with 349 additions and 183 deletions
|
|
@ -105,7 +105,7 @@ extend Class SWWMHandler
|
|||
double frametime = (curframe-prevframe)/1000.;
|
||||
double theta = clamp(15.*frametime,0.,.5); // naive, but whatever
|
||||
// draw precise crosshair(s)
|
||||
if ( automapactive || (players[consoleplayer].Camera != players[consoleplayer].mo) || (players[consoleplayer].cheats&CF_CHASECAM) || (numcrosshairs <= 0) ) return;
|
||||
if ( (automapactive && !viewactive) || (players[consoleplayer].Camera != players[consoleplayer].mo) || (players[consoleplayer].cheats&CF_CHASECAM) || (numcrosshairs <= 0) ) return;
|
||||
let sw = SWWMWeapon(players[consoleplayer].ReadyWeapon);
|
||||
if ( sw && !sw.ShouldDrawCrosshair() ) return;
|
||||
if ( !swwm_precisecrosshair ) return;
|
||||
|
|
|
|||
|
|
@ -650,7 +650,7 @@ extend Class SWWMHandler
|
|||
else if ( WeapSel && swwm_useweaponbar && !paused && (players[consoleplayer].playerstate == PST_LIVE) && players[consoleplayer].mo && (gamestate == GS_LEVEL) )
|
||||
{
|
||||
// special case: ignore if we used the mousewheel and the automap is active
|
||||
if ( automapactive && ((e.KeyScan == InputEvent.Key_MWheelUp) || (e.KeyScan == InputEvent.Key_MWheelDown)) )
|
||||
if ( (automapactive && !viewactive) && ((e.KeyScan == InputEvent.Key_MWheelUp) || (e.KeyScan == InputEvent.Key_MWheelDown)) )
|
||||
return false;
|
||||
// only if player owns any selectable weapons
|
||||
if ( !wsel && SWWMWeaponSelect.PlayerHasWeapons(players[consoleplayer].mo) )
|
||||
|
|
|
|||
|
|
@ -133,8 +133,7 @@ extend Class SWWMHandler
|
|||
hnd.bossactors.Clear();
|
||||
hnd.initialized = false;
|
||||
let ai = level.CreateActorIterator(tid);
|
||||
Actor a;
|
||||
while ( a = ai.Next() )
|
||||
foreach ( a:ai )
|
||||
{
|
||||
hnd.bossactors.Push(a);
|
||||
a.GiveInventory('BossMarker',1);
|
||||
|
|
|
|||
|
|
@ -446,8 +446,7 @@ extend Class SWWMHandler
|
|||
if ( cls.GetClassName() != 'KdikdizdCompatEventHandler' )
|
||||
continue;
|
||||
ti = ThinkerIterator.Create("Thinker");
|
||||
Thinker t;
|
||||
while ( t = ti.Next() )
|
||||
foreach ( t:ti )
|
||||
{
|
||||
if ( t.GetClassName() != 'VoodooPusher' )
|
||||
continue;
|
||||
|
|
|
|||
|
|
@ -72,8 +72,7 @@ Class SWWMStaticHandler : StaticEventHandler
|
|||
Array<Thinker> stinkers;
|
||||
if ( !sti ) sti = ThinkerIterator.Create("SWWMStaticThinker");
|
||||
else sti.Reinit();
|
||||
Thinker t;
|
||||
while ( t = sti.Next() ) stinkers.Push(t);
|
||||
foreach ( t:sti ) stinkers.Push(t);
|
||||
if ( stinkers.Size() > 0 )
|
||||
{
|
||||
foreach ( s:stinkers ) Console.PrintfEx(PRINT_HIGH|PRINT_NONOTIFY,"%s is not STAT_STATIC!",s.GetClassName());
|
||||
|
|
@ -341,8 +340,7 @@ Class SWWMStaticHandler : StaticEventHandler
|
|||
for ( int i=Thinker.STAT_INFO; i<Thinker.MAX_STATNUM; i++ )
|
||||
{
|
||||
let ti = ThinkerIterator.Create("Thinker",i);
|
||||
Thinker t;
|
||||
while ( t = ti.Next() )
|
||||
foreach ( t:ti )
|
||||
{
|
||||
if ( t is 'Actor' ) continue;
|
||||
let cls = t.GetClass();
|
||||
|
|
|
|||
|
|
@ -104,7 +104,7 @@ extend Class SWWMStaticHandler
|
|||
}
|
||||
|
||||
// parses achievements.lst file(s)
|
||||
private void ParseAchievementList( out Array<SWWMAchievementInfo> achievements )
|
||||
private void ParseAchievementList( Array<SWWMAchievementInfo> &achievements )
|
||||
{
|
||||
achievements.Clear();
|
||||
let lmp = Wads.FindLumpFullName("achievements.lst");
|
||||
|
|
@ -241,36 +241,38 @@ extend Class SWWMStaticHandler
|
|||
let di = DictionaryIterator.Create(achievementstate);
|
||||
while ( di.Next() )
|
||||
{
|
||||
String key = di.Key();
|
||||
let k = di.Key();
|
||||
let v = di.Value();
|
||||
bool deleteme = true;
|
||||
foreach ( inf:achievementinfo )
|
||||
{
|
||||
if ( inf.basename != key ) continue;
|
||||
if ( inf.basename != k ) continue;
|
||||
deleteme = false;
|
||||
break;
|
||||
}
|
||||
if ( deleteme )
|
||||
{
|
||||
if ( developer >= 2 ) Console.Printf("Deleting bogus achievement state %s = %s",key,di.Value());
|
||||
achievementstate.Remove(key);
|
||||
if ( developer >= 2 ) Console.Printf("Deleting bogus achievement state %s = %s",k,v);
|
||||
achievementstate.Remove(k);
|
||||
}
|
||||
}
|
||||
di = DictionaryIterator.Create(achievementprogress);
|
||||
while ( di.Next() )
|
||||
{
|
||||
String key = di.Key();
|
||||
let k = di.Key();
|
||||
let v = di.Value();
|
||||
bool deleteme = true;
|
||||
foreach ( inf:achievementinfo )
|
||||
{
|
||||
if ( inf.basename != key ) continue;
|
||||
if ( inf.basename != k ) continue;
|
||||
if ( !inf.maxval ) continue;
|
||||
deleteme = false;
|
||||
break;
|
||||
}
|
||||
if ( deleteme )
|
||||
{
|
||||
if ( developer >= 2 ) Console.Printf("Deleting bogus achievement progress %s = %s",key,di.Value());
|
||||
achievementprogress.Remove(key);
|
||||
if ( developer >= 2 ) Console.Printf("Deleting bogus achievement progress %s = %s",k,v);
|
||||
achievementprogress.Remove(k);
|
||||
}
|
||||
}
|
||||
foreach ( inf:achievementinfo )
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue