Ну поставили вы его "на место", а проблему так и не решили.
Последний раз редактировалось MR_BEN; 15.10.2014 в 13:06.
Целесообразно ли будет весь мод разбить на модули, как проект GTO, только с использованием перехватов описанных в этой теме? В итоге получится набор систем в отдельных инклудах и один *.pwn файл где эти инклуды собираются:
Код:#include "a_samp" #include "lib/a_mysql" #include "lib/dc_cmd" #include "lib/sscanf2" #include "lib/foreach" #include "lib/showformatteddialog" #include "lib/streamer" // Мод: #include "config.inc" #include "db_connect.inc" #include "reg_log.inc" #include "ac_hc.inc" #include "test.inc" #include "maps.inc" #include "vehicle.inc" main(){}
Unreal (04.11.2014)
Разница между кодом в моде и перехватом лишь в том, что в перехватах код находится в отдельном файле. Но на стадии препроцессинга этот код всё равно будет помещён в .amx файл.
В общем, если тебе будет удобно хранить какой-то код в отдельном файле - целесообразно. На производительность перехваты никак не влияют
Связаться со мной в VK можно через личные сообщения этой группы
Заказы не принимаю
Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
Великих идей полно, на них нет спроса.
Воплощение идеи в законченную игру требует долгой работы,
таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
Предложить идею просто, воплотить – вот в чём проблема
Steve Pavlina
Avertus (25.10.2014)
Индивидуально в ЛС по скриптингу не помогаю. Задавайте все свои вопросы здесь (click).
Стол заказов:
Мои работы:
Avertus (25.10.2014)
if(_:ac_hp__health[playerid] != _:health) Я не совсем понял для чего это _: можно поподробнее
Последний раз редактировалось codeo; 28.10.2014 в 12:33.
Это указан тип данных. В данном случае он целочисленный. Это как "Float:health" и т.п. Для чего это делается? Это объяснено в самом коде:
PHP код:
// если кол-во HP изменилось с момента предыдущего обновления
// сравниваемые значения трактуются, как целочисленные, чтобы избежать лишнего вызова floatcmp
// (внимание! такой оптимизационный приём можно применять только при сравнении
// с помощью знаков "==" и "!=", но ни в коем случае не с ">", "<", ">=" или "<=")
Последний раз редактировалось DeimoS; 28.10.2014 в 13:49.
Связаться со мной в VK можно через личные сообщения этой группы
Заказы не принимаю
Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
Великих идей полно, на них нет спроса.
Воплощение идеи в законченную игру требует долгой работы,
таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
Предложить идею просто, воплотить – вот в чём проблема
Steve Pavlina
codeo (28.10.2014)
Я хочу использовать в своем моде замену
вот так будет правильно?PHP код:
stock SetPlayerPos_protect(playerid, Float:x,Float:y,Float:z)
{
Player_Off_Protect{playerid} = 3;
Player_Pos[0][playerid] = x;
Player_Pos[1][playerid] = y;
Player_Pos[2][playerid] = z;
return SetPlayerPos(playerid, x,y,z);
}
#if defined _ALS_SetPlayerPos_protect
#undef SetPlayerPos
#else
#define _ALS_SetPlayerPos_protect
#endif
#define SetPlayerPos SetPlayerPos_protect
У тебя тут небольшая ошибочка.
А правильно было бы, если? (нашел при сравнении dc_anti_hp_hack.inc)Код:stock ac_hp__GetPlayerHealth(playerid, Float:&health) { health = ac_hp__health[playerid]; return 1; } #if defined _ALS_GetPlayerHealth #undef GetPlayerHealth #else #define _ALS_GetPlayerHealth #endif #define GetPlayerHealth ac_hp__GetPlayerHealth
А то при первом варианте ошибочка вылазит, при втором ее нету.Код:stock ac_hp__GetPlayerHealth(playerid, &Float:health) { health = ac_hp__health[playerid]; return 1; } #if defined _ALS_GetPlayerHealth #undef GetPlayerHealth #else #define _ALS_GetPlayerHealth #endif #define GetPlayerHealth ac_hp__GetPlayerHealth
Последний раз редактировалось Desulaid; 01.05.2015 в 22:39.
Daniel_Cortez (01.05.2015)
Индивидуально в ЛС по скриптингу не помогаю. Задавайте все свои вопросы здесь (click).
Стол заказов:
Мои работы:
Эту тему просматривают: 3 (пользователей: 0 , гостей: 3)