Co to sie.. dzieje?

Wszelkie pytania na temat SAIL'a i modowania OW.
Post Reply
MasterKiller
Soldier level 6
Soldier level 6
Posts: 343
Joined: Tue Aug 09, 2011 5:51 pm

Co to sie.. dzieje?

Post by MasterKiller »

Mam sobie komorke, ona sobie jezdzi w arei i zbiera skrzynki + ucieka i naprawia sie gry zostanie zaatakowana. Jak to wyglada:

Code: Select all

every 0$1 trigger komora_enabled=true and komora_DMG=false do
var skrzynie,x;
      begin
           skrzynie=GetListOfCratesInArea(skrzynie_spawn);

           x=1;

           if IsIdle(komora) and GetCargo(komora,mat_multi)<100 then
              begin
                   while x < skrzynie do
                         begin
                              AddComCollect(komora, skrzynie[x], skrzynie[x+1]);
                              x=x+2;
                         end;
              end;

           if GetCargo(komora,mat_multi)>=100 or (GetCargo(komora,mat_multi)>0 and skrzynie=0) then
              begin
                   ComMoveXY(komora,36,41);

                   repeat
                         wait(0$1);
                   until GetDistUnitXY(komora,36,41)<=1;

                   ComTurnXY(komora,43,41);
                   SetCargo(komora,mat_cans,0);
                   wait(1);
                   ComMoveXY(komora,50,47);
              end;
              
           enable;
      end;

every 0$2 do
begin
     if GetLives(komora)<1000 then
        begin
             komora_DMG=true;

             repeat
                   wait(0$1);
                   ComMoveXY(komora,50,47);
             until GetDistUnitXY(komora,50,47)<=2;

             ComExitVehicle(kiero_komory);
             wait(1);
             ComRepairVehicle(kiero_komory,komora);

             repeat
                   wait(0$1);
             until GetLives(komora)=1000;

             ComEnterUnit(kiero_komory,komora);
        end else
        begin
             Say(kiero_komory,'KONW9');
             komora_DMG=false;
        end;

     enable;
end;
no i wszystko dziala dobrze, o ile nie zaatakujemy komory gdy ma 100 skrzynek. wtedy ucieka, naprawia sie, kierowca wsiada i tyle. nawet dodalem Say'a, ktory informuje czy komora_DMG ma false czy true, no i normalnie sie zmienia, ale komora stoi w miejscu, zamiast podjechac do skladu i zniknac surowce(tam wsadzilem jakis popierdzielony kod, bo ofc ComGive nie dziala).
Wszyscy jesteśmy żołnierzami: WYDANE
https://original-war.net/files.php?id=174
User avatar
Serpent
Soldier level 10
Soldier level 10
Estonia
Posts: 4175
Joined: Tue Jul 07, 2009 9:13 pm
Location: Polska - EuroStan ZSRE
Contact:

Re: Co to sie.. dzieje?

Post by Serpent »

Zmień przy komendach poruszania ident z komora na ident kierowcy pojazdu.
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
MasterKiller
Soldier level 6
Soldier level 6
Posts: 343
Joined: Tue Aug 09, 2011 5:51 pm

Re: Co to sie.. dzieje?

Post by MasterKiller »

A to nie to samo?
Wszyscy jesteśmy żołnierzami: WYDANE
https://original-war.net/files.php?id=174
User avatar
Serpent
Soldier level 10
Soldier level 10
Estonia
Posts: 4175
Joined: Tue Jul 07, 2009 9:13 pm
Location: Polska - EuroStan ZSRE
Contact:

Re: Co to sie.. dzieje?

Post by Serpent »

Gra jest dziwnie zrobiona. Przy wsiadaniu gra widocznie nadpisuje ident i traktuje komorę i kierowcę jako samo kierowcę.

Dlatego odradzam nadawania pojazdom identów. Od tego są filtry i tablice.
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
MasterKiller
Soldier level 6
Soldier level 6
Posts: 343
Joined: Tue Aug 09, 2011 5:51 pm

Re: Co to sie.. dzieje?

Post by MasterKiller »

No tag ale jak potem obsluzyc eventy przy przejeciu tej komory, wsiadanie do niej itp.
Wszyscy jesteśmy żołnierzami: WYDANE
https://original-war.net/files.php?id=174
User avatar
Serpent
Soldier level 10
Soldier level 10
Estonia
Posts: 4175
Joined: Tue Jul 07, 2009 9:13 pm
Location: Polska - EuroStan ZSRE
Contact:

Re: Co to sie.. dzieje?

Post by Serpent »

