Вывод дополнительных элементов (визуалка-анимация)

    This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

    • Вывод дополнительных элементов (визуалка-анимация)

      И так на примере защиты к примеру в 2Д галактике надо вывести у юзера вид купола окружающий планету если есть скажем оборона в этом виде
      в дальнейшем по такому же принципу можно вывести что угодно и куда угодно тут делал на 1.7 но подходит к любой версии

      и так showGalaxy.php добавляем следующую строку
      Display Spoiler
      'smolshild' => $PLANET['small_protection_shield'],

      в tpl
      где прописана планка добавляем условие и вывод картинки
      Display Spoiler
      {if $smolshild !=0}
      <img class="block" style="margin-top:-92px; margin-left:-14px; z-index:5" src='{$dpath}planeten/small/2d/shield.png' height='100' width='100'>
      {/if}

      css анимация штатная моя версия переделана
      Display Spoiler

      .block {
      margin:100px;
      display: block;
      width: 22px;
      height: 22px;
      border-radius: 50%;
      background: #cca92c;
      cursor: pointer;
      box-shadow: 0 0 0 rgba(204,169,44, 0.4);
      animation: block 2s infinite;
      }
      .pulse:hover {
      animation: none;
      }

      @-webkit-keyframes block {
      0% {
      -webkit-box-shadow: 0 0 0 0 rgba(204,169,44, 0.4);
      }
      70% {
      -webkit-box-shadow: 0 0 0 10px rgba(204,169,44, 0);
      }
      100% {
      -webkit-box-shadow: 0 0 0 0 rgba(204,169,44, 0);
      }
      }
      @keyframes block {
      0% {
      -moz-box-shadow: 0 0 0 0 rgba(204,169,44, 0.4);
      box-shadow: 0 0 0 0 rgba(204,169,44, 0.4);
      }
      70% {
      -moz-box-shadow: 0 0 0 10px rgba(204,169,44, 0);
      box-shadow: 0 0 0 10px rgba(204,169,44, 0);
      }
      100% {
      -moz-box-shadow: 0 0 0 0 rgba(204,169,44, 0);
      box-shadow: 0 0 0 0 rgba(204,169,44, 0);
      }
      }


      где класс блок добавлен эффект css анимации (pulse) пульсация - защита красиво пульсирует и исчезает когда ее сносят я у себя так дописал еще условие к этому .если уровень теха шпионажа ниже то нельзя увидеть визуально, если выше то можно... по такому же принципу можно вывести что угодно и в таблицы без излишних манипуляций смотрится красиво и дополняет 2д галактику обломки астеройды выводим так же но используем свою анимацию
      сам еще не спец в php но готовые решения понимаю и люблю улучшать их минимизируя код


      на днях выложу решение блуждающей планеты она появляется раз в 24 часа меняет коррдинаты раз в 4 часа после атаки успешной пользователем на ней есть арты и прочая ерунда в виде бонусов ну и флот пиратов планка исчезает от 1 минуты до 24 часов и рандомно меняет потом координаты решение пока на 1.7 на 1.9 и 2.0 переписываю если кто готов помощь быстрей сделать процесс буду благодарен мне осталось дописать в пыхе обращение к базе данных но туту пока так как привык к 1.7 затык где то не то написал (( пок аразбираюсь где ошибка.. все остальное сделал для версии свыше 1.8 ++ планка смена координат работает чисто по php от крона не зависит (p.s. а кто то меня убеждал в обратном что этого не сделать :))

      второе решение атака пиратов рандом если игрок набрал скажем 300 к очей кому то не повезло первый заход по рандому для кого то выпадет атака шанс выпадания я поставил у себя 1 процент ..и условие елси на игрока была атака неделю не атачим ..флот делится на 4 группы одиночки, транспортники, пираты и чужие третий мод это база пиратов для нее создаем новый тип планеты, она есть в каждой системе (после каждой успешной атаки уровень базы поднимается на 0.5 ) обменяю на полезные моды к новым версиям moons

      1.7 моды: 1) блуждающая планка - отдам в свободный доступ ... 2) (квест) база пиратов.... 3) (квест) атака пиратов поменяю на моды ищу мод банка для 1.9 для версий младше есть могу отдать уже допиленную как надо

      The post was edited 15 times, last by Shandow ().

    • Вывод визуально флота на орбиту в обзоре + анимация и отправка флота на миссии (отправку не выкладывал)

      в class.ShowOverviewPage тут выводим ге массив то что надо вывести в обзор
      Display Spoiler
      $elementPlanet = array(204,205,229,206,207,215,213,211,224,225,226,214,216,230,227,228,218,222,221,231,232,233,234,235,236,237,238,239,248,247,246,245,244,241);
      require_once(ROOT_PATH . 'includes/classes/class.FleetFunctions.php');
      foreach($elementPlanet as $FleetID)
      {
      if ($PLANET[$resource[$FleetID]] == 0)
      continue;

      $FleetsOnPlanet[] = array(
      'id' => $FleetID,

      'speed' => FleetFunctions::GetFleetMaxSpeed($FleetID, $USER),
      'count' => $PLANET[$resource[$FleetID]],
      );
      }

      в tpl
      Display Spoiler

      {foreach $fleets as $index => $fleet}
      <div class="fleet_time" >
      <div id="fleettime_{$index}" class="fleets" data-fleet-end-time="{$fleet.returntime}" data-fleet-time="{$fleet.resttime}"></div>
      <div class="tooltip fleet_static_time" data-tooltip-content="{$fleet.resttime1}">{$fleet.resttime1}</div>
      </div>
      <div class="fleet_text">{$fleet.text}</div>
      {/foreach}

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

      The post was edited 2 times, last by Shandow ().

    • i tryed it and get this error
      Error the Parse : syntax error, unexpected 'elementPlanet' (T_STRING), expecting variable (T_VARIABLE) or '$' in /class.ShowOverviewPage.php on line 955
    • Версия какая ? там обращения к вызову флота может отличатся
      мне проще визуалка в скайпа демонстрация экрана
    • Russoll wrote:

      its 1.7
      да тут под 1.7 но работает на всех версиях я показывал на ролике у меня на 1.9 что касается только вывода и css работает на всех версиях .. проблема может быть в одном я всегда делаю каждую тпл под себя удаляю все и переделываю с нуля поэтому может что то старое мешать и надо правильно подобрать расположение куда это воткнуть и порой в php надо указать что выводить из базы то етсь указать переменную с запросом на базу , если просо условие выводим if то тут просто от балды создаем переменную которая по душе и работаем с ней. у тебя скорее отличается по переменным сравни вывод с fleet.table.page.php все данные берутся от туда и дописываются в ShowOverviewPage потом только вывод в тплку свое мне смысла нет выкладывать как я сделал в 1.9 так как я полностью переделываю под себя ее и у меня свои переменные и более короткий код в пыхах потому что я минимизирую все а да как вариант выведи загрузку флет табле на обзор укажи ее тогда можно выводить в обзоре без доп подписей.. на днях специально сделаю для вас что бы без переделок вставало

      The post was edited 4 times, last by Shandow ().

    • кто то просил работу радара показать :) начало сделал работает yadi.sk/i/JWv8ppMn3ZLFZK скоро закончу его оформлять часть покажу на видео и распишу как что сделать в принципе сложного нет все уже и так есть в коде только добавляем условие и скрипт к этому условию и уаля работает ))) на данный момент так же пытаюсь вывести сюда результат фаланги что бы тут показывало точками всех игроков друзей и врагов кто где находится но пока вывел кто в системе из друзей и атаку потом придумаю как все соединить , ну у Вам новая идея для реализации пора уходить от статики и поднимать 2 moons на новый уровень.. но все фишки я буду основные транслировать с видео на своем форуме и ютайбе

      The post was edited 1 time, last by Shandow ().

    • Визуально радар как я его делал для тех кто фома не верующий yadi.sk/i/IJlu5tRa3ZLPJa условие вывода точки так же простое через if ))) если атака показываем

      а вот сам код
      Display Spoiler


      $size: 50%

      .radar {
      background: url(https:ваша картинка.png) no-repeat 50% 50%;
      width: $size;
      height: $size;
      position: relative;
      background-size: $size $size;
      position: absolute;
      left: 50%;
      top: 50%;
      margin-left: -$size / 2;
      margin-top: -$size / 2;
      }


      .radar:hover {
      background: none;
      }


      .radar .pointer {
      position: absolute;
      z-index: 1024;
      left: 10.5820106%;
      right: 10.5820106%;
      top: 10.5820106%;
      bottom: 50%;
      will-change: transform;
      transform-origin: 50% 100%;
      border-radius: 50% 50% 0 0 / 100% 100% 0 0;
      background-image: linear-gradient(135deg,
      rgba(5, 162, 185, 0.8) 0%,
      rgba(0, 0, 0, 0.02) 70%,
      rgba(0, 0, 0, 0) 100%
      );
      clip-path: polygon(100% 0,
      100% 10%, 100% => 135deg
      50% 100%, 0 100%, 0 0);

      animation: rotate360 3s infinite linear;
      }


      .radar .pointer:after {
      content: "";
      position: absolute;
      width: 50%;
      bottom: -1px;
      border-top: 2px solid rgba(0, 231, 244, 0.8);
      box-shadow: 0 0 3px rgba(0, 231, 244, 0.6);
      border-radius: 9px;
      }


      .shadow {
      position: absolute;
      left: 11%;
      top: 11%;
      right: 11%;
      bottom: 11%;
      margin: auto;
      border-radius: 9999px;
      box-shadow: 0 0 66px 6px #A51414;
      animation: shadow 1s infinite ease;
      }



      @keyframes rotate360 {
      0% {
      transform: rotate(0deg);
      }
      to {
      transform: rotate(-360deg);
      }
      }


      @keyframes shadow {
      0% {
      opacity: 0;
      }
      50% {
      opacity: 1;
      }
      to {
      opacity: 0;
      }
      }

      и сам вывод это все стандрат остальное надо дописывать каждому свое
      Display Spoiler

      <div class="radar">
      <div class="pointer"></div>
      <div class="shadow"></div>
      </div>

      добавлен флот на орбите и сетка
      yadi.sk/i/NelFODLc3ZMGS9

      The post was edited 5 times, last by Shandow ().

    • добавил пример вывода летящего флота и перетаскивание с запоминанием координат дива yadi.sk/i/muJtBt0-3ZMSVe на сегодня все не вытерпил доработал новую примочку yadi.sk/i/4axzDI_Z3ZMZQJ

      The post was edited 1 time, last by Shandow ().

    • появление обзора загрузка блоков скажем у вас 4 части блоков надо сделать эффект что они сдвигаются каждый со своей стороны
      достаточно прописать вот этот код css для эффекта появления обзора плавность настроите по вкусу и добавите классы блокам что у вас есть

      с верху
      Display Spoiler

      .slideDown{
      animation-name: slideDown;
      -webkit-animation-name: slideDown;
      animation-duration: 1s;
      -webkit-animation-duration: 1s;
      animation-timing-function: ease;
      -webkit-animation-timing-function: ease;
      visibility: visible !important;
      }
      @keyframes slideDown {
      0% {
      transform: translateY(-100%);
      }
      50%{
      transform: translateY(8%);
      }
      65%{
      transform: translateY(-4%);
      }
      80%{
      transform: translateY(4%);
      }
      95%{
      transform: translateY(-2%);
      }
      100% {
      transform: translateY(0%);
      }
      }
      @-webkit-keyframes slideDown {
      0% {
      -webkit-transform: translateY(-100%);
      }
      50%{
      -webkit-transform: translateY(8%);
      }
      65%{
      -webkit-transform: translateY(-4%);
      }
      80%{
      -webkit-transform: translateY(4%);
      }
      95%{
      -webkit-transform: translateY(-2%);
      }
      100% {
      -webkit-transform: translateY(0%);
      }
      }

      с низу
      Display Spoiler

      .slideUp{
      animation-name: slideUp;
      -webkit-animation-name: slideUp;
      animation-duration: 1s;
      -webkit-animation-duration: 1s;
      animation-timing-function: ease;
      -webkit-animation-timing-function: ease;
      visibility: visible !important;
      }
      @keyframes slideUp {
      0% {
      transform: translateY(100%);
      }
      50%{
      transform: translateY(-8%);
      }
      65%{
      transform: translateY(4%);
      }
      80%{
      transform: translateY(-4%);
      }
      95%{
      transform: translateY(2%);
      }
      100% {
      transform: translateY(0%);
      }
      }
      @-webkit-keyframes slideUp {
      0% {
      -webkit-transform: translateY(100%);
      }
      50%{
      -webkit-transform: translateY(-8%);
      }
      65%{
      -webkit-transform: translateY(4%);
      }
      80%{
      -webkit-transform: translateY(-4%);
      }
      95%{
      -webkit-transform: translateY(2%);
      }
      100% {
      -webkit-transform: translateY(0%);
      }
      }

      с лева
      Display Spoiler

      .slideRight{
      animation-name: slideRight;
      -webkit-animation-name: slideRight;
      animation-duration: 2s;
      -webkit-animation-duration: 2s;
      animation-timing-function: ease-in-out;
      -webkit-animation-timing-function: ease-in-out;
      visibility: visible !important;
      }
      @keyframes slideRight {
      0% {
      transform: translateX(-150%);
      }
      50%{
      transform: translateX(8%);
      }
      65%{
      transform: translateX(-4%);
      }
      80%{
      transform: translateX(4%);
      }
      95%{
      transform: translateX(-2%);
      }
      100% {
      transform: translateX(0%);
      }
      }
      @-webkit-keyframes slideRight {
      0% {
      -webkit-transform: translateX(-150%);
      }
      50%{
      -webkit-transform: translateX(8%);
      }
      65%{
      -webkit-transform: translateX(-4%);
      }
      80%{
      -webkit-transform: translateX(4%);
      }
      95%{
      -webkit-transform: translateX(-2%);
      }
      100% {
      -webkit-transform: translateX(0%);
      }
      }

      с права
      Display Spoiler

      .slideLeft{
      animation-name: slideLeft;
      -webkit-animation-name: slideLeft;
      animation-duration: 2s;
      -webkit-animation-duration: 2s;
      animation-timing-function: ease-in-out;
      -webkit-animation-timing-function: ease-in-out;
      visibility: visible !important;
      }
      @keyframes slideLeft {
      0% {
      transform: translateX(150%);
      }
      50%{
      transform: translateX(-8%);
      }
      65%{
      transform: translateX(4%);
      }
      80%{
      transform: translateX(-4%);
      }
      95%{
      transform: translateX(2%);
      }
      100% {
      transform: translateX(0%);
      }
      }
      @-webkit-keyframes slideLeft {
      0% {
      -webkit-transform: translateX(150%);
      }
      50%{
      -webkit-transform: translateX(-8%);
      }
      65%{
      -webkit-transform: translateX(4%);
      }
      80%{
      -webkit-transform: translateX(-4%);
      }
      95%{
      -webkit-transform: translateX(2%);
      }
      100% {
      -webkit-transform: translateX(0%);
      }
      }

      в итоге настроив скорость получите эффект загрузки как у мимикри
      пример использования yadi.sk/i/P3MELokB3ZMjcv

      The post was edited 1 time, last by Shandow ().

    • ну вот продвигаемся дальше медленно но уверено :) yadi.sk/i/018NfJUq3ZSzyQ осталось по мелочи но это очень нудно
      от скуки сделал запуск теста в вк одноклассниках и фэйсбуке )) все работает но закрыл пока рано еще туда суваться
    • Мелочь, но все таки:
      Display Spoiler

      $elementPlanet = array(204,205,229,206,207,215,213,211,224,225,226,214,216,230,227,228,218,222,221,231,232,233,234,235,236,237,238,239,248,247,246,245,244,241);

      ИМХО, чтобы это не переписывать каждый раз когда добавил-убрал кораблик проще через запрос из БД массива с айдишками сделать
      Кто к нам с чем зачем, тот от того и того! :D
    • Согласен но я пока еще не спец разница у нас с тобой в 4 года по работе с мунс да и тут я штатное выкладываю то что для себя делаю то не много по другому..

      то что ты показал я так реализовал вывод флота на орбиту и запуск с орбиты в полет на коры после выборки флота там так же массивом

      вот пример на версии 1 7 я делал вывод флота в наличии на обзор по умолчанию закрыто идет один кораблик при нажатие полное по списку и от туда уже отправляем выбранный флот
      Display Spoiler

      $elementPlanet = array(204,205,229,206,207,215,213,211,224,225,226,214,216,230,227,228,218,222,221,231,232,233,234,235,236,237,238,239,248,247,246,245,244,241);
      require_once(ROOT_PATH . 'includes/classes/class.FleetFunctions.php');
      foreach($elementPlanet as $FleetID)
      {
      if ($PLANET[$resource[$FleetID]] == 0)
      continue;

      $FleetsOnPlanet[] = array(
      'id' => $FleetID,

      'speed' => FleetFunctions::GetFleetMaxSpeed($FleetID, $USER),
      'count' => $PLANET[$resource[$FleetID]],
      );
      }


      дальше чисто тплка работает

      The post was edited 3 times, last by Shandow ().

    • Да я ничего и не говорю, я про то что проще сделать типа :
      $element = select `id` from uni1_vars where class = 200;

      Синтаксис поправить только, но зато будет выдавать все айдишки которые есть. Просто мысли вслух, код не копируйте толтко, с телефона пишу по памяти))
      Кто к нам с чем зачем, тот от того и того! :D
    • А по поводу радара, анимацию ты написал как делать, а пхп нема)) обработчик то где?)
      Кто к нам с чем зачем, тот от того и того! :D
    • обработчик штатный )) и условия if то выводим анимацию в самом мунс все это уже готово

      а да забыл сказать что смогу так же буду помогать советами .. но основу буду вести на своем форуме там у меня порядок и в теме с решенными ответами нет возможности комментировать я их закрыл что бы не искать решение, обсуждения вывел дубликатом в отдельную ветку .. раннее я говорил что я открою 2 moоns форум сам для русскоязычного сигмента .. там я уже работаю над полной галактикой как в eve вывод через js где планеты галактики системы визуальные эффекты прыжок через портал и так далее.. полностью сделаны скриптом.. пыха только обработка, данный релиз лично мой со своим сюжетом и будет показан только когда он запустится оф.. и он будет полностью интерактивным ... я считаю 2 moоns еще можно обновлять и обновлять выводя на современный уровень.. а так как мне этот движок нравится я приложу к этому усилия кому интересно в личку , ну а остальные делаем копию всех и всего раз нет фантазии

      а эту реализацию я внес в свой moons используя библиотеку вэри джс 3д галактика yadi.sk/i/tg_aa2jI3Zt6Lc ролик посмотреть до конца.. так что кто хочет клонирует экстериум я пойду дальше :) используя отличные скрипты для 2moons ... скрипт сам по себе готов главная беда реализация в подключение к php обработке мне пришлось просить помощи

      а да уже реализовал выбор флота убрав все шаги степы объединив в один, где выбирая юнита даем задание не перескакивая в таблицу то есть убрана табличная часть выборки флота

      The post was edited 9 times, last by Shandow ().