SA-MP Forums Archive
как понять кто убил и того кого убили? - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Русский/Russian (https://sampforum.blast.hk/forumdisplay.php?fid=32)
+---- Thread: как понять кто убил и того кого убили? (/showthread.php?tid=158640)



как понять кто убил и того кого убили? - fooxid - 10.07.2010

паца кто в скриптинге шарит вот решил кое что сделать и столкнулся с вопросом. Как в павно определить игрока который убил, и того кого убили?

Ну смотрите например вася убил петю. Как убил неважно, всеми возможными способами.
И как в павно будет выглядеть вася который убил?
И как будет выглядеть петя которого убили?

Ну привязывать к васе и пете не нада, а вообще любойигрок который убил, и игрок которого убили.



Ну я понял что параметр (killerid) это с убийством связано но как определить игрока который убил, и которого убили? Как правильно записать этих двух услових, тот кто убил, и тот кого убили.

Например условие для того кто убил выглядет вот так if (playerid, killerid)
А условия для того кого убили выглядет так if (killerid)

Ну это я как для примера.А вы плиз правильно напишите.
фух.
Надеюсь доходчиво обьяснил.


Re: как понять кто убил и того кого убили? - MX_Master - 10.07.2010

PHP Code:
OnPlayerDeathplayeridkilleridreason
killerid - ID игрока-убийцы
playerid - ID игрока-трупа

если игрок умер сам, то killerid будет равен INVALID_PLAYER_ID (смотри значение в a_samp.inc)


Re: как понять кто убил и того кого убили? - fooxid - 10.07.2010

ясненько но токо не совсем как то.
набросайте побыстрому плиз код например если один игрок убил второго, то убийце писалось "вы убили", а игроку которого убили писалось "вас убили".


Re: как понять кто убил и того кого убили? - [TDM]Relax - 10.07.2010

в OnPlayerDeath( playerid, killerid, reason)
добавь
new dstring[128], name[MAX_PLAYER_NAME], killer[MAX_PLAYER_NAME];
if (killerid != INVALID_PLAYER_ID)
{
GetPlayerName(killerid, killer, sizeof(killer));
GetPlayerName(playerid, name, sizeof(name));
format(dstring,sizeof(dstring),".:: Вы убили %s ::.", name);
SendClientMessage(killerid, 0xAA3333AA, dstring);
format(dstring,sizeof(dstring),".:: Вас убил %s ::.", killer);
SendClientMessage(name, 0xAA3333AA, dstring);
}


Re: как понять кто убил и того кого убили? - fooxid - 11.07.2010

ничего не понял.
Ну спасибо ребята что пытались рассказать.


Re: как понять кто убил и того кого убили? - dimonml - 11.07.2010

При использовании метода OnPlayerDeath нужно учитывать: информацию о том кто убил игрока, шлет клиент убитого (что дает возможность нечестной игры: фейк килов и прочего) и алгоритм определения срабатывает не всегда точно. Фактически он следующий: кто последний перед гибелью попал в игрока (и из какого оружия), тот и убил. Так что достоверно определить кто кого убил в сампе нельзя