błąd zbierania skrzyń

Wszystko o modach, patchach i błędach w OW oraz ogólnym programowaniu.
Avatar de Usuario
Lavigo
Soldier level 4
Soldier level 4
Сообщения: 86
Зарегистрирован: Lun Oct 04, 2010 3:39 pm

błąd zbierania skrzyń

Mensaje 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:

Código: Seleccionar todo

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:

Código: Seleccionar todo

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...
Avatar de Usuario
Nitek
Community Veteran
Community Veteran
Сообщения: 997
Зарегистрирован: Lun Abr 13, 2009 4:13 pm
Ubicación: Białystok
Контактная информация:

Re: błąd zbierania skrzyń

Mensaje Nitek »

Código: Seleccionar todo

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.
Avatar de Usuario
Lavigo
Soldier level 4
Soldier level 4
Сообщения: 86
Зарегистрирован: Lun Oct 04, 2010 3:39 pm

Re: błąd zbierania skrzyń

Mensaje Lavigo »

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

Código: Seleccionar todo

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ą :)
Avatar de Usuario
Serpent
Soldier level 10
Soldier level 10
Estonia
Сообщения: 4169
Зарегистрирован: Mar Jul 07, 2009 9:13 pm
Ubicación: Polska - EuroStan ZSRE
Контактная информация:

Re: błąd zbierania skrzyń

Mensaje Serpent »

Código: Seleccionar todo

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
Avatar de Usuario
Lavigo
Soldier level 4
Soldier level 4
Сообщения: 86
Зарегистрирован: Lun Oct 04, 2010 3:39 pm

Re: błąd zbierania skrzyń

Mensaje Lavigo »

ok
dzieki :)
Ответить