Трижды Забытая Родина
Искать в
Век Приключений
Сегодня
Навигация
  •  Главная
  •  denw IL-2 Training
  •  Feokl WoW
  •  Minecraft Server
  •  Panda WoW
  •  RadioDen
  •  RadioPunk
  •  Поиск
  •  Разделы
  •  Статьи

  • Denw Minecraft
    Denw Minecraft Server Offline!

    Feokl Private Server
    Feokl Realm is Offline!

    Feokl Panda Server
    Feokl Panda is Offline!

    denw IL-2 Training
    denw Training 4.14.1m Offline!

     
    Стены города
    Макросы для СС2




    НазваниеСтена Города 1
    АвторMorgan Olden
    Командаcitywall1
    ОписаниеЭтот макрос преобразовывает имеющуюся линию в изображение стены города
    ИнструкцииЭтот макрос облегчает и автоматизирует процедуру когда-то описанную Линдой Кекуму на Странице ПроФэнтези
    Макрос просит пользователя выбрать отдельный объект (линию) для преобразования, и запрашивает толщину парапета и стены.

    Код
    MACRO citywall1
    GE WallSource ^DSelect entity to convert to City Wall:
    IFERR gotoend
    GV WallWidth 10
    GV ParapetWidth 2
    GV WallWidth ^DWall width (10):
    IFZ WallWidth gotoend
    GV ParapetWidth ^DParapet width (2):
    IFZ ParapetWidth gotoend
    SELBY1
    CHANGEC WallSource 18
    SELBYP
    CHANGELW WallWidth
    CHANGEFS SOLID
    COPY 0,0 0,0;
    CHANGEC 0
    CHANGEFS HOLLOW
    COPY 0,0 0,0;
    CHANGEC 16
    CHANGELW WallWidth-(ParapetWidth*2)
    CHANGEFS SOLID
    COPY 0,0 0,0;
    CHANGEC 0
    CHANGEFS HOLLOW
    SELBYD
    REDRAW
    :gotoend
    ENDM
    НазваниеСтена Города 2
    АвторMorgan Olden
    КомандаCITYWALL2
    ОписаниеРисование городской стены с башнями.
    ИнструкцииЭтот макрос запрашивает пять пунктов информации, затем позволяет пользователю выбирать ряд точек. Макрос рисует городскую стену между каждой точкой, и вставляет башни на каждой точке. Вид стены и башен зависит от обеспеченной информации (значения по умолчанию в скобках):

    1. Wall width. (10) - Толщина стены
    2. Parapet width. (2) - Ширина парапета
    3. Tower width. (20) - Размер башни
    4. Tower style (square or circle) (circle) - Стиль башни (квадратный или круглый)
    5. Roof style (flat or peaked) (peaked) - Стиль верха башни (плоская или островерхняя)

    Для работы необходимы все три макроса, но два из них работают по вызову от основного.

    Примечания:

    1. Левый клик рисует сегмент стены, правый ее завершает, и подставляет башню.

    2. Квадратные башни автоматически выравнивают себя под углом средним между двумя смежными стенами.

    3. Вход и выход стены в квадратную башню находятся на противоположных сторонах башни, если различие в угле между этими двумя стенами меньше чем 55 градусов. Углы больше делают вход и выход стены в башню на двух смежных сторонах.

    4. Размеры парапета добавляются и к стене, и к башне. Башни с установленными на максимуме крышами все равно будут иметь парапет.

    5. Минимальный размер башни равен ширине стены, но для лучших результатов рекомендуется выбирать ширину башни по крайней мере вдвое больше ширины стены.
    Код
    macro CITYWALL2
    ecoff
    rdoff
    gv WW 10
    gv PW 2
    gv TW 20
    gv TS 1
    gv RS 0
    gv WW ^DEnter wall width:
    gv PW ^DEnter parapet width:
    gv TW ^DEnter tower width:
    gv TS ^DChose tower style (square=0, circle=1):
    gv RS ^DChose tower roof style (peaked=0, flat=1):
    ifn TW-WW control1
    go control2
    :control1
    gv TW WW
    :control2
    gp P1 ^DFirst point:
    line P1 ^DNext point:;
    gp P2 @0,0
    selbyp;erase;
    gp wallpoint1 P1;gp wallpoint2 P2
    drawwall
    gbrng towerbrng P1 P2
    gp towercenter P1
    drawtower
    :loop
    line P2 ^DNext point:;
    gp P3 @0,0
    gdist testdist P2 P3
    ifz testdist laststep
    selbyp;erase;
    gp wallpoint1 P2;gp wallpoint2 P3
    drawwall
    gbrng B12 P1 P2
    gbrng B23 P2 P3
    gv towerbrng (B12+B23)/2
    gsin offset (B12-B23)
    ifp offset control5
    gv offset 0-offset
    :control5
    ifn offset-.8 control6
    gv towerbrng towerbrng+45
    :control6
    gp towercenter P2
    drawtower
    gp P1 P2;gp P2 P3
    go loop
    :laststep
    |gp towercenter P2
    gbrng towerbrng P1 P2
    drawtower
    selbyd
    econ
    rdon
    endm

    macro DRAWTOWER
    ifz TS drawsquaretower
    :drawcircletower
    ifz RS circlepeakroof
    :circleflatroof
    lwidth 0;color 18;fstyle solid;cird TW towercenter;
    color 0;fstyle hollow;cird TW towercenter;
    color 16;fstyle solid;cird TW-(PW*2) towercenter;
    color 0;fstyle hollow;cird TW-(PW*2) towercenter;
    go done
    :circlepeakroof
    lwidth 0;color 18;fstyle solid;cird TW towercenter;
    color 10;cird TW-(PW*2) towercenter;
    color 11
    arcw towercenter (TW-(PW*2))/2 200 350
    |color 0;fstyle hollow;cird TW towercenter;
    cird TW-(PW*2) towercenter;
    go done
    :drawsquaretower
    ifz RS squarepeakroof
    :squareflatroof
    gp TP1 ref towercenter gp TP2 ref towercenter gp TP3 ref towercenter gp TP4 ref towercenter lwidth 0;color 18;fstyle solid;poly TP1 TP2 TP3 TP4;
    color 0;fstyle hollow;poly TP1 TP2 TP3 TP4;
    gp TP1 ref towercenter gp TP2 ref towercenter gp TP3 ref towercenter gp TP4 ref towercenter color 16;fstyle solid;poly TP1 TP2 TP3 TP4;
    color 0;fstyle hollow;poly TP1 TP2 TP3 TP4;
    go done
    :squarepeakroof
    gp TP1 ref towercenter gp TP2 ref towercenter gp TP3 ref towercenter gp TP4 ref towercenter lwidth 0;color 18;fstyle solid;poly TP1 TP2 TP3 TP4;
    color 0;fstyle hollow;poly TP1 TP2 TP3 TP4;
    gp TP1 ref towercenter gp TP2 ref towercenter gp TP3 ref towercenter gp TP4 ref towercenter lwidth 0;color 10;fstyle solid;poly TP1 TP2 TP3;
    color 11;poly TP3 TP4 TP1;
    color 0;fstyle hollow;poly TP1 TP2 TP3 TP4;
    line TP1 TP3;
    line TP2 TP4;
    go done
    :done
    endm

    macro DRAWWALL
    lwidth WW;color 18;lstyle solid;fstyle solid;line wallpoint1 wallpoint2;
    color 0;fstyle hollow;line wallpoint1 wallpoint2;
    color 16;fstyle solid;lwidth WW-(PW*2);line wallpoint1 wallpoint2;
    color 0;fstyle hollow;line wallpoint1 wallpoint2;
    endm
    НазваниеСтена Города 3
    АвторMorgan Olden
    КомандаCITYWALL3
    ОписаниеИзображение городской стены с башнями. (высоко детализованное, с зубцами)
    Инструкции CITYWALL3

    Этот макрос запрашивает несколько пунктов информации, затем позволяет пользователю выбрать ряд точек. Макрос рисует городскую стену между каждой точкой и вставляет башню на каждой точке. Вид стены и башен зависит от обеспеченной информации (значения по умолчан ию в скобках):

    1. Wall width. (10) - Толщина стены
    2. Parapet both sides? (Both) - Парапет на обоих сторонах? (на обоих)
    3. Parapet width. (2) - Ширина парапета
    4. Tower width. (Wall width x 2) - Размер башни (вдвое больше толщины стены)
    5. Tower style. (square or circle) (circle) - Стиль башни (квадратный или круглый)
    6. Roof style. (flat or peaked) (peaked) - Стиль верха башни (плоская или покатая)
    7. Roof walkway width. (5) (Optional: if "peaked roof" is selected) - Ширина прохода башни (если выбрана покатая крыша)

    Все макросы, найденные в секции "Код" необходимы для корректной работы, но только макросы "CITYWALL3" и "CITYWALL3TOWER" могут запускаться из командной строки. Для лучших результатов, создайте отдельный макро-файл для этого макроса, и загружайте этот файл когда собираетесь рисовать городские стены.


    Примечания:

    1. Левый клик рисует сегмент стены, правый ее завершает, и подставляет башню.

    2. Квадратные башни автоматически выравнивают себя под углом средним между двумя смежными стенами.

    3. Вход и выход стены в квадратную башню находятся на противоположных сторонах башни, если различие в угле между этими двумя стенами меньше чем 55 градусов. Углы больше делают вход и выход стены в башню на двух смежных сторонах.

    4. Размеры парапета добавляются и к стене, и к башне. Башни с установленными на максимуме крышами все равно будут иметь парапет.

    5. Минимальный размер башни равен ширине стены, но для лучших результатов рекомендуется выбирать ширину башни по крайней мере вдвое больше ширины стены.


    CITYWALL3TOWER

    Этот макрос рисует только башню, расположенную в указанной точке. После введения пользователем нескольких пунктов информации, макрос запрашивает точку для расположения башни. Если был выбран квадратный стиль башни, макрос также запрашивает ориентацию башни. Вид башни зависит от обеспеченной информации (значения по умолчанию в скобках):

    1. Tower width. (20) - Размер башни
    2. Tower style. (square or circle) (circle) - Стиль башни (квадратный или круглый)
    3. Roof style. (flat or peaked) (peaked) - Стиль верха башни (плоская или островерхняя)
    4. Roof walkway width. (5) (Optional: if "peaked roof" is selected) - Ширина прохода башни (если выбрана островерхняя крыша)
    Код
    macro CITYWALL3
    ecoff
    rdoff
    gv ColDS 18
    gv ColLS 16
    gv ColDR 11
    gv ColLR 10
    gv WW 10
    gv sides 1
    gv TWW 5
    gv TS 1
    gv RS 0
    gv WW ^DEnter wall width:
    gv sides ^DParapet on both sides? (one side=0, both=1)
    gv TW WW*2
    gv TW ^DEnter tower width:
    ifn TW-20 control1
    go control2
    :control1
    gv TW 20
    :control2
    gv TS ^DChose tower style (square=0, circle=1):
    gv RS ^DChose tower roof style (peaked=0, flat=1):
    ifz RS askwalkwaywidth
    go skipwalkwaywidth
    :askwalkwaywidth
    gv TWW ^DTower walkway width (defalt=5, none=0):
    :skipwalkwaywidth
    gp P1 ^DFirst point:
    line P1 ^DNext point:;
    gp P2 @0,0
    selbyp;erase;
    gp wallpoint1 P1;gp wallpoint2 P2
    drawwall3
    gbrng towerbrng P1 P2
    gp towercenter P1
    drawtower3
    :loop
    line P2 ^DNext point:;
    gp P3 @0,0
    gdist testdist P2 P3
    ifz testdist laststep
    selbyp;erase;
    gp wallpoint1 P2;gp wallpoint2 P3
    drawwall3
    gbrng B12 P1 P2
    gbrng B23 P2 P3
    gv towerbrng (B12+B23)/2
    gsin offset (B12-B23)
    ifp offset control5
    gv offset 0-offset
    :control5
    ifn offset-.8 control6
    gv towerbrng towerbrng+45
    :control6
    gp towercenter P2
    drawtower3
    gp P1 P2;gp P2 P3
    go loop
    :laststep
    |gp towercenter P2
    gbrng towerbrng P1 P2
    drawtower3
    selbyd
    econ
    rdon
    endm

    macro DRAWTOWER3
    ifz TS drawsquaretower
    :drawcircletower
    lwidth 0;color ColLS;fstyle solid;cird TW towercenter;
    lwidth 1.5;color ColDS;cird TW towercenter;
    color 0;fstyle hollow;cird TW towercenter;
    gv OutsideTW TW+.75
    gv OutsideCirc OutsideTW*3.1416
    gv counter 0
    :circcounterloop
    gv counter counter+1
    gv OutsideCirc OutsideCirc-7.5
    ifz OutsideCirc donecirccounterloop
    ifn OutsideCirc-7.5 donecirccounterloop
    go circcounterloop
    :donecirccounterloop
    gv OneArcUnit 360/counter/7.5
    gv currentangle 0
    :circcrenloop
    lwidth 2.5;color ColDS;fstyle solid
    arcr towercenter OutsideTW/2 currentangle (currentangle+(OneArcUnit*5))
    |color 0;fstyle hollow
    arcr towercenter OutsideTW/2 currentangle (currentangle+(OneArcUnit*5))
    |gv currentangle (currentangle+(OneArcUnit*7.5))
    ifp currentangle-360 donecirccrenloop
    go circcrenloop
    :donecirccrenloop
    ifz RS circlepeakroof
    :circleflatroof
    go done
    :circlepeakroof
    lwidth 0;fstyle solid
    color ColLR;cird TW-(TWW*2) towercenter;
    color ColDR
    arcw towercenter (TW-(TWW*2))/2 200 350
    |color 0;fstyle hollow;cird TW-(TWW*2) towercenter;
    go done
    :drawsquaretower
    gp TP1 ref towercenter gp TP2 ref towercenter gp TP3 ref towercenter gp TP4 ref towercenter lwidth 0;color ColLS;fstyle solid;poly TP1 TP2 TP3 TP4;
    lwidth 1.5;color ColDS;poly TP1 TP2 TP3 TP4;
    color 0;fstyle hollow;poly TP1 TP2 TP3 TP4;
    gp TP1 ref TP1 gp TP2 ref TP2 gp TP3 ref TP3 gp TP4 ref TP4 gdist DTS TP1 TP2
    gv DTS DTS-12.5
    gv remainder DTS
    :remainderloop
    ifz remainder doneremainderloop
    ifn remainder-7.5 doneremainderloop
    gv remainder remainder-7.5
    go remainderloop
    :doneremainderloop
    gv CrenBrng towerbrng-90
    gp Cren1 ref TP1 gv CrenTDist DTS-remainder
    lwidth 2.5;color ColDS;fstyle solid
    path ref TP1 color 0;fstyle hollow
    path ref TP1 DRAWCRELLELATION
    gv CrenBrng towerbrng
    gp Cren1 ref TP2 lwidth 2.5;color ColDS;fstyle solid
    path ref TP2 color 0;fstyle hollow
    path ref TP2 DRAWCRELLELATION
    gv CrenBrng towerbrng+90
    gp Cren1 ref TP3 lwidth 2.5;color ColDS;fstyle solid
    path ref TP3 color 0;fstyle hollow
    path ref TP3 DRAWCRELLELATION
    gv CrenBrng towerbrng+180
    gp Cren1 ref TP4 lwidth 2.5;color ColDS;fstyle solid
    path ref TP4 color 0;fstyle hollow
    path ref TP4 DRAWCRELLELATION
    ifz RS squarepeakroof
    :squareflatroof
    go done
    :squarepeakroof
    gp TP1 ref towercenter gp TP2 ref towercenter gp TP3 ref towercenter gp TP4 ref towercenter lwidth 0;color ColLR;fstyle solid;poly TP1 TP2 TP3;
    color ColDR ;poly TP3 TP4 TP1;
    color 0;fstyle hollow;poly TP1 TP2 TP3 TP4;
    line TP1 TP3;
    line TP2 TP4;
    color ColDR;fstyle solid;lwidth 1;line towercenter TP4;
    color 0;fstyle hollow;lwidth 1;line towercenter TP4;
    color ColLR;fstyle solid;lwidth 1;line towercenter TP2;
    color 0;fstyle hollow;lwidth 1;line towercenter TP2;
    color ColLR;fstyle solid;lwidth 1;line TP1 TP3;
    color 0;fstyle hollow;lwidth 1;line TP1 TP3;
    go done
    :done
    endm

    macro DRAWWALL3
    color 0;lwidth 0;fstyle solid
    gbrng B12 wallpoint1 wallpoint2
    gdist Dist12 wallpoint1 wallpoint2
    gp L1 ref wallpoint1 gp R1 ref wallpoint1 color ColLS;lstyle solid;fstyle solid;lwidth WW;line wallpoint1 wallpoint2;
    color ColDS;lwidth 1.5;line L1 ref L1 line R1 ref R1 color 0;fstyle hollow;line L1 ref L1 line R1 ref R1 gp Cren1 ref L1 gv CrenBrng B12
    gv CrenTDist Dist12
    DRAWCRELLELATION
    ifz sides done
    gp Cren1 ref R1 gv CrenBrng B12
    gv CrenTDist Dist12
    DRAWCRELLELATION
    :done
    endm

    macro DRAWCRELLELATION
    gp CrenS Cren1
    :loop
    gp Cren2 ref Cren1 lstyle solid;color ColDS;lwidth 2.5;fstyle solid;line Cren1 Cren2;
    color 0;fstyle hollow;line Cren1 Cren2;
    gdist CrenDist CrenS Cren2
    ifn CrenTDist-CrenDist-7.5 control1
    gp Cren1 ref Cren1 go loop
    :control1
    endm



    macro CITYWALL3TOWER
    ecoff
    rdoff
    gv ColDS 18
    gv ColLS 16
    gv ColDR 11
    gv ColLR 10
    gv TWW 5
    gv TW 20
    gv TS 1
    gv RS 0
    gv TW ^DEnter tower width:
    ifn TW-20 control1
    go control2
    :control1
    gv TW 20
    :control2
    gv TS ^DChose tower style (square=0, circle=1):
    gv RS ^DChose tower roof style (peaked=0, flat=1):
    ifz RS askwalkwaywidth
    go loop
    :askwalkwaywidth
    gv TWW ^DTower walkway width (defalt=5, none=0):
    :loop
    gp towercenter ^DPick tower center:
    iferr done
    ifz TS-1 control3
    line towercenter ^DTower angle:;
    gp anglereference @0,0
    selbyp;erase;
    gbrng towerbrng towercenter anglereference
    :control3
    drawtower3
    go loop
    :done
    selbyd
    econ
    endm
    НазваниеСтена Города 4
    АвторMorgan Olden
    КомандаCITYWALL4
    ОписаниеКак и CITYWALL1, этот макрос преобразовывает имеющуюся плавную линию в изображение стены города, эта стена выглядит как в CITYWALL3, то есть с зубцами и т.п.
    ИнструкцииПеред указанием плавной линии, которую вы хотите преобразовать в городсую стену, надо указать ширину стены. Используйте макрос CITYWALLTOWER3, чтобы установить башни на стену.

    Этот макрос может иногда работать со сбоями, если имеются другие объекты, поверх которых будет рисоваться стена. Если дело обстоит так, лучше рисовать стену на временном слое (layer Temporary), при замораживании (freeze) всех других слоев.

    Другая возможная причина сбоев - слишком большое отдаление от стены в процессе преобразования. Если макрос сбоит, попытайтесь снова после изменения масштаба изображения ближе к объекту преобразования.
    Код
    macro CITYWALL4
    ecoff
    gv mcoColDS 18
    gv mcoColLS 16
    gv mcogap 2.5
    gv mcoWW 10
    gv mcoWW ^DWall width (10):
    ge mcoentity ^DSelect line to convert:
    iferr mcodone
    gp mcooriginal % 0 mcoentity
    selby1
    gbrng mcoB1 % 0 mcoentity % .001 mcoentity
    lstyle solid;color 0;lwidth 2.5;fstyle solid
    offset ((mcoWW/2)+.5) % 0 mcoentity ref % 0 mcoentity selbyp
    changec2 mcoColDS
    ge mcoentity ref % 0 mcoentity selby1
    STC mcoentity
    front mcoentity
    gdist mcoremainder % 0 mcoentity % 1 mcoentity
    gv mcoremainder (mcoremainder*100)-5
    gv mcosegments 0
    :mcoremainderloop
    ifn mcoremainder-7.5 mcodoneremainderloop
    gv mcosegments mcosegments+1
    gv mcoremainder mcoremainder-7.5
    go mcoremainderloop
    :mcodoneremainderloop
    Citywall4a
    ge mcoentity mcooriginal
    offset ((mcoWW/2)+.5) % 0 mcoentity ref % 0 mcoentity selbyp
    changec2 mcoColDS
    ge mcoentity ref % 0 mcoentity selby1
    STC mcoentity
    front mcoentity
    gdist mcoremainder % 0 mcoentity % 1 mcoentity
    gv mcoremainder (mcoremainder*100)-5
    gv mcosegments 0
    :mcoremainderloop2
    ifn mcoremainder-7.5 mcodoneremainderloop2
    gv mcosegments mcosegments+1
    gv mcoremainder mcoremainder-7.5
    go mcoremainderloop2
    :mcodoneremainderloop2
    Citywall4a
    selby1
    ge mcoentity mcooriginal
    CHANGEC mcoentity 0
    CHANGEC2 mcoentity mcoColDS
    CHANGELW mcoentity (mcoWW+1.5)
    CHANGEFS mcoentity SOLID
    selbyp
    copy 0,0 0,0;
    CHANGEC2 mcoColLS
    CHANGELW (mcoWW-1.5)
    :mcodone
    selbyd
    econ
    endm

    macro CITYWALL4A
    gdist mcolen % 0 mcoentity % 1 mcoentity
    gv mcopartlen ((mcolen*100)-((mcosegments-1)*mcogap))/mcosegments
    gp mcoP1 % 0 mcoentity
    :mcoloop
    ge mcoentity mcoP1
    gdist mcolen % 0 mcoentity % 1 mcoentity
    gv mcounit 1/mcolen
    gp mcoP2 % (mcopartlen*mcounit) mcoentity
    gp mcoP3 % ((mcopartlen+mcogap)*mcounit) mcoentity
    break mcoentity mcoP2 mcoP3
    gv mcosegments mcosegments-1
    ifz mcosegments-1 mcodoneloop
    gp mcoP1 mcoP3
    go mcoloop
    :mcodoneloop
    endm
    НазваниеСтена Города 5
    АвторMorgan Olden
    Командаcitywall5
    ОписаниеИзображение городской стены с башнями (высоко детализованное, с зубцами), но не ставит башни в углах.
    ИнструкцииЭтот макрос работает как и Городская Стена 3, но есть и некоторые отличия:
      1. Нет башен - в углах ставит зубец парапета.
      2. Сохранение настроек - макрос запоминает последние использованные настройки.
      3. Выбор цветов - вы можете сами указать желаемые цвета.
      4. Группировка - после завершения работы макроса созданные объекты сгруппированы, что облегчает их редактирование.
      5. Восстановление всех значений (заливка, толщина, стиль линии и т.п.) к исходным на момент запуска макроса.
    В макрос включен файл скрипта с кодом (смотри вложение). Для работы скрипта просто запустите его из СС2.
    ВложениеФайл скрипта (citywall5.scr) содержит макрос.
    Код
    macro CityWall5
    ecoff
    rdoff
    point 10001,10001;
    golayer MacroConstruction
    scriptm #citywall5-vars.scr
    ifdef mcoCityWall5VarsOK mcoDoneVarCheck
    :mcoDefineVars
    gv mcoWW 10
    gv mcoRCren 1
    gv mcoLCren 1
    gv mcoColDS 14
    gv mcoColLS 251
    gcol mcoColDS ^DDark stone colour? (14)
    gcol mcoColLS ^DLight stone colour? (251)
    gv mcoWW ^DWall width (10)
    gv mcoRCren ^DRight side crenelation? (1=yes, 0=no)
    gv mcoLCren ^DLeft side crenelation? (1=yes, 0=no)
    gw mcoCityWall5VarsOK OK
    savevars citywall5-vars
    go mcoStart
    :mcoDoneVarCheck
    gv mcoUseDefault 1
    gv mcoUseDefault ^DUse saved settings? (1=yes - default - click) (0=no)
    ifz mcoUseDefault mcoDefineVars
    :mcoStart
    gv mcoBLeg 0
    gv mcoFirstTime 0
    color 0
    lwidth 0
    lstyle solid
    fstyle solid
    selbyp
    gp mcoP1 ^DPoint 1:
    iferr mcoabort
    gp mcoP2 ^DPoint 2:
    line mcoP1 mcoP2;
    gdist mcoD12 mcoP1 mcoP2
    ifz mcoD12 mcoabort
    GBRNG mcoB12 mcoP1 mcoP2
    gp mcoP1R ref mcoP1 gp mcoP1L ref mcoP1 gp mcoP1Rint ref mcoP1 gp mcoP1Lint ref mcoP1 gp mcoP1RC ref mcoP1 gp mcoP1LC ref mcoP1 gp mcoP3 mcoP2
    gp mcoP3 ^DNext Point:
    line mcoP2 mcoP3;
    gdist mcoD23 mcoP2 mcoP3
    ifz mcoD23 mcoControl1
    gp mcoPsl mcoP1L
    gp mcoPsr mcoP1R
    :mcoloop
    GBRNG mcoB12 mcoP1 mcoP2
    GBRNG mcoB23 mcoP2 mcoP3
    gcos mcowcs 90-((mcoB12-mcoB23-180)/2)
    gv mcoaw 1/mcowcs*(mcoWW/2)
    gv mcoawint 1/mcowcs*((mcoWW/2)-1.5)
    gv mcoawCren 1/mcowcs*((mcoWW/2)-.25)
    gp mcoP2R ref mcoP2 <(mcoB12+mcoB23)/2+90,mcoaw
    gp mcoP2L ref mcoP2 <(mcoB12+mcoB23)/2-90,mcoaw
    gp mcoP2Rint ref mcoP2 <(mcoB12+mcoB23)/2+90,mcoawint
    gp mcoP2Lint ref mcoP2 <(mcoB12+mcoB23)/2-90,mcoawint
    gp mcoP2RC ref mcoP2 <(mcoB12+mcoB23)/2+90,mcoawCren
    gp mcoP2LC ref mcoP2 <(mcoB12+mcoB23)/2-90,mcoawCren
    poly mcoP1L mcoP2L mcoP2R mcoP1R;
    changec mcoColLS
    line mcoP1L mcoP2L;
    line mcoP1R mcoP2R;
    ifz mcoRCren mcoDoneCrenLoop1
    poly mcoP1R mcoP2R mcoP2Rint mcoP1Rint;
    changec2 mcoColDS
    lwidth 2.5
    gdist mcoD12RC mcoP1RC mcoP2RC
    ifz mcoD12RC-7.5 mcoDoneCrenLoop1
    gn mcoLoopCount (mcoD12RC-12.5)/7.5
    path ref mcoP1RC changec2 mcoColDS
    ifz mcoLoopCount mcoDoneCrenLoop1
    ifn mcoLoopCount mcoDoneCrenLoop1
    gv mcoCrenDist (mcoD12RC-12.5)/mcoLoopCount
    gv mcoCurLen 7.5
    :mcoCrenLoop1
    line ref mcoP1RC changec2 mcoColDS
    gv mcoCurLen mcoCurLen+mcoCrenDist
    gv mcoLoopCount mcoLoopCount-1
    ifp mcoLoopCount mcoCrenLoop1
    :mcoDoneCrenLoop1
    ifz mcoLCren mcoDoneCrenLoop2
    lwidth 0
    poly mcoP1L mcoP2L mcoP2Lint mcoP1Lint;
    changec2 mcoColDS
    lwidth 2.5
    gdist mcoD12LC mcoP1LC mcoP2LC
    ifz mcoD12LC-7.5 mcoDoneCrenLoop2
    gn mcoLoopCount (mcoD12LC-12.5)/7.5
    path ref mcoP1LC changec2 mcoColDS
    ifz mcoLoopCount mcoDoneCrenLoop2
    ifn mcoLoopCount mcoDoneCrenLoop2
    gv mcoCrenDist (mcoD12LC-12.5)/mcoLoopCount
    gv mcoCurLen 7.5
    :mcoCrenLoop2
    line ref mcoP1LC changec2 mcoColDS
    gv mcoCurLen mcoCurLen+mcoCrenDist
    gv mcoLoopCount mcoLoopCount-1
    ifp mcoLoopCount mcoCrenLoop2
    :mcoDoneCrenLoop2
    lwidth 0
    gp mcoP4 mcoP3
    gp mcoP4 ^DNext Point
    line mcoP3 mcoP4;
    gdist mcoD34 mcoP3 mcoP4
    ifz mcoD34 mcodone
    gp mcoP1 mcoP2
    gp mcoP2 mcoP3
    gp mcoP3 mcoP4
    gp mcoP1L mcoP2L
    gp mcoP1R mcoP2R
    gp mcoP1Lint mcoP2Lint
    gp mcoP1Rint mcoP2Rint
    gp mcoP1RC mcoP2RC
    gp mcoP1LC mcoP2LC
    gv mcoBLeg mcoB12
    gv mcoFirstTime 1
    goto mcoloop
    :mcoDone
    gv mcoFT1 1
    go mcoControl2
    :mcoControl1
    gp mcoP2 mcoP1
    gp mcoP2L mcoP1L
    gp mcoP2R mcoP1R
    gp mcoP2RC mcoP1RC
    gp mcoP2LC mcoP1LC
    gp mcoP2Lint mcoP1Lint
    gp mcoP2Rint mcoP1Rint
    gbrng mcoB23 mcoP2 mcoP3
    gv mcoFT1 0
    :mcoControl2
    gp mcoP3R ref mcoP3 gp mcoP3L ref mcoP3 gp mcoP3Rint ref mcoP3 gp mcoP3Lint ref mcoP3 gp mcoP3RC ref mcoP3 gp mcoP3LC ref mcoP3 poly mcoP2L mcoP3L mcoP3R mcoP2R;
    changec mcoColLS
    line mcoP2L mcoP3L;
    line mcoP2R mcoP3R;
    ifz mcoRCren mcoDoneCrenLoop3
    poly mcoP2R mcoP3R mcoP3Rint mcoP2Rint;
    changec2 mcoColDS
    lwidth 2.5
    gdist mcoD23RC mcoP2RC mcoP3RC
    ifz mcoD23RC-7.5 mcoDoneCrenLoop3
    gn mcoLoopCount (mcoD23RC-12.5)/7.5
    path ref mcoP2RC changec2 mcoColDS
    ifz mcoLoopCount mcoCrenEndcap1
    ifn mcoLoopCount mcoCrenEndcap1
    gv mcoCrenDist (mcoD23RC-12.5)/mcoLoopCount
    gv mcoCurLen 7.5
    :mcoCrenLoop3
    line ref mcoP2RC changec2 mcoColDS
    gv mcoCurLen mcoCurLen+mcoCrenDist
    gv mcoLoopCount mcoLoopCount-1
    ifp mcoLoopCount mcoCrenLoop3
    :mcoCrenEndcap1
    line mcoP3RC ref mcoP3RC changec2 mcoColDS
    :mcoDoneCrenLoop3
    ifz mcoLCren mcoDoneCrenLoop4
    lwidth 0
    poly mcoP2L mcoP3L mcoP3Lint mcoP2Lint;
    changec2 mcoColDS
    lwidth 2.5
    gdist mcoD23LC mcoP2LC mcoP3LC
    ifz mcoD23LC-7.5 mcoDoneCrenLoop4
    gn mcoLoopCount (mcoD23LC-12.5)/7.5
    path ref mcoP2LC changec2 mcoColDS
    ifz mcoLoopCount mcoCrenEndcap2
    ifn mcoLoopCount mcoCrenEndcap2
    gv mcoCrenDist (mcoD23LC-12.5)/mcoLoopCount
    gv mcoCurLen 7.5
    :mcoCrenLoop4
    line ref mcoP2LC changec2 mcoColDS
    gv mcoCurLen mcoCurLen+mcoCrenDist
    gv mcoLoopCount mcoLoopCount-1
    ifp mcoLoopCount mcoCrenLoop4
    :mcoCrenEndcap2
    line mcoP3LC ref mcoP3LC changec2 mcoColDS
    :mcoDoneCrenLoop4
    lwidth 0
    selbyl
    changel MacroConstruction
    like
    10001,10001
    selbyp
    group
    :mcoabort
    selby1
    keep 10001,10001
    erase 10001,10001
    selrest
    rdon
    econ
    endm









    Morgan Olden

    Copyright © AD&Den`s Lair Все права защищены.

    Опубликовано на: 2005-03-29 (2758 Прочтено)

    [ Вернуться назад ]
     
    Темы
  •  Все категории
  •  Карты
  •  Проза
  •  Страница
  •  Тексты

  • Последняя пятерка
  • Школьные годы чудесные [ 0 Комментарии - 405 Прочтено ]
  • Хроники конца света [ 0 Комментарии - 400 Прочтено ]
  • СС3 Космографер [ 0 Комментарии - 37867 Прочтено ]
  • СС2 Космографер [ 3 Комментарии - 38343 Прочтено ]
  • Том Картографера [ 7 Комментарии - 38318 Прочтено ]

  • [ Больше в секции новостей ]

    Шпионство

    IP
    18.97.14.85

    Мониторинг доступности сайтов и серверов Host-tracker.com Век Приключений Bascinet - реконструкция denw IL-2 Training Книготорговая Компания «А-5» - художественная, учебная литература, скидки, опт и мелкий опт, доставка, дешево, низкие цены издательства Feokl Private Server