SAIL-export jednostek

Wszystko o modach, patchach i błędach w OW oraz ogólnym programowaniu.
Awatar użytkownika
Goten22
Soldier level 1
Soldier level 1
Posty: 16
Rejestracja: czw lip 31, 2008 4:46 pm

SAIL-export jednostek

Post autor: Goten22 »

Chciałbym przenieść moją jednostkę do drugiej misji gdy użyję ten kod

Kod: Zaznacz cały

Starting
Begin
ResetFog;
end;
EXPORT mar;
uc_side=1;
mar=CreateCharacterSet('mar');
PlaceUnit (74,5,true);
end;
to przy kompilowaniu pojawia się błąd. Jak poprawnie ułożyć ten kod?
Awatar użytkownika
Jeanks
Soldier level 6
Soldier level 6
Posty: 305
Rejestracja: pt lut 16, 2007 1:34 pm
Lokalizacja: Grudziądz

Post autor: Jeanks »

w poprzednij misji dajesz na końcu w kodzie

Kod: Zaznacz cały

 
/// jakis kod
RewardPeople(mar);
SaveCharacters(mar,'mar');
YouWin;
end;
a co do kodu wyzej zmiań na

Kod: Zaznacz cały

Starting
Begin
ResetFog;
end;
EXPORT mar;

mar=CreateCharacter('mar');
PlaceUnitArea (mar,JAKAS AREA,true);
end;
Jeanks zgarnia wszystko ot co xD
Awatar użytkownika
Goten22
Soldier level 1
Soldier level 1
Posty: 16
Rejestracja: czw lip 31, 2008 4:46 pm

Post autor: Goten22 »

Kod który podałeś mam w poprzedniej misji.
Awatar użytkownika
Jeanks
Soldier level 6
Soldier level 6
Posty: 305
Rejestracja: pt lut 16, 2007 1:34 pm
Lokalizacja: Grudziądz

Post autor: Jeanks »

Ten drugi kod zamień na

Kod: Zaznacz cały

EXPORT mar;
Starting
Begin
mar=CreateCharacter('mar');
PlaceUnitArea (mar,JAKAS AREA,true);
end;

Kod: Zaznacz cały

 A jak się upierwasz na współrzędne to
PlaceUnitXY (mar,x,y,true);
Jeanks zgarnia wszystko ot co xD
Awatar użytkownika
Goten22
Soldier level 1
Soldier level 1
Posty: 16
Rejestracja: czw lip 31, 2008 4:46 pm

Post autor: Goten22 »

Jak to zrobie to przy kompilacji wychodzi taki błąd.
Załączniki
blad.JPG
blad.JPG (22.32 KiB) Przejrzano 2375 razy
Awatar użytkownika
Jeanks
Soldier level 6
Soldier level 6
Posty: 305
Rejestracja: pt lut 16, 2007 1:34 pm
Lokalizacja: Grudziądz

Post autor: Jeanks »

To proste zmasz Begin po exporcie :P I wklej to co masz wyżej :p odemnie
Jeanks zgarnia wszystko ot co xD
Awatar użytkownika
Gothuk
Site Administrator
Site Administrator
Poland
Posty: 985
Rejestracja: wt wrz 04, 2007 6:10 pm
Lokalizacja: Poland, Warsaw
Kontakt:

Post autor: Gothuk »

oj paul nie tłumacz źle ^^.
Goten przyjrzyj się swojemu kodu, .. i?

masz starting a po nim begin, odsloniecie mgly i end to jest glowny blok.
potem kompilator napotyka na export i znow begin wiec nie wie co z tym zrobic bo to oddzielny blok.
wiec rozwiazanie:
usuń:

Kod: Zaznacz cały

begin
resetfog;
end;
a samo resetfog daj po tym drugim begin.
Awatar użytkownika
Jeanks
Soldier level 6
Soldier level 6
Posty: 305
Rejestracja: pt lut 16, 2007 1:34 pm
Lokalizacja: Grudziądz

Post autor: Jeanks »

Gothuk masło maslane ^^ Musi usunąć begin bo kompilacja ngdy się nieuda begin nie może wystapić w kodzie na początku (zakładając fakt że export to odzielny kod i nie ma znaczenia gdzie go wkleisz i tak będzie wykonany na początku :P). No chyba, że da jakieś every potem begin ale raczej tak niechciał
Jeanks zgarnia wszystko ot co xD
Awatar użytkownika
Goten22
Soldier level 1
Soldier level 1
Posty: 16
Rejestracja: czw lip 31, 2008 4:46 pm

Post autor: Goten22 »

Mam teraz tak

Kod: Zaznacz cały

Export mar;
Starting
Begin
uc_side=1;
mar=CreateCharacterSet('mar');
PlaceUnit (74,5,true);
end;

Begin
ResetFog;
end; 
Ale dalej nie działa.
Awatar użytkownika
Gothuk
Site Administrator
Site Administrator
Poland
Posty: 985
Rejestracja: wt wrz 04, 2007 6:10 pm
Lokalizacja: Poland, Warsaw
Kontakt:

Post autor: Gothuk »

Kod: Zaznacz cały

Starting 
   Begin 
      ResetFog; 
   end; 

EXPORT mar; 
   Begin                                    // ten begin do usunięcia
      mar=CreateCharacter('mar'); 
      PlaceUnitArea (mar,JAKAS AREA,true); 
   end;
a teraz przyjrzyj się temu kodowi...
gdy usuniesz begina to wtedy masz 1 begina i 2 endy. czyli kompilator znow zawiadomi o bledzie ze znalazl koniec bloku, a jego poczatku nie...

resetfog nalezy do glownego bloku w grze, poza tym blokiem maga byc jedynie exporty, funkcje i zdarzenia (every)
wiec zeby ten kod dzialal trzeba zawartosc drugiego bloku przeniesc do bloku glownego..
kod powinien wygladac tak:

Kod: Zaznacz cały

EXPORT mar; 

Starting 
   Begin 
      ResetFog; 
      mar=CreateCharacter('mar'); 
      PlaceUnitArea (mar, JAKAS_AREA, true); 
   end;
ten kod bedzie dzialac.

Goten w kodzie ktory podales wystepuje jeszcze jeden blad, nie ma funkcji PlaceUnit, tylko PlaceUnitXY, PlaceUnitArea, PlaceUnitXYR lub PlaceUnitAnywhere.
Awatar użytkownika
Goten22
Soldier level 1
Soldier level 1
Posty: 16
Rejestracja: czw lip 31, 2008 4:46 pm

Post autor: Goten22 »

Działa. Dziękuje Wam bardzo za pomoc... nigdy bym sobie nie poradził. Jeszcze raz dziękuje :D
ODPOWIEDZ