Вместо опыта,показывает уровень(war3ft) как это сделать?
|
|
KinD | Дата: Понедельник, 20.02.2012, 21:19 | Сообщение # 1 |
- Сообщения: 1148
- Награды: 22
- Замечания:
|
Здравствуйте! Я хочу поставить место Опыта(см ниже)
Поставить чтоб показывался LVL игрока.
Возможно ли это?
Skype:daywerok
|
|
| |
SMaster | Дата: Вторник, 21.02.2012, 07:02 | Сообщение # 2 |
- Сообщения: 2189
- Награды: 46
- Замечания:
|
Шаг 1. Открываешь файл war3ft.inl Находишь WC3_ChangeRaceShowMenu( idUser, iRaceXP[MAX_RACES] = {0} ) Пишешь код,который ниже Code // Function will show the "select a race" menu to the user WC3_ChangeRaceShowMenu( idUser, iRaceXP[MAX_RACES] = {0} ) { // We don't want to replace the player's current XP with whats in the database now do we ? if ( p_data[idUser][P_RACE] ) { //iRaceXP[p_data[idUser][P_RACE]-1] = p_data[idUser][P_XP]; iRaceXP[p_data[idUser][P_RACE]-1] = p_data[idUser][P_LEVEL]; } // Need to call this here MENU_ChangeRace( idUser, iRaceXP ); }
Скрин как должно быть:
Шаг 2. В XP.inl добавляешь новую функцию.
Code XP_GetLevelByXP( iXP ) { if ( iXP < 0 || iXP == 0 ) return 0;
new Float:fXPMult = get_pcvar_float( CVAR_wc3_xp_multiplier );
new iResultLevel = 0; for (new iLevel = 0; iLevel <= MAX_LEVELS; iLevel++ ) { if ( get_pcvar_num( CVAR_wc3_save_xp ) == 1 ) { if(iXP >= floatround(iXPLevelSaved[iLevel] * fXPMult )) iResultLevel = iLevel; }
if ( get_pcvar_num( CVAR_wc3_save_xp ) == 0 ) { if(iXP >= floatround(iXPLevelShortTerm[iLevel] * fXPMult )) iResultLevel = iLevel; }
}
return iResultLevel; }
Скрин как должно быть:
Шаг 3. В db_common.h добавляешь новую переменную
Code new arrPlayerLevelsInfo[33][MAX_RACES];
Скрин как должно быть:
Шаг 4. Открываешь db_sqlite.inl и находишь фунцию SQLITE_GetAllXP( idUser ) Опускаешься ниже и изменяешь как показано на скрине ниже.
Добавляешь две строчки(одну из них комментируя) Code arrPlayerLevelsInfo[idUser][iRace-1] = XP_GetLevelByXP( iXP ); и WC3_ChangeRaceShowMenu( idUser, arrPlayerLevelsInfo[idUser] );
Скрин как должно быть:
Шаг 5. Открываешь db_mysqlx.inl и находишь фунцию MYSQLX_GetAllXP( idUser ) Опускаешься ниже и изменяешь как показано на скрине ниже.
Добавляешь две строчки(одну из них комментируя) Code arrPlayerLevelsInfo[idUser][iRace-1] = XP_GetLevelByXP( iXP ); и WC3_ChangeRaceShowMenu( idUser, arrPlayerLevelsInfo[idUser] );
Скрин как должно быть:
Шаг 6. Открываешь словарь мода cssbWar3ftMod.txt Находишь ключ MENU_WORD_EXPERIENCE и заменяешь слово "Опыт" на "Уровень"
Результат который должен получиться!
Наша группа вконтакте http://vk.com/nano_world_cs
Контакты: ICQ 607786179 Skype xonahead
|
|
| |
SMaster | Дата: Вторник, 21.02.2012, 07:08 | Сообщение # 3 |
- Сообщения: 2189
- Награды: 46
- Замечания:
|
Если делать в обычном моде war3ft.amxx, то там вместо idUser используется просто id Словарик так же по другому называется war3FT.txt
Наша группа вконтакте http://vk.com/nano_world_cs
Контакты: ICQ 607786179 Skype xonahead
|
|
| |
KinD | Дата: Вторник, 21.02.2012, 09:45 | Сообщение # 4 |
- Сообщения: 1148
- Награды: 22
- Замечания:
|
Спасибо большое
Skype:daywerok
|
|
| |
nymbus2000 | Дата: Пятница, 20.04.2012, 01:04 | Сообщение # 5 |
- Сообщения: 130
- Награды: 0
- Замечания:
|
А можно сделать так что-бы и количество опыта и уровень поочередно показывались ?
CS: -=*{Vitaliy}*=- Skype: opa_nao_O
|
|
| |
SMaster | Дата: Пятница, 20.04.2012, 01:07 | Сообщение # 6 |
- Сообщения: 2189
- Награды: 46
- Замечания:
|
nymbus2000, Цель не ясна такой заморочки.Смысла нет.
Наша группа вконтакте http://vk.com/nano_world_cs
Контакты: ICQ 607786179 Skype xonahead
|
|
| |
nymbus2000 | Дата: Пятница, 20.04.2012, 02:02 | Сообщение # 7 |
- Сообщения: 130
- Награды: 0
- Замечания:
|
Я себе установил, прикольно вот только я накачал админкой себя 31 лвл, потом поменял ник но у меня все равно показывается 31 лвл, но если выбрать рассу то будет 0 уровень. надеюсь Вы меня поймете
CS: -=*{Vitaliy}*=- Skype: opa_nao_O
|
|
| |
SMaster | Дата: Пятница, 20.04.2012, 11:42 | Сообщение # 8 |
- Сообщения: 2189
- Награды: 46
- Замечания:
|
nymbus2000, Когда меняешь ник и показывает то же самое число XP или уровень это нормально. Следовательно нет смысла, как я и писал, делать то, что ты хочешь.
Наша группа вконтакте http://vk.com/nano_world_cs
Контакты: ICQ 607786179 Skype xonahead
|
|
| |
MaJIou | Дата: Понедельник, 29.09.2014, 10:30 | Сообщение # 9 |
- Сообщения: 43
- Награды: 0
- Замечания:
|
Спасибо
Добавлено (29.09.2014, 10:30) ---------------------------------------------
Skype - dimasomon
Сообщение отредактировал MaJIou - Понедельник, 29.09.2014, 11:08 |
|
| |
aelrond | Дата: Суббота, 07.11.2015, 16:54 | Сообщение # 10 |
- Сообщения: 29
- Награды: 0
- Замечания:
|
понимаю, что тема старая.. но вот что у меня получилось и я доволен)
|
|
| |
NaSok | Дата: Воскресенье, 08.11.2015, 20:13 | Сообщение # 11 |
- Сообщения: 80
- Награды: 1
- Замечания:
|
У десятой расы (Вергилий) не видно уровня!
|
|
| |
aelrond | Дата: Понедельник, 09.11.2015, 01:51 | Сообщение # 12 |
- Сообщения: 29
- Награды: 0
- Замечания:
|
Цитата NaSok ( ) У десятой расы (Вергилий) не видно уровня! Как видишь, я решил эту проблему, и решил еще одну проблему - "как добавить более чем 10 рас?"
|
|
| |
pwalkerfnf | Дата: Понедельник, 09.11.2015, 21:57 | Сообщение # 13 |
- Сообщения: 11
- Награды: 0
- Замечания:
|
Как видишь, это не сложно
|
|
| |
aelrond | Дата: Среда, 11.11.2015, 00:21 | Сообщение # 14 |
- Сообщения: 29
- Награды: 0
- Замечания:
|
Как видишь, я пошёл дальше)
|
|
| |
pwalkerfnf | Дата: Среда, 11.11.2015, 12:35 | Сообщение # 15 |
- Сообщения: 11
- Награды: 0
- Замечания:
|
Цитата aelrond ( ) Дата: Среда, 11.11.2015, 00:21 | Сообщение # 14Сообщения: 26 Награды: 0 Замечания: 0% 0 Как видишь, я пошёл дальше) я до этого на старой системе так же сделал, но вместо уопыта передовались непонятные числа, и сейчас так же
|
|
| |
aelrond | Дата: Среда, 11.11.2015, 13:19 | Сообщение # 16 |
- Сообщения: 29
- Награды: 0
- Замечания:
|
Цитата pwalkerfnf ( ) я до этого на старой системе так же сделал, но вместо опыта передАвались непонятные числа, и сейчас так же Значит что то неверно сделал.
Код iRaceXP[MAX_RACES], iRaceLVL[MAX_RACES]
formatex(szMenuMulti,511," %s [%d] [%d]", szRaceName, iRaceXP[id_race], iRaceLVL[id_race]); Проверь что бы соответствовало: %s - текст %d - цифры %L - словарик
Сообщение отредактировал aelrond - Среда, 11.11.2015, 13:21 |
|
| |
pwalkerfnf | Дата: Среда, 11.11.2015, 13:42 | Сообщение # 17 |
- Сообщения: 11
- Награды: 0
- Замечания:
|
Цитата aelrond ( ) Значит что то неверно сделал.? 1 2 3 iRaceXP[MAX_RACES], iRaceLVL[MAX_RACES] formatex(szMenuMulti,511," %s [%d] [%d]", szRaceName, iRaceXP[id_race], iRaceLVL[id_race]);
Проверь что бы соответствовало: %s - текст %d - цифры %L - словарик спасибо, написал бы чуть чуть раньше, исправил уже, переменная по пути к меню терялась, сделал глобальной и туда кинул опыт, все как часики работает)
|
|
| |