[MOD](Edit Rapidfire) Корректировка скорострела

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

    • [MOD](Edit Rapidfire) Корректировка скорострела

      Привет друзья, ветка русского комьюнити какая то совсем никакая, ну чтож, тогда начну я.
      Представляю Вам легкий мод для корректировки скорострела, пригодится если Вас не устраивает лезть в БД каждый раз для корректировки итак приступим.

      1. создаем файл class.ShowEditsdPage.php в директории "includes/pages/game/"

      вставляем в него этот код ВНИМАНИЕ!!! кодировку ставим ВСЕХ файлов UTF-8 (без BOM) !!!!

      PHP Source Code

      1. <?php
      2. #by aurum79
      3. /*
      4. Эдитор скорострела который находится в таблице, топорно, но действенно ИМХО
      5. */
      6. class ShowEditsdPage extends AbstractPage
      7. {
      8. public static $requireModule = 0;
      9. function __construct()
      10. {
      11. parent::__construct();
      12. }
      13. function show()
      14. {
      15. global $CONF, $pricelist, $resource, $reslist, $USER, $LNG;
      16. if($USER['id'] != 1 && $USER['id'] != 2)
      17. $this->printMessage('Ибо нечего сюда лезть', true, array("game.php", 2)); // чтоб не лезли обычные игроки
      18. $rapid = $GLOBALS['DATABASE']->query("SELECT * FROM ".VARS_RAPIDFIRE." ORDER BY elementID;");
      19. $fleet_i = array();
      20. while ($row = $GLOBALS['DATABASE']->fetch_array($rapid))
      21. {
      22. $fleet_i[] = array(
      23. 'IDs' => $row['ID'],
      24. 'elementID' => $row['elementID'],
      25. 'rapidfireID' => $row['rapidfireID'],
      26. 'shoots' => $row['shoots'],
      27. );
      28. }
      29. $GLOBALS['DATABASE']->free_result($rapid);
      30. $this->tplObj->assign_vars(array(
      31. 'fleet_i' => $fleet_i,
      32. 'short' => $LNG['shortNames'],
      33. ));
      34. $this->display('page.editsd.tpl');
      35. }
      36. function del()
      37. {
      38. $ids = HTTP::_GP('IDs', '');
      39. $GLOBALS['DATABASE']->query("DELETE FROM ".VARS_RAPIDFIRE." WHERE ID = ".$ids.";");
      40. $this->redirectTo('game.php?page=editsd');
      41. }
      42. function add()
      43. {
      44. $elemID = HTTP::_GP('elemID', '');
      45. $rapID = HTTP::_GP('rapID', '');
      46. $shoots = HTTP::_GP('shoots', '');
      47. $GLOBALS['DATABASE']->query("INSERT INTO ".VARS_RAPIDFIRE." SET elementID = '".$elemID."', rapidfireID = ".$rapID.", shoots = ".$shoots.";");
      48. $this->redirectTo('game.php?page=editsd');
      49. }
      50. function ClearCache()
      51. {
      52. global $LNG;
      53. ClearCache();
      54. $this->redirectTo('game.php?page=editsd');
      55. }
      56. }
      57. ?>
      Display All

      2. создаем файл page.editsd.tpl в директории "styles/templates/game/" не забываем про кодировку UTF-8 (без BOM)


      HTML Source Code

      1. {block name="title" prepend}эдитор скорострела{/block}
      2. {block name="content"}
      3. <div id="ally_content" class="conteiner">
      4. <div class="gray_stripe">
      5. <form action="?page=editsd&mode=ClearCache" method="post">
      6. Добавить скорострел
      7. <input type="submit" value="Очистить кэш" style="display:block;float:right;">
      8. </form>
      9. </div>
      10. <th>
      11. <font color=red > Информация для прочтения!<br>
      12. 1. Если нужно отредактировать скорострел, то сначала удаляешь старый! а только потом добавляешь такой же с новыми цифрами!
      13. 2. ГЛАВНОЕ ЧТОБЫ НЕ БЫЛО ДВУХ ОДИНАКОВЫХ СКОРОСТРЕЛОВ С РАЗНЫМИ ЦИФРАМИ! лайт-лайт:2 и лайт-лайт:5. Будет конфликт в системе! УБЬЮ!
      14. 3. Корабли отсортированы по ID стреляющего!
      15. </font>
      16. </th>
      17. <table class="tablesorter ally_ranks">
      18. <tr>
      19. <th>Корабль/оборона</th>
      20. <th>Бьет по:</th>
      21. <th>Скорострел</th>
      22. <th>Сохранить</th>
      23. </tr>
      24. <form action="?page=editsd&mode=add" method="post">
      25. <tr>
      26. <td>
      27. {html_options name=elemID options=$short}
      28. </td>
      29. <td>
      30. {html_options name=rapID options=$short}
      31. </td>
      32. <td>
      33. <input style="width:50px; color:#FC6;" name="shoots" type="number" min="1" onchange="KeyUpBuy('');" onkeyup="KeyUpBuy('');" value="1">
      34. </td>
      35. <td>
      36. <input type="submit" value="Сохранить" style="display:block; margin:0 auto; padding:3px 15px;">
      37. </td>
      38. </tr>
      39. </form>
      40. </table>
      41. <table class="tablesorter ally_ranks">
      42. <div class="gray_stripe">
      43. Скорострел который уже есть в базе:
      44. </div>
      45. <tr>
      46. <th>Атакует</th>
      47. <th>Принимает</th>
      48. <th>количество</th>
      49. <th>Удалить</th>
      50. </tr>
      51. {foreach $fleet_i as $row}
      52. <form action="?page=editsd&mode=del&IDs={$row.IDs}" method="post">
      53. <tr>
      54. <td><span style="color:#6C6;padding-left: 15px;"><a href="#" onclick="return Dialog.info({$row.elementID})">{$LNG.tech.{$row.elementID}}</a></span></td>
      55. <td><span style="color:#ff0000;">{$LNG.tech.{$row.rapidfireID}}</span></td>
      56. <td><span style="color:#FC6;">{$row.shoots}</span></td>
      57. <td>
      58. <input type="submit" value="Удалить ID:{$row.IDs}" style="display:block; margin:0 auto; padding:3px 15px;">
      59. </td>
      60. </tr>
      61. </form>
      62. {/foreach}
      63. </table>
      64. </div>
      65. {/block}
      Display All




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

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

    • А да Лень я тут по группам разбил в стилях скорострел удобней стало настраивать его не одним списком а по классам выбор одного корабля и работа в списке столько с ним . нет путаницы при редактирование скорострела а если кто запулил не чайно не туда введите комнаду в базе в запросе
      ALTER TABLE (ИМЯ ВАШЕЙ ТАБЛИЦЫ) ADD newid INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY FIRST; получите редактируемую таблицу позже скину как любую таблицу если настройка ее окончательно блокировать для изменения
    • Я написал что основа есть, а модифицировать ее можно как угодно))
      Кто к нам с чем зачем, тот от того и того! :D
    • Так я про что и говорю, сам знаешь что люблю все переделывать ))
    • Распределение файлов должно быть в папках Admin, не так ли?
      Когда вы создаете файлы и помещаете их в меню, когда вы пытаетесь получить доступ к ним, надпись "Страницы не существует".
      Почему это может случиться?
    • Это просто пример кода, при желании можешь перенести в admin, а можешь в game пользовать, просто редирект сделай для тех у кого authlevel не дотянул до трешки))
      Кто к нам с чем зачем, тот от того и того! :D
    • Конечно можно, но многие писать код не особо умеют... Да и вообще не разбираются)