Мирный Опыт

ShamanOFF

Новичок
Репутация
0 / 195
МОД мирного опыта на базе 2,3 для XGP 2.9.0 >
СПЕРВА в БД выполняем соответствующий запрос
Код:
ALTER TABLE `xgp_users` ADD `lvl_minier` INT( 11 ) NOT NULL DEFAULT '1',
ALTER TABLE `xgp_users` ADD `xpminier` INT( 11 ) NOT NULL DEFAULT '0',
вродь правильно

1. Нижеприведенный файл сохраняем в includes/functions
<div style="margin:20px; margin-top:5px">
<div class="smallfont" style="margin-bottom:2px">Скрытая информация: BuildingSaveUserRecord.php <input type="button" value="Показать" style="width:60px;font-size:10px;margin:0px;padding:0px;" onClick="if (this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display != '') { this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display = ''; this.innerText = ''; this.value = 'Скрыть'; } else { this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display = 'none'; this.innerText = ''; this.value = 'Показать'; }">
</div>
<div class="alt2" style="margin: 0px; padding: 6px; border: 1px inset;">
<div style="display: none;">
<?php
########################
#By ShamanOFF cpecial for dapf.ru#
#ICQ (two)9716173(nine) #
########################


function BuildingSaveUserRecord ( $CurrentUser ) {

$QryUpdateUser = "UPDATE {{table}} SET ";
$QryUpdateUser .= "`xpminier` = '". $CurrentUser['xpminier'] ."' ";
$QryUpdateUser .= "WHERE ";
$QryUpdateUser .= "`id` = '". $CurrentUser["id"] ."';";
doquery( $QryUpdateUser, 'users');

return;
}

?>
</div>
</div>
</div>

2. Ищем файл includes\functions\CheckPlanetBuildingQueue.php
после
Код:
global $resource;
вставляем
Код:
//Опыт за построеные здания--------
    $XPBuildings  = array(  1,  2,  3, 22, 23, 24); //за какие здания будет начисляться опыт
//Опыт за построеные здания--------

--------------------------------------------------------
после
Код:
                $Units                         = $Needed['metal'] + $Needed['crystal'] + $Needed['deuterium'];
вставляем
Код:
//Мирный опыт
            if ($ForDestroy == false) {
                // Добавление опыта за постройку
                if (in_array($Element, $XPBuildings)) {
                    $AjoutXP                        = $Units / 1000;
                    $CurrentUser['xpminier']       += $AjoutXP;
                }
            } else {
                // Отнимание опыта за разрушение
                if (in_array($Element, $XPBuildings)) {
                    $AjoutXP                        = ($Units * 3) / 1000;
                    $CurrentUser['xpminier']       -= $AjoutXP;
                }
            }
//Мирный опыт

------------------------------------------------------------
после
Код:
                doquery( $QryUpdatePlanet, 'planets');
вставляем
Код:
//Обновляем БД
            $QryUpdateUser    = "UPDATE {{table}} SET ";
            $QryUpdateUser   .= "`xpminier` = '".$CurrentUser['xpminier']."' ";
            $QryUpdateUser   .= "WHERE ";
            $QryUpdateUser   .= "`id` = '" . $CurrentUser['id'] . "';";
            doquery( $QryUpdateUser, 'users');
//Обновляем БД

3. Берем includes\pages\ShowOverviewPage.php
после
Код:
                $Have_new_message .= "</tr>";
            }
вставляем
Код:
            //-----------------------------Мирный опыт-----------------------//
            $XpMinierUp     = $CurrentUser['lvl_minier'] * 50;
            $XpMinier         = $CurrentUser['xpminier'];
            $LvlUpMinier     = $CurrentUser['lvl_minier'] + 1;


                if ($XpMinier >= $XpMinierUp)
                {
                    $QryUpdateUser  = "UPDATE {{table}} SET ";
          $QryUpdateUser .= "`lvl_minier` = '" . $LvlUpMinier ."', ";
          $QryUpdateUser .= "`darkmatter` = `darkmatter` + 100 ";
                    $QryUpdateUser .= "WHERE ";
                    $QryUpdateUser .= "`id` = '" . $CurrentUser['id'] . "';";
                    doquery($QryUpdateUser, 'users');
                    $HaveNewLevelMineur  = "<tr>";
                    $HaveNewLevelMineur .= "<th colspan=\"4\">Вы получили новый уровень Шахтера.</th></tr>";
                }

            
//-------------------------Мирный опыт--------------------------//

-------------------------------------------
после
Код:
            $parse['Have_new_message']         = $Have_new_message;
вставляем
Код:
            $parse['Have_new_level_mineur'] = $HaveNewLevelMineur; //Сообщение о Шахтерстве
