Значит в общем так. После мучений придумал красивую конструкцию:
On Suicide;Weapon Gameplay/Vehicles/F35/F35B,Gameplay/Vehicles/A-10_THUNDERBOLT/A10_THUNDERBOLT,Gameplay/Vehicles/AH1Z/AH1Z,Gameplay/Vehicles/AH6/AH6_Littlebird,Gameplay/Vehicles/M1A2/M1Abrams,Gameplay/Vehicles/LAV25/LAV25,Gameplay/Vehicles/LAV25/LAV_AD,SoldierCollision
Set %server_ram_victim[%ptk%]% %p%; Set %server_ram_time[%ptk%]% %hms%; Set %server_ram_vehicle[%ptk%]% %w%
If %server_ram_time[1]% == %server_ram_time[2]%; AdminSay POSSIBLE RAM: vict1:%server_ram_victim[1]% time1:%server_ram_time[1]% veh1:%server_ram_vehicle[1]% vict2:%server_ram_victim[2]% time2:%server_ram_time[2]% veh2:%server_ram_vehicle[2]%;Log POSSIBLE RAM: vict1:%server_ram_victim[1]% time1:%server_ram_time[1]% veh1:%server_ram_vehicle[1]% vict2:%server_ram_victim[2]% time2:%server_ram_time[2]% veh2:%server_ram_vehicle[2]%
AdminSay сработает только если время самоубийств совпадает и игроки из разных комманд. В любом случае это правило будет работать только как предупреждение админам в онлайне. Автоматически наказывать не стоит.
Теперь возможные кейсы:
1. При таране оба погибают от техники, используемой для тарана.
2. При таране оба погибают от техники, которую таранят.
3. Каждый из погибших погибает от техники противника.
4. Один погибает от Soldier collision.
1 и 2 пункты. Тут можно ввести переменную для каждого игрока, которая обнуляется на каждом спауне и при каждом убийстве устанавливается в оружие убийства. Если при срабатывании правила оружие совпадает или не совпадает с ранее использованным, то таранщик известен.
3. Если техника у них разная, то тот, кто погиб от самолета - жертва тарана. Таранщик известен.
4. Тут все просто, кто умер от soldier collision тот и жертва.
Теперь вопрос: Как это обыграть красиво правилами. У меня никак в мозге не уложится иерархия условных операторов и как ветвить алгоритм