Niezbyt rozumiem pytanie.

Przykładowo, odnośnik do komory wygląda tak:
veh := FilterAllUnits([[f_side, 1], [f_weapon, us_cargo_bay]])[1];
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
MasterKiller
Soldier level 6
Soldier level 6
Posts: 343
Joined: Tue Aug 09, 2011 5:51 pm

Re: Co to sie.. dzieje?

Post by MasterKiller »

no ale tak za kazdym razem tworzyc zamiast po prostu nadac komorze ident i pisac ComEnterUnit(kiero,komora); itp.
Wszyscy jesteśmy żołnierzami: WYDANE
https://original-war.net/files.php?id=174
User avatar
Serpent
Soldier level 10
Soldier level 10
Estonia
Posts: 4175
Joined: Tue Jul 07, 2009 9:13 pm
Location: Polska - EuroStan ZSRE
Contact:

Re: Co to sie.. dzieje?

Post by Serpent »

Eh, napisz na gg to ci wytłumaczę ;p
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
MasterKiller
Soldier level 6
Soldier level 6
Posts: 343
Joined: Tue Aug 09, 2011 5:51 pm

Re: Co to sie.. dzieje?

Post by MasterKiller »

nie no czaje, tylko wkurza mnie ze trace czas na naprawianie i glowienie sie nad takimi "bledami"
Wszyscy jesteśmy żołnierzami: WYDANE
https://original-war.net/files.php?id=174
MasterKiller
Soldier level 6
Soldier level 6
Posts: 343
Joined: Tue Aug 09, 2011 5:51 pm

Re: Co to sie.. dzieje?

Post by MasterKiller »

no i fajnie, bo teraz to juz wgl, komora bierze pierwsza skrzynke, dojezdza do innego skladu, ktory jest blizej, do ktorego wczesniej do podjezdzala i tyle. ignoruje wszystkie nastepne skrzynki. jak ja zaatakujemy, jedzie do bazy, naprawia sie i znow ignoruje wszystko

Code: Select all

every 0$1 trigger komora_enabled=true and komora_DMG=false do
var skrzynie,x;
      begin
           skrzynie=GetListOfCratesInArea(skrzynie_spawn);

           x=1;

           if IsIdle(komora) and GetCargo(komora,mat_multi)<100 then
              begin
                   while x < skrzynie do
                         begin
                              AddComCollect(komora, skrzynie[x], skrzynie[x+1]);
                              x=x+2;
                         end;
              end;

           if GetCargo(komora,mat_multi)>=100 or (GetCargo(komora,mat_multi)>0 and skrzynie=0) then
              begin
                   ComMoveXY(kiero_komory,36,41);

                   repeat
                         wait(0$1);
                   until GetDistUnitXY(komora,36,41)<=1;

                   ComTurnXY(kiero_komory,43,41);
                   wait(0$1);
                   SetCargo(komora,mat_cans,0);
                   wait(1);
                   ComMoveXY(kiero_komory,50,47);
              end;
              
           enable;
      end;

every 0$2 do
begin
     if GetLives(komora)<1000 then
        begin
             komora_DMG=true;

             repeat
                   wait(0$1);
                   ComMoveXY(kiero_komory,50,47);
             until GetDistUnitXY(komora,50,47)<=2;

             ComExitVehicle(kiero_komory);
             wait(1);
             ComRepairVehicle(kiero_komory,komora);

             repeat
                   wait(0$1);
             until GetLives(komora)=1000;

             ComEnterUnit(kiero_komory,komora);
        end else
        begin
             Say(kiero_komory,'KONW9');
             komora_DMG=false;
        end;

     enable;
end;
Wszyscy jesteśmy żołnierzami: WYDANE
https://original-war.net/files.php?id=174
User avatar
Jeanks
Soldier level 6
Soldier level 6
Posts: 305
Joined: Fri Feb 16, 2007 1:34 pm
Location: Grudziądz

Re: Co to sie.. dzieje?

Post by Jeanks »

Nie Tylko ComGive nie działa mi usilnie nie działa ComUnload np ;p

A w temacie. Hmm ogólnie nigdy nie dawałem pod until żadnego kodu bo wtedy jego działanie może być wadliwe. Zrób to co masz pod untilami w osobnych every/funkcjach i może to pomoże. Błachostka ale obecnie gdy pracowałem przy jednej z misji w modzie zrobiłem tak samo i pomogło bo to co dawałem pod until nie działało zbyt dobrze albo wcale ... ba czasem w ogóle repeat nie działało.
Jeanks zgarnia wszystko ot co xD
Post Reply