---------------------------------------------

после
Код:
                $parse['user_rank']            = "-";
вставляем
Код:
// Расчеты Мирного опыта
            $parse['xpminier']                 = floor($CurrentUser['xpminier']);
            $parse['lvl_minier']             = $CurrentUser['lvl_minier'];
            $LvlMinier                         = $CurrentUser['lvl_minier'];
            $parse['lvl_up_minier']         = $LvlMinier * 50;
// Расчеты Мирного опыта

4. Берем styles\templates\overview\overview_body.tpl (у вас могут выскочить ошибки)

<div style="margin:20px; margin-top:5px">
<div class="smallfont" style="margin-bottom:2px">Скрытая информация: overview_body.tpl <input type="button" value="Показать" style="width:60px;font-size:10px;margin:0px;padding:0px;" onClick="if (this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display != '') { this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display = ''; this.innerText = ''; this.value = 'Скрыть'; } else { this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display = 'none'; this.innerText = ''; this.value = 'Показать'; }">
</div>
<div class="alt2" style="margin: 0px; padding: 6px; border: 1px inset;">
<div style="display: none;">


<div id="content">
<table width="519">
<tr>
<td class="c" colspan="4"> ({user_username})</td>
</tr>
{Have_new_message}
{Have_new_level_mineur}
<tr>
<th>{ov_server_time}</th>
<th colspan="3">{date_time}</th>
</tr>
<tr>
<td colspan="4" class="c">{ov_events}</td>
</tr>
{fleet_list}
<tr>
<th>{moon_img}
{moon}</th>
<th colspan="2">
{planet_image}.jpg

{building}</th>
<th class="s">
<table width="100%" border="0">
<tr>
<th colspan="2">{bu_player}</th>
<th colspan="2">{user_username}</th>
</tr>
<tr>
<th colspan="2" align="center">{ov_points}</th>
<th colspan="2" align="center">{user_rank}</a>{max_users}</th>
</tr>

<tr>
<th colspan="2" align="center">-</th>
<th align="center">Шахтер</th>
</tr>
<tr>
<th colspan="2" align="center">{rs_lvl}</th>
<th align="center">{lvl_minier}</th>
</tr>
<tr>
<th colspan="2" align="center">Опыт</th>
<th align="center">{xpminier} / {lvl_up_minier}</th>
</tr>
<tr>
<th colspan="4">
<table border="0" width="100%">
<tbody>
</tbody>
</tbody>
</table>
</th>
</tr>

</table>
</th>
</tr>
<tr>
<th>Ваши колонии</th>
<th class="s" colspan ="4">
<table class="s" align="top" border="0" style="background-color: transparent;">
{anothers_planets}
</table>
</th>
</tr>
<tr>
<th>{ov_diameter}</th>
<th colspan="3">{planet_diameter} {ov_distance_unit} (<a title="{Developed_fields}">{planet_field_current}</a> / <a title="{max_eveloped_fields}">{planet_field_max}</a> {fields})</th>
</tr>
<tr>
<th>{ov_temperature}</th>
<th colspan="3">{ov_aprox} {planet_temp_min}{ov_temp_unit} {ov_to} {planet_temp_max}{ov_temp_unit}</th>
</tr>
<tr>
<th>{ov_position}</th>
<th colspan="3"> </th>
</tr>

</table>
</th>
</tr>
</table>
</div>

</div>
</div>
</div>

Вроде ничего не забыл, если че - спрашивайте...

Жмем Мерси *wink*

dabra:Перенес, чтобы не потерялось.
 
Вопрос у меня у всех пользователей дошло до этого значения:
31806ae407fe.jpg

И все больше ни каких изменений, это что все максимальное количество?
Где его можно поменять?
 
Темную материю! А есть вариант просто начислять тм за достижение определенной сумы очков !
 
Темную материю! А есть вариант просто начислять тм за достижение определенной сумы очков !
а посмотреть 1-2 странички модав сложно что ли
за очки типа есть такое ТУТ
 
Ну вроде и так когда строишься очки набираешь, мож её какнить переделать под очки за рейды, тоесть чтоб очки добавилсь за бои, и при определёных очках тм
и чёт я тут не магу увидеть скоко дают тм за каждый лвл.
П.с.
1. Тут ещё ошибка, после достижения 50/50 становится 2 лвл и идёт дальше 56/100, а далжно быть 1/100 и как я правильно понял из поста julian, макс лвл тут 98, где он правится?
2. Не пришло сообщение, что лвл поднят и получено n-тёмной материи
3. У мя вообще глюк произошёл
Уровень 5
Опыт 2908 / 250
 

Похожие темы

Сверху