Subversion Repositories eduke32

Rev

Rev 4766 | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 4766 Rev 4880
Line 487... Line 487...
487
#endif
487
#endif
488
}
488
}
489
489
490
void M32_DrawRoomsAndMasks(void)
490
void M32_DrawRoomsAndMasks(void)
491
{
491
{
-
 
492
    static int srchwall = -1;
-
 
493
492
    VM_OnEvent(EVENT_PREDRAW3DSCREEN, -1);
494
    VM_OnEvent(EVENT_PREDRAW3DSCREEN, -1);
493
495
494
    yax_preparedrawrooms();
496
    yax_preparedrawrooms();
495
    drawrooms(pos.x,pos.y,pos.z,ang,horiz,cursectnum);
497
    drawrooms(pos.x,pos.y,pos.z,ang,horiz,cursectnum);
496
    yax_drawrooms(CallExtAnalyzeSprites, cursectnum, 0, 0);
498
    yax_drawrooms(CallExtAnalyzeSprites, cursectnum, 0, 0);
497
499
-
 
500
    const int osearchwall=searchwall, osearchstat=searchstat;
-
 
501
    if (srchwall >= 0)
-
 
502
    {
-
 
503
        // a.m32 states 'tduprot' and 'tduplin' need searchstat to check for
-
 
504
        // whether we've hit a sprite, but these would be only set after the
-
 
505
        // drawmasks(). Hence this hackish workaround.
-
 
506
        searchstat = 3;
-
 
507
        searchwall = srchwall;
-
 
508
    }
498
    CallExtAnalyzeSprites(0,0,0,0);
509
    CallExtAnalyzeSprites(0,0,0,0);
-
 
510
    searchwall = osearchwall, searchstat=osearchstat;
-
 
511
499
    drawmasks();
512
    drawmasks();
-
 
513
    srchwall = (searchstat == 3) ? searchwall : -1;
500
    M32_ResetFakeRORTiles();
514
    M32_ResetFakeRORTiles();
501
515
502
#ifdef POLYMER
516
#ifdef POLYMER
503
    if (getrendermode() == REND_POLYMER && searchit == 2)
517
    if (getrendermode() == REND_POLYMER && searchit == 2)
504
    {
518
    {