Page 2 of 2

Re: O eventach i o on VehicleConstructed oraz instrukcji wai

Posted: Tue Jan 24, 2012 10:56 pm
by Nitek

Code: Select all

on VehicleConstructed(vehi,fact) do
var dri;
begin
  vehi=IsDrivenBy(dri);
  if GetSide(fact)=5 then
  begin
    ComMoveToArea(dri,ArV);
    AddComExitVehicle(dri);
    AddComEnterUnit(dri,fact);
    GetV;// nieistotna teraz funkcja
    if rand(0,1) then ComConstruct(fact,ar_half_tracked,engine_combustion,control_manual,ar_gun)
    else ComConstruct(fact,ar_half_tracked,engine_combustion,control_manual,ar_flame_thrower);
  end;
Taki kod z "IsDrivenBy" powinien również działać.

Re: O eventach i o on VehicleConstructed oraz instrukcji wai

Posted: Wed Jan 25, 2012 7:06 am
by JRF
@up co z tego, że powinien, jak nie działa : P
Poza tym nie widzę sensu walić VEHI=IsDrivenBy(DRI)...

Z tego, co pamiętam to ze starym kodem podczas testowania dostawałem "polecenie niemożliwe" czy coś w tym guście...

Nie łapię, co za różnica czy walnę lokalną czy globalną zmienną w tym przykładzie, a jednak...

Niezbadane są ścieżki saila : D

---
ty,
JRF

Re: O eventach i o on VehicleConstructed oraz instrukcji wai

Posted: Wed Jan 25, 2012 8:28 am
by Radzio
SAIL nie implementuje zmiennych lokalnych dla niektórych z bloków. Np. nie robi tego dla bloku starting.

Anyway, tam powinno być:

Code: Select all

dri:= IsDrivenBy(vehi);
To działa:

Code: Select all

on VehicleConstructed(veh, fact) do
var dri;
begin
  dri:= IsDrivenBy(veh);
  if GetSide(fact) = 5 then
  begin
    ComMoveToArea(dri, ArV);
    AddComExitVehicle(dri);
    AddComEnterUnit(dri, fact);
    GetV;
    if Rand(0, 1) then
      ComConstruct(fact, ar_half_tracked, engine_combustion, control_manual, ar_gun)
    else
      ComConstruct(fact, ar_half_tracked, engine_combustion, control_manual, ar_flame_thrower);
  end;
end;

Re: O eventach i o on VehicleConstructed oraz instrukcji wai

Posted: Wed Jan 25, 2012 1:46 pm
by Nitek
Radzio wrote:SAIL nie implementuje zmiennych lokalnych dla niektórych z bloków. Np. nie robi tego dla bloku starting.

Anyway, tam powinno być:

Code: Select all

dri:= IsDrivenBy(vehi);
Trochę to głupie, bo "is driven by" oznacza "jest prowadzony przez", więc na logikę to wygląda, jakby kierowca był prowadzony przez pojazd :disco: Niestety SAIL nigdy nie był normalny :D

Re: O eventach i o on VehicleConstructed oraz instrukcji wai

Posted: Wed Jan 25, 2012 1:55 pm
by Radzio
Właśnie to jest ok, bo funkcja zwraca wartość, odpowiadając na pytanie: "Whom vehicle is driven by?".