<?xml version="1.0" encoding="windows-1251"?>
<LevelScripts>
  <Thread>
    <!--Инициализация переменных-->
    <SetLevelVar var="GoalsCompletedSpeechText" value="02.Done" />
    <SetLevelVar var="RivalsBeforeSellTimerSpeed" value="0.0" />
    <SetLevelVar var="SkipTutorialButtonVisible" value="true" />

    <!--Велкоме!-->
    <WaitClick text="02.Intro1" mood="Happy" />

    <!--
    СТРОИТЕЛЬСТВО КОММЕРЧЕСКИХ ЗДАНИЙ-->
    
    <!--Переходим на закладку 'ЗДАНИЯ'-->
    <SetInputFilter mask="InputMask.HudPageBuildings" />
    <WaitCondition condition="TabIsSelected.Buildings" text="02.SelectBuildingsTab">
      <Arrow target="Hud.ButtonBuildingsTab" />
    </WaitCondition>
    
    <CreateSavePoint/>

    <!--Просим игрока построить продовольственный магазин.-->
    <SetInputFilter mask="InputMask.Map+InputMask.HudButtonGroceryStore" />
    <WaitCondition condition="IsPlacingBuilding.GroceryStore" text="02.ConstructGrocery" >
      <Arrow target="Hud.ButtonBuildGroceryStore" />
    </WaitCondition>

    <!--Ждём когда игрок поставит на карту магазин.-->
    <SetFlag flag="DoRemindToPlaceGroceryStore" />
    <WaitEvent event="BuildingPlaced.GroceryStore" eventOptions="SetBuildingId.FirstGroceryStore" />
    <UnsetFlag flag="DoRemindToPlaceGroceryStore" />
    <SetInputFilter mask="InputMask.None" />

    <ReleaseSavePoint/>
    <SetInputFilter mask="InputMask.None" />

    <!--Ждём когда магазин достроится.-->
    <WaitEvent event="BuildingConstructed.GroceryStore" text="02.WaitGroceryConstructed" mood="Happy" textPosY="550" />

    <!--Говорим игроку что магазин построен.-->
    <WaitClick text="02.GroceryConstructed" mood="Happy" textPosY="550" pause="false" />

    <!--
    ПОКУПКА ДОМОВ-->

    <!--Ждём секунду и выставляем заранее подготовленный дом на продажу.-->
    <WaitTime seconds="1" />
    <SetBuildingVar building="HouseInitiallyRival" var="IsDisplayedForSale" value="true" />

    <!--Ждём ещё секунду и просим игрока выбрать продающийся дом.-->
    <WaitTime seconds="1" />
    <SetInputFilter mask="InputMask.MapBuildings"/>
    <WaitCondition condition="BuildingIsSelected.HouseInitiallyRival" text="02.SelectHouseForSale">
      <Arrow target="Building.HouseInitiallyRival" />
    </WaitCondition>

    <!--Просим игрока нажать кнопку "КУПИТЬ".-->
    <SetInputFilter mask="InputMask.MapBuildingBuy"/>
    <WaitEvent event="BuildingBought.HouseInitiallyRival" text="02.ClickBuyButton">
      <Arrow target="Building.HouseInitiallyRival.ButtonBuy" />
    </WaitEvent>
    
    <!--Поздравляем игрока с покупкой.-->
    <CancelPlayerActions />
    <SetInputFilter mask="InputMask.None" />
    <SetLevelVar var="RivalsBeforeSellTimerSpeed" value="1.0" />
    <WaitClick text="02.GoodBuying" mood="Happy" />

    <!--
    СТРОИТЕЛЬСТВО УКРАШЕНИЙ-->
    
    <!--Выдержим паузу.-->
    <WaitTime seconds="1" />

    <!--Переходим на закладку 'Украшения'-->
    <SetInputFilter mask="InputMask.HudPageScenery" />
    <WaitCondition condition="TabIsSelected.Scenery" text="02.SelectSceneryTab">
      <Arrow target="Hud.ButtonSceneryTab" />
    </WaitCondition>
    
    <!--Выбираем любое из украшений.-->
    <WaitCondition condition="IsPlacingBuilding.AnyScenery" text="02.ClickSceneryButton">
      <Arrow target="Hud.ButtonBuildBush" />
      <Arrow target="Hud.ButtonBuildMaple" />
    </WaitCondition>

    <!--Ставим украшение на карту.-->
    <SetInputFilter mask="InputMask.Map+InputMask.HudPageScenery" />
    <WaitEvent event="BuildingPlaced.AnyScenery" text="02.PlaceScenery" />

    <!--Ставим ещё 2 украшения на карту.-->
    <CancelPlayerActions />
    <SetFlag flag="WaitingForTwoDecorationsPlaced" />
    <WaitCondition condition="NOT IsFlagSet.WaitingForTwoDecorationsPlaced" text="02.PlaceScenery2" />

    <!--Выдержим паузу.-->
    <CancelPlayerActions />
    <SetInputFilter mask="InputMask.None" />
    <WaitTime seconds="1" />

    <!--
    ПРОДАЖА ДОМОВ-->
    
    <CreateSavePoint/>

    <!--Запрещаем игроку отменять продажу зданий.-->
    <SetLevelVar var="CanCancelSale" value="false" />

    <!--Просим игрока выбрать его дом, чтобы продать его.-->
    <SetInputFilter mask="InputMask.MapBuildings" />
    <WaitCondition condition="BuildingIsSelected.AnyOwned AND BuildingIsSelected.AnyHouse" text="02.SelectHouseToSell" >
      <Arrow target="Building.HouseInitiallyRival" />
      <Arrow target="Building.HouseInitiallyOwn" />
    </WaitCondition>

    <!--Просим игрока нажать кнопку "ПРОДАТЬ".-->
    <SetInputFilter mask="InputMask.MapBuildingSell" />
    <WaitEvent event="BuildingSaleStarted.AnyOwned" text="02.ClickSellButton" >
      <Arrow target="Building.Selected.ButtonSell" />
    </WaitEvent>

    <!--Просим игрока нажать кнопку "ПРОДАТЬ ПО ВЫСОКОЙ ЦЕНЕ" в диалоге продажи дома.-->
    <SetInputFilter mask="InputMask.DialogSellMax" />
    <WaitEvent event="BuildingSaleOffer.Max" text="02.ClickSellAtHighPriceButton" >
      <Arrow target="DialogSell.ButtonMax" />
    </WaitEvent>
                                         
    <ReleaseSavePoint/>

    <!--РАСПРОДАЖА В МАГАЗИНЕ.-->
    <SetInputFilter mask="InputMask.None" />
    <WaitTime seconds="1" />
    <BuildingCommand building="FirstGroceryStore" command="SkipSpecialAbilityCooldown"  />
    <WaitTime seconds="1" />
    <WaitClick text="02.GroceryAbility1" textPosY="550" >
      <Arrow target="Building.FirstGroceryStore.IconSpecialAbilityReady" />
    </WaitClick>
    
    <SetBuildingVar building="FirstGroceryStore" var="IgnoreInputFilter" value="true" />
    
    <WaitCondition condition="BuildingIsSelected.FirstGroceryStore" text="02.GroceryAbility2" textPosY="550" >
      <Arrow target="Building.FirstGroceryStore" />
    </WaitCondition>

    <SetBuildingVar building="FirstGroceryStore" var="IgnoreInputFilter" value="false" />
    <SetInputFilter mask="InputMask.MapBuildingSpecial" />

    <WaitEvent event="BuildingSpecialAbilityActivated.FirstGroceryStore" text="02.GroceryAbility3" textPosY="550" >
      <Arrow target="Building.FirstGroceryStore.ButtonSpecial" />
    </WaitEvent>

    <ReleaseInputFilter />
    <WaitClick text="02.GroceryAbility4" mood="Happy" textPosY="550" pause="false" />

    <!--
    ФИНАЛ, ПОСТРОЙКА ТАУНХАУСОВ-->
    <WaitClick text="02.BuildTownhouses" pause="false" />
    
    <WaitTime minutes="1" />
    <If condition="NOT IsGoalCompleted.OwnTwoTownhouses" >
      <WaitClick text="02.TownhouseReminder" />
    </If>

  </Thread>

  <!--
  Вспомогательная рутина для строительства магазина.-->
  <Thread>
    <WaitCondition condition="IsFlagSet.DoRemindToPlaceGroceryStore" />
    <WaitCondition condition="NOT IsPlacingBuilding.GroceryStore" />
    <If condition="IsFlagSet.DoRemindToPlaceGroceryStore" >
      <WaitCondition condition="IsPlacingBuilding.GroceryStore" text="02.GroceryReminder" >
        <Arrow target="Hud.ButtonBuildGroceryStore" />
      </WaitCondition>
    </If>
  </Thread>

  <Thread>
    <!--Ждём когда выставленный на продажу дом будет продан и
    далее разрешаем игроку отменять продажу зданий.-->
    <WaitEvent event="BuildingSelled.Any" />
    <SetLevelVar var="CanCancelSale" value="true" />
  </Thread>

  <!--
  Вспомогательная рутина для строительства украшений.-->
  <Thread>
    <WaitCondition condition="IsFlagSet.WaitingForTwoDecorationsPlaced" />
    <WaitEvent event="BuildingPlaced.AnyScenery" />
    <WaitEvent event="BuildingPlaced.AnyScenery" />
    <UnsetFlag flag="WaitingForTwoDecorationsPlaced" />
  </Thread>

  <Thread>
    <WaitCondition condition="IsFlagSet.WaitingForTwoDecorationsPlaced" />
    <WaitTime seconds="10" />
    <If condition="IsFlagSet.WaitingForTwoDecorationsPlaced AND NOT IsPlacingBuilding.AnyScenery" >
      <WaitCondition condition="IsPlacingBuilding.AnyScenery" >
        <Arrow target="Hud.ButtonBuildBush" />
        <Arrow target="Hud.ButtonBuildMaple" />
      </WaitCondition>
    </If>
  </Thread>

</LevelScripts>