Всем привет!
Пытаюсь сделать такую фишку для очередной вундервафли: если во время стрельбы рядом с игроком находится тимейт - темп стрельбы увеличивается в 2 раза. Написал такую ф-ю для нахождения тимейтов поблизости, но когда она вызывается при стрельбе - сервер просто крашится. Началось такое после добавления проверки на длину строки имени команды (strlen), ибо без него условие "тимейт рядом" выполнялось всегда (даже когда ты один на сервере, даже несмотря на все проверки). Код функции прилагаю ниже
Код:
public Find(pId)
{
new team1[32]
new team2[32 ]
new result = 0;
new id = 1;
while (id < 33){
if(is_user_connected(pId)&& is_user_connected(id)){
if (is_user_alive(pId)&& is_user_alive(id)){
//DISTANCE - максимально допустимо расстояние между игроками
if (DISTANCE >=get_entity_distance(id, pId)){
get_user_team(id,team1)
get_user_team(pId,team2)
if(equal(team1,team2,3) && strlen(team1)>0) {
result = 1;
}
else {
result = 0
}
}
}
}
if(result==1) {
break;
}
}
return result;
}
Получается следующее: либо массивы всегда пусты, либо при добавлении проверки (как тут strlen) сервер падает. Может тимейтов можно искать как-то поэффективней?