błąd zbierania skrzyń

Wszystko o modach, patchach i błędach w OW oraz ogólnym programowaniu.
Odpovědět
Uživatelský avatar
Lavigo
Soldier level 4
Soldier level 4
Příspěvky: 86
Registrován: pon říj 04, 2010 3:39 pm

błąd zbierania skrzyń

Příspěvek od Lavigo »

Witam
Dajmy na to ze mamy areę w której pojawiają sie skrzynki, niech to będzie area_skrzyn
i transportowiec, który ma zbierać skrzynie z tej arei, niech ma ident komora

Mamy więc taki kod:

Kód: Vybrat vše

every 0$5 trigger GetListOfCratesInArea(area_skrzyn) do
var clear_crates;
begin
  enable;
  crate_list:=GetListOfCratesInArea(area_skrzyn);

      if IsLive(komora) then
        ComCollect(komora,crate_list[1],crate_list[2])
      else
        ComGet(komora,crate_list[1],crate_list[2]);
        clear_crates:=false;
      repeat
        wait(0$1);
        until (not IsBusy(komora)) OR clear_crates {OR NOT IsLive(komora)};
end;
transportowiec o idencie komora jest umieszczony na mapie...

Sail znajduje błąd w linijce:

Kód: Vybrat vše

crate_list:=GetListOfCratesInArea(area_skrzyn);
opcja crate_list jest mu jakby źle napisana, szukałem na forum, ale wszedzie znalazłem taki kod z taką opcją crate_list

w informacji błędu w tej linijce pisze takie cos: undefined identifier 'crate_list'!

Dlaczego mam w tym miejscu błąd?
Prosze o pomoc...
Uživatelský avatar
Nitek
Community Veteran
Community Veteran
Příspěvky: 997
Registrován: pon dub 13, 2009 4:13 pm
Bydliště: Białystok
Kontaktovat uživatele:

Re: błąd zbierania skrzyń

Příspěvek od Nitek »

Kód: Vybrat vše

Every 0$5 trigger GetListOfCratesInArea(Skrzynki2) do
Var crate_list;
 Begin

  if IsOk(Baza) and IsOk(Ar_Eng) and not (HasTask(Ar_Eng)) then
   Begin
    If IsInUnit(Ar_Eng) then ComExitBuilding(Ar_Eng);
    Wait(0$1);
    crate_list=GetListOfCratesInArea(Skrzynki2);
    ComCollect(Ar_Eng,crate_list[1],crate_list[2]);

   Repeat
    Wait(0$1)
    Until
    IsIdle(Ar_Eng);

   ComEnterUnit(Ar_Eng,Baza);

   End
    else Wait(0$15);

   Enable;
End;
Ja mam coś takiego u siebie i działa. Jest jedynie taka drobna różnica, że u mnie to inżynier zbiera skrzynki. Z drobnymi zmianami możesz to dostosować do swojej sytuacji. Możesz również zobaczyć jak to jest zrobione np. w 14. misji AM.
Uživatelský avatar
Lavigo
Soldier level 4
Soldier level 4
Příspěvky: 86
Registrován: pon říj 04, 2010 3:39 pm

Re: błąd zbierania skrzyń

Příspěvek od Lavigo »

dzieki :)
Przerobiłem ten kod w taki sposób:

Kód: Vybrat vše

Every 0$5 trigger GetListOfCratesInArea(Skrzynki2) do
Var crate_list;
 Begin

  if IsOk(sklad) and IsOk(komora) and not (HasTask(komora)) then
   Begin
    If IsInUnit(komora) then ComExitBuilding(komora);
    Wait(0$1);
    crate_list=GetListOfCratesInArea(Skrzynki2);
    ComCollect(komora,crate_list[1],crate_list[2]);

   Repeat
    Wait(0$1)
    Until
    IsIdle(komora);

   End
    else Wait(0$15);

   Enable;
End;
myślę że to jest źle przerobione, bo zamieniłem tylko kolesia co ma chodzić na komore, jak cos usunąłem z tego kodu to było źle i znajdowało błędy, a w taki sposób działa :)

dzieki :)
a co do 14 misji am to oczywiscie patrzyłem ten kod, jest on podobny do tego który napisałem w pierwszym poście;p jego kombinacje też mi nie działały... :/

P.S jeśli ktoś ma kod podobny do tego który jest w pierwszym poscie ALE działa to moze wkleić, bo ten od Nitka jest moim zdaniem źle przeze mnie przerobiony, ewentualnie możecie mi pomóc go przerobić pod pojazd, żeby nie było takich rażących błędów jakie w moim przypadku w nim występują :)
Uživatelský avatar
Serpent
Soldier level 10
Soldier level 10
Estonia
Příspěvky: 4169
Registrován: úte črc 07, 2009 9:13 pm
Bydliště: Polska - EuroStan ZSRE
Kontaktovat uživatele:

Re: błąd zbierania skrzyń

Příspěvek od Serpent »

Kód: Vybrat vše

Every 0$02 trigger komora do
var skr, p;
begin

     enable;

     skr = GetListOfCratesInArea(Area_Skrzyn);

     p = 1;

     while p < skr do
     begin
     AddComCollect(komora, skr[p], skr[p+1]);
     p = p + 2;
     end;

end;
Epickie teksty:
Marek1906: jak zrobic aby sail był zielony?
Kvantovy: Wszystko normalne, wszystko w koło było dziwne
Kvantovy:: To jest fajne, że to nie jest takie głupie
Kvantovy:: remove sos from kanapeczka
Kvantovy:: zdarzają się rzezy które sie filozofom nie śniły
Cenwen: problemem jest gejostwo
"Taki z niego fizyk jak ze mnie baletnica" - Profesor Scholtze o Kvantovym.
JAKBYŁ BYM CZECHEM TO BYM ROZŁOŻYŁ NAMIOT ~Kvanciak
Uživatelský avatar
Lavigo
Soldier level 4
Soldier level 4
Příspěvky: 86
Registrován: pon říj 04, 2010 3:39 pm

Re: błąd zbierania skrzyń

Příspěvek od Lavigo »

ok
dzieki :)
Odpovědět