błąd zbierania skrzyń

Wszystko o modach, patchach i błędach w OW oraz ogólnym programowaniu.
Používateľov profilový obrázok
Lavigo
Soldier level 4
Soldier level 4
Príspevky: 86
Dátum registrácie: Po Okt 04, 2010 3:39 pm

błąd zbierania skrzyń

Príspevok od používateľa 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: Vybrať všetko

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: Vybrať všetko

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...
Používateľov profilový obrázok
Nitek
Community Veteran
Community Veteran
Príspevky: 997
Dátum registrácie: Po Apr 13, 2009 4:13 pm
Bydlisko: Białystok
Kontaktovať používateľa:

Re: błąd zbierania skrzyń

Príspevok od používateľa Nitek »

Kód: Vybrať všetko

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.
Používateľov profilový obrázok
Lavigo
Soldier level 4
Soldier level 4
Príspevky: 86
Dátum registrácie: Po Okt 04, 2010 3:39 pm

Re: błąd zbierania skrzyń

Príspevok od používateľa Lavigo »

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

Kód: Vybrať všetko

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ą :)
Používateľov profilový obrázok
Serpent
Soldier level 10
Soldier level 10
Estonia
Príspevky: 4169
Dátum registrácie: Ut Júl 07, 2009 9:13 pm
Bydlisko: Polska - EuroStan ZSRE
Kontaktovať používateľa:

Re: błąd zbierania skrzyń

Príspevok od používateľa Serpent »

Kód: Vybrať všetko

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
Používateľov profilový obrázok
Lavigo
Soldier level 4
Soldier level 4
Príspevky: 86
Dátum registrácie: Po Okt 04, 2010 3:39 pm

Re: błąd zbierania skrzyń

Príspevok od používateľa Lavigo »

ok
dzieki :)
Napísať odpoveď