function SheetSwitched (ncount)
     StopSheet=true;
return;end;
function Timer(ncount, Param1)
     if not StopSheet then
          AlfingSheet();
          StopSheet=false;
     return;end;
return;end;

function gameinput (sender,obj_id,attachedID)
  if sender == 100 then
  if flags.comx then
    speciale_action(2,12121,true);
    add_free_leaf("map17",16,101);
    set_satelite_leaf("keys");
    DoFile(16,101)
    flags.comx= false;
    flags.comx1= true;
  return;end;
  return;end;
  if sender == 2 then
      RemoveFromMouse(object);
    MessageProc(sender,obj_id);
  return;end;
     if sender==36 then          
          if obj_id==9999 then
               if not StopSheet then
                    AlfingSheet();
                    StopSheet=false;
               return;end;
          return;end;                    
     return;end;
     if sender==26 then          
          if obj_id==5 then
        flags.levelcomplete=true;
        DarkScreen(true);
        ShowMenu(false)
          return;end;                    
     return;end;
  if sender==12 then
    if flags.all then
      if flags.minicomplete18 then
      flags.all= false;
      CreateWindow(150,250,"399",5,nil,250,30);
      return; end;      
    return;end;
  return;end;
if sender==33 then
    BlockCursor(false);
    if obj_id==501 then -- тёмная плашка
      BlockCursor(false);
      if whole_darkness then
         if flags.levelcomplete then
          SetAlfa(500,0,1,1);
          speciale_action(4,500);
          BlockCursor(true);

        return;end;      
         --затемнилось
      return;end;
      whole_darkness=false;
         -- растемнилось
         
    return;end;     
    if obj_id==503 then --название levовня
        BlockCursor(false);
      if whole_darkness then
         --затемнилось
      return;end;      
      -- проявление меню вывод собщений в начале levовня ----
      ShowMenu(true);
      savegame(SaveLevel());
       --CreateWindow(100,100,"198");             
      ------
    return;end;
  return;end
    if pause_state then
    if sender==1 or sender==6 or sender==14 then
      pause_state=false;
      --set_visible_object(11111,false);
    end;  
  return;end;
  if sender == 1 then --кликнули левой кнопкой мыши на активный объект
      if obj_id==501 then
  --        if whole_darkness then
        if flags.levelcomplete then
          if attachedID == -1 then
            delete_tree_leaf("Root","keys");-- Добавляет лист в дерево 
            setnextlavel(17);
            loadlavel();
          return;end;
        return;end;        
            DarkScreen(false);
            whole_darkness=false;
          SetAlfa(503,1,0,1);
      return;end;
          if obj_id==18 then  
      if flags.access then
         if not flags.minicomplete18 then
          if attachedID == 115 then 
            playeffect("29");
               RemoveFromMouse(attachedID);  
            add_free_leaf("Root","mini18",0,28);-- Добавляет чистый лист
            set_satelite_leaf("keys");
            DoFile(0,28)
            mini_create();
            flags.nohints=true;
          return; end;
          if (attachedID ~= 115) and  (attachedID > -1)  then
          RemoveFromMouse(attachedID);
            CreateWindow(150,250,"200",nil,nil,250,30); 
            --playeffect("01");
          return; end;    
          if attachedID == -1 then
            CreateWindow(150,250,"201",nil,nil,250,30); 
            --playeffect("01");
           return; end;    
         return; end;    
      return; end;
      return; end;
      
    if obj_id==54 then
      if not flags.access then
           if attachedID == 123 then 
               RemoveFromMouse(attachedID);
            DeleteElement("gr",attachedID);    
                flags.access=true;
            speciale_action(2,54)
            Set_Cursor(54,3);
            speciale_action(2,18);  
            Set_Cursor(18,4);
            frame=0;
            add_free_leaf("comics",16,50);
            set_satelite_leaf("keys");
            DoFile(16,50)
            ShowMenu(false);
           return; end;
           if (attachedID ~= 123) and  (attachedID > -1)  then
           RemoveFromMouse(attachedID);
            CreateWindow(150,250,"200",nil,nil,250,30);
            --playeffect("01");
           return; end;    
          if attachedID == -1 then
            CreateWindow(150,250,"202",nil,nil,250,30); 
            --playeffect("01");
           return; end;      
      return;end;           
    return;end;

    if flags.access then
      if obj_id > 0 and obj_id < 200 and attachedID == -1 then --кликаем на активный объект
        playeffect("20");
            collaps_obj(obj_id,0,0,10,1);
          return 0; end
    return; end;  

    

      
  return; end;
  
  if sender==14 then
    if obj_id>0 then
    StopSheet=true;
    object=obj_id
      addObjectToMouse(obj_id);
    return; end;
  return; end;
  if sender==6 then
    if not flags.access then  
      RemoveFromMouse(object);
    CreateWindow(150,250,"202",nil,nil,250,30); 
    --playeffect("01");
    return; end;    
  return; end;    
-----------------------------------------------На сцене отработали все объекты-------------------------
  if sender==4 then
  -- WriteToConsole("sender = 4, lev16.0".." "..sender.."\n")
  flags.all=true;

  return; end;  
------------------------------------------------------------------------------------------------------------------  
  
end
function SelectRandom()
  idObject=GetRandomObject();
  
if flags.access then
  if flags.all and not flags.minicomplete18 then
    selectrandomobject(1.5,18);
  end;
  selectrandomobject(1.5,idObject);
end;
  selectrandomobject(1.5,54);
end;
function SelectRandomRadar(idObject)

  selectrandomobject(1.5,idObject);
end;
