#define COMMON_ACTION_H aaa

int Action1 = -1;       //for music changing (from mapedit) указываешь номер музыки из Musics[] для проигрывания
int Action2 = -1;       //for objects killing (from mapedit) указываешь номер вида которые надо все убить
int Action3 = -1;       // 0 - выключить свет, 1 - включить свет
int Action4 = -1;       // 0 - закрыть двери, 1 - открыть закрытые двери
int Action5 = -1;       // убить все спрайты с именем hvar1

int Action6 = -1;
int Action7 = -1;       // номер взорванного динамита, номер берется из name 179 спрайта
int Action8 = 0;
int Action9 = -1;		//гамма на уровне в ноль
int Action10 = 0;
int Action11 = 0;
int Action12 = 0;
int Action13 = 0;
int Action14 = 0;
int Action15 = 0;
int Action16 = 0;
int Action17 = 0;
int Action18 = 0;
int Action19 = 0;
int Action20 = 0;


ActionTact()
{
    if ( Action1 != -1 )
    {
    	Log2("Action1 = " + itoa(Action1));
        if ( Action1 == 2 )
            MusicFile = Musics[Action1 + Random(1)];
        else
            MusicFile = Musics[Action1];
        if ( MusicFile == Musics[2] || MusicFile == Musics[3] )
            PlayMusicFile(MusicFile, 0);
        else
            PlayMusicFile(MusicFile, 1);
        Action1 = -1;
    }

    if ( Action2 != -1 )
    {
        Genocide(Action2);
        Action2 = -1;
    }

    if ( Action3 != -1 )
    {
        if ( Action3 == 0 && CurrentGamma != 0x606060 )
            LightOff(0x606060);
        if ( Action3 == 1 && CurrentGamma != 0 )
            LightOn(0);
        Action3 = -1;
    }

    if ( Action4 != -1 )
    {
        if ( Action4 == 0 )
        {
            DoorsIsOpen = 0;
//        PlaySFX(44);
//        EarthQuake(3000);
            for( int i=FirstSprite(); i; i=NextSprite() )
            {
              if( GetUnitVid(i)==423 )
              {//замены кнопок у дверей
                Action(i, ACT_CHANGE_VID, 424);
//                CreateSprite(424,GetX(i),GetY(i),GetZ(i),GetDirection(i));
//                Destroy(i);
              }
            }
        }
        else if ( Action4 == 1 )
        {
            DoorsIsOpen = 1;
//        PlaySFX(44);
//        EarthQuake(3000);
            for( int i=FirstSprite(); i; i=NextSprite() )
            {
              if( GetUnitVid(i)==424 )
              {//замены кнопок у дверей
                Action(i, ACT_CHANGE_VID, 423);
//                CreateSprite(423,GetX(i),GetY(i),GetZ(i),GetDirection(i));
//                Destroy(i);
              }
            }
        }
        Action4 = -1;
    }
    //killing some sprites
    if( Action5 != -1 )
    {
        if(DEMO_VERSION && Action5 == 9)
           giStartTimeLimitTime = GetTime();

//        Log("destroy h"+itoa(Action5));
        ActionByName("h" + itoa(Action5), ACT_DESTROY_UNIT, -1);
            //delete flag
            Action5 = -1;
    }
    //
    if(Action9 != -1)
    {
    	//Log(Action10 != -1);
    	SetLevelGamma(0);
    	Action9 = -1;
    }
    //
    //if(DEMO_VERSION && Action10 == 3)
    //{
    //	giStartTimeLimitTime = GetTime();
    //	Action10 = 0;
    //}
    //
    iff(Action15 == 1)
    	WaterDown();
	//
	iff(LevelNumber == 9 && GetVidData(1815, VID_COUNT)==0)
	{
		Action16 = 1;
		Log2("Action16 = 1");
	}
}
