Fizik Опубликовано 17 марта, 2016 Жалоба Поделиться Опубликовано 17 марта, 2016 (изменено) 1.)Уважаемые знатоки SRC, Можете мне показать как запретить получение опыта с 300 уровня (с монстров) При этом когда сдаёшь квест (Прописанный опыт там) прибавляется в шкалу опыта) Макс лвл 355 должен быть ( но что бы после 300 на мобах не реально было качаться) но base exp через квест давался) Как такое воплотить в реальность? Или же не запретить а например до 300 уровня рейты 2к как только апнул 300 этому персу рейты спадают до х1 ну что нибудь такое, может скрипт есть у кого или код какой нить на эту тему, Использую рАтену с этого форума ( ласт ревизию) 2.) Вылетел Варнинг, предупреждение3>..\src\map\skill.c(7224): warning C4013: clif_vend: нет определения; предполагается "extern" с возвратом типа "int" (..\src\map\skill.c) Вот файлики https://yadi.sk/d/kIm9LyNrqH8eY Изменено 17 марта, 2016 пользователем Fizik Ссылка на комментарий Поделиться на другие сайты Поделиться
Fizik Опубликовано 18 марта, 2016 Автор Жалоба Поделиться Опубликовано 18 марта, 2016 Ап тему, всё ещё не нашли решений Ссылка на комментарий Поделиться на другие сайты Поделиться
Functor Опубликовано 19 марта, 2016 Жалоба Поделиться Опубликовано 19 марта, 2016 В 17.03.2016в0:11 AM, Fizik сказал: 1.)Уважаемые знатоки SRC, Можете мне показать как запретить получение опыта с 300 уровня (с монстров) При этом когда сдаёшь квест (Прописанный опыт там) прибавляется в шкалу опыта) Макс лвл 355 должен быть ( но что бы после 300 на мобах не реально было качаться) но base exp через квест давался) Как такое воплотить в реальность? Открываем ../src/map/pc.c и в функции pc_gainexp меняем: // Give EXP for Base Level if (base_exp) { на: // Give EXP for Base Level if (base_exp && (sd->status.base_level < 300 || quest == true)) { В 17.03.2016в0:11 AM, Fizik сказал: 2.)Вылетел Варнинг, предупреждение3>..\src\map\skill.c(7224): warning C4013: clif_vend: нет определения; предполагается "extern" с возвратом типа "int" (..\src\map\skill.c Открываем ../src/map/clif.h и перед: #endif /* _CLIF_H_ */ добавляем: int clif_vend(struct map_session_data *sd, int skill_lv); 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
Fizik Опубликовано 23 марта, 2016 Автор Жалоба Поделиться Опубликовано 23 марта, 2016 Протестил сорц, Опыт с монстра пишет при убийстве 7% например но опыт персонажу он не передаёт, Следом создаётся такой вопрос Если я путём Квеста выдам опыт персонажу ( именно опыт) Он прибавится?) Ссылка на комментарий Поделиться на другие сайты Поделиться
Fizik Опубликовано 14 мая, 2016 Автор Жалоба Поделиться Опубликовано 14 мая, 2016 Обновил Свой эмулятор, теперь при компиляции пишет ошибку pc.c 6520 строка не обьявленный Идентификатор Вот кусок // Give EXP for Base Level 6520 if (base_exp && (sd->status.base_level < 300 || quest == true)) { 6521 if ((uint64)sd->status.base_exp + base_exp > UINT32_MAX) 6522 sd->status.base_exp = UINT32_MAX; 6523 else 6524 sd->status.base_exp += base_exp; 6525 if (!pc_checkbaselevelup(sd)) 6526 clif_updatestatus(sd,SP_BASEEXP); 6527 } Это тот кусок который отвечал за опыт после 300 лвла как я уже понял) Поэтому и обращаюсь за помощью, Что это с ним?) Ссылка на комментарий Поделиться на другие сайты Поделиться
Functor Опубликовано 14 мая, 2016 Жалоба Поделиться Опубликовано 14 мая, 2016 меняем: if (base_exp && (sd->status.base_level < 300 || quest == true)) { на: if (base_exp && (sd->status.base_level < 300 || (exp_flag & 1))) { 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения