Polski Česky English Français Русский Español
Home Site Original War Support Community Forums Facebook YouTube Discord
¿Tu primera vez por aquí? Lee esto!
» Índice > Modding Archive > SAIL - Zakładnik - zmiana celów kolejnych misji

SAIL - Zakładnik - zmiana celów kolejnych misji

Moonstrider pisze:Imo najlepiej zrobić to za pomocą funkcji. I tak w jednej misji:

Kod:

export function carsaving(idi,nazwa)
var i;
Begin
i=[GetChassis(idi), GetEngine(idi), GetControl(idi), GetWeapon(idi)];
SaveVariable(i,nazwa);
end;

// przy zapisywaniu:

carsaving(pojazd1,'zapispojazdu1');

a w następnej misji:

Kod:

export pojazd1, pojazd2, pojazd3, pojazd4, pojazd5;

export function carloading(idi,nazwa)
var i;
Begin
i=LoadVariable(nazwa,[]);
// tu dajesz uc_nation=
// oraz uc_side=
vc_chassis=i[1];
vc_engine=i[2];
vc_control=i[3];
vc_weapon=i[4];
idi=CreateVehicle;
// tutaj jeszcze jakiś PlaceUnit
end;

// przy loadowaniu

carloading(pojazd1,'zapispojazdu1');

Gothuk pisze:hmm to może ja coś napisze..

Kod:

pojazd1=FilterAllUnits([[f_side,1],[f_chassis,us_morphling],[f_engine,engine_siberite]]);

to tak, wiecie że filotrowanie zwraca tablice? co nie?
jak jest jeden pojazd to zwraca tablicę jednoelementową.
w takim razie funkcja carsaving nie zadziała, bo :

[GetChassis(idi), GetEngine(idi), GetControl(idi), GetWeapon(idi)]

nie można stosować do tablicy elemetów.
jesli już chcecie używać tej funkcji do tablic to zastosujcie:

Kod:

var i, j;
begin
  for j in idi do
     i=[GetChassis(j), GetEngine(j), GetControl(j), GetWeapon(j)]; 
     SaveVariable(i,nazwa);
  end;
end;

Moonstrider pisze:Hmm to może po prostu nazwać pierwszy element tablicy?

Kod:

pojazdy=FilterAllUnits([[f_side,1],[f_chassis,us_morphling],[f_engine,engine_siberite]]);
pojazd1=pojazdy[1];

Co Wy na to?

Author: Moonstrider & Gothuk
Topic: https://forum.original-war.net/viewtopic.php?t=1294&postdays=0&postorder=asc&start=30

» Índice > Modding Archive > SAIL - Zakładnik - zmiana celów kolejnych misji