Posts: 1,659
Threads: 17
Joined: Sep 2008
Quote:
Originally Posted by thebatya
Недавно начал работать с гит
Подскажите кто сталкивался с проблемой кодировки
У меня все файлы проекта в кодировке cp1251 и после пуша проекта на гитхаб все в кракозябрах
Локальный конфиг
PHP Code:
[core]
repositoryformatversion = 0
filemode = false
bare = false
logallrefupdates = true
symlinks = false
ignorecase = true
quotepath = false
[i18n]
commitencoding = cp1251
logoutputencoding = cp1251
|
Это нормально, в репозитории же всё хорошо, просто GitHub (именно сайт) не поддерживает кодировку, отличную от UTF-8. Можешь попробовать GitLab, там вроде как всё нормально.
Posts: 1,659
Threads: 17
Joined: Sep 2008
Quote:
Originally Posted by thebatya
Мне именно гитхаб нужен, потому что проект там в приватном репозитории расположен.
А можно как то скомпилировать utf-8 нормально?
|
Не получится - Pawn то поддерживает UTF-8, но SA-MP нет. Но я не понимаю - зачем тебе вообще смотреть код через сайт GitHub? Тем более в приватном репозитории. Да и приватные репозитории есть как на GitLab, так и на Bitbucket.
Posts: 1,659
Threads: 17
Joined: Sep 2008
Quote:
Originally Posted by OneHitWonder
Но у меня есть вот такой код в OnPlayerUpdate
Code:
if(GetPlayerPos(playerid, achpos[playerid][0], achpos[playerid][1], achpos[playerid][2]))
{
if(!IsAFlyingVeh(GetPlayerVehicleID(playerid)) && !IsABoatVeh(GetPlayerVehicleID(playerid)))
{
if(!IsPlayerInRangeOfPoint(playerid, 40.0, achpos[playerid][0], achpos[playerid][1], achpos[playerid][2]))
{
Kick(playerid);
}
}
}
|
Я уверен, что есть и что-то хуже.
Posts: 128
Threads: 8
Joined: Aug 2014
Reputation:
0
Буду искать, смотреть. А с этим как? Не слишком страшно для OnPlayerUpdate?
Posts: 1,659
Threads: 17
Joined: Sep 2008
Quote:
Originally Posted by OneHitWonder
Буду искать, смотреть. А с этим как? Не слишком страшно для OnPlayerUpdate?
|
Не знаю, но можно и улучшить.
Posts: 1,495
Threads: 20
Joined: Sep 2010
Reputation:
0
Скинь ради интереса функцию IsAFlyingVeh(GetPlayerVehicleID(playerid))
Posts: 128
Threads: 8
Joined: Aug 2014
Reputation:
0
IsAFlyingVeh(carid)
{
switch(GetVehicleModel(carid))
{
case 417, 425, 447, 460, 469, 476, 487, 488, 497, 511..513, 519, 520, 548, 553, 563, 577, 592, 593: return true;
}
return false;
}
Posts: 1,659
Threads: 17
Joined: Sep 2008
Quote:
Originally Posted by OstGot
Не API переписывать стандартный надо, а алгоритмы улучшать.
Для начала можно попробовать переделать проверку на тип т/с, заведя массив для всех моделей авто и указав тип в нужных ячейках для каждой модели. Далее можно будет просто обращаться к нужному индексу в массиве (а именно иду модели) и сразу получать тип (в т.ч. и узнавать, лодка это или что-то иное). Прирост скорости, возможно, будет невысоким, но попробовать стоит, если это так уж важно.
Также "GetPlayerVehicleID(playerid)" можно узнавать единожды, записав предварительно её возвращаемое значение в переменную
|
Но лучше не изобретать велосипед, а использовать готовые решения. У меня есть очень простая и небольшая библиотека:
https://github.com/Open-GTO/zvehinfo
Ещё GetVehicleModel можно вызвать единожды.
А если серьёзно, то этот код вообще можно удалить, он всё-равно никого никогда не кикнет.
Posts: 1,659
Threads: 17
Joined: Sep 2008
Quote:
Originally Posted by OneHitWonder
Как это? Еще как кикает. При телепорте отлавливает как нечего делать.
За библиотеку спасибо, воспользуюсь.
|
Значит что-то другое кикает, потому что GetPlayerPos и IsPlayerInRangeOfPoint используют одни и те же данные о положении игрока.
Posts: 128
Threads: 8
Joined: Aug 2014
Reputation:
0
Кстати да, только сейчас это понял) Использовал еще сегодня пвары и переделал на переменные, а это совсем не учел, доделал)