Author: SerpentSerpent napísal:Napisałem dwie funkcje związane ze zdobywaniem informacji o kierowcy w SAILu.
#1 IsDriver(unit) - sprawdza czy jednostka jest kierowcą. Zwraca ident prowadzonego pojazdu lub 0 w przypadku jego braku.#2 GetDriver(veh) - zwraca ident kierowcy danego pojazdu lub 0 w przypadku braku kierowcy.Kód: Vybrať všetko
Export Function IsDriver(unit); begin if unit in FilterAllUnits([f_driving]) then result := IsInUnit(unit) else result := false; End;
Notka: GetDriver może nie działać po podaniu identu pojazdu który został postawiony ręcznie na mapie. Wówczas należy użyć filtru zamiast identu.Kód: Vybrať všetko
Export Function GetDriver(veh); var i, filter; begin if not GetControl(veh) = control_manual then result := false else if veh in FilterAllUnits([f_empty]) then result := false else begin filter := FilterAllUnits([[f_side, GetSide(veh)], [f_driving]]); if not filter then result := false else for i = 1 to filter do if IsDriver(filter[i]) = veh then begin result := filter[i]; break; end; end; End;
Topic: https://forum.original-war.net/viewtopi ... =42&t=4818