SAIL - Zapis doświadczenia postaci, cel: dojście z 2gą osobą

Gotowe kody SAIL'a, informacje na temat moddingu, itd.

Moderator: zoNE

Post Reply
User avatar
zoNE
The Great Uniter & Site Administrator
The Great Uniter & Site Administrator
Posts: 2061
Joined: Fri Feb 17, 2006 3:44 pm
Location: Poland
Contact:

SAIL - Zapis doświadczenia postaci, cel: dojście z 2gą osobą

Post by zoNE »

NNPlaya wrote:Plik wri. musi być zapisany w formaci Unicode (W wordpadzie jak zapisujesz to jest pod nazwą pliku wybieranie formatu). Bo zakładam, że włączasz misją przez grę, a nie edytor?

Pamiętaj też, że SaveCharacters(Dark,'Dark'); zawsze powinno być po RewardPeople(Dark);. W następnej misji wpisz tak:

Code: Select all

Starting 
Begin 
uc_side=2; //Jeśli ta strona, którą kontrolujesz to 2, czyli arabowie w żołtym kolorze 
Dark=CreateCharacterSet('Dark'); 
PlaceUnitXY(Dark,współrzędne x, współrzędne y, wpisz true jeśli ma się materializować (czyli jak przez eon skrzynie) lub false, żeby się po prostu pojawił); 
end;
Najpierw w texts.txt dodaj

Code: Select all

# C1 
Add Main cel1 
- Dojdź dokądś. 
# 

# C2 
Add Main cel2 
- Znajdź ktosia. 
# 

A w Sailu : 
ChangeMissionObjectives('C1'); 
ChangeMissionObjectives('C2');
A potem wstaw to:

Code: Select all

every 0$1 trigger See(GetSide(Dark),ktos) do 
Begin 
CenterOnUnits([Dark,ktos]); //Jak piszesz kilka postaci w jednym ten tego to weź w kwadratowy nawias 
SetSide(ktos,GetSide(Dark)); 
end;
A co do medali to w texts.txt

Code: Select all

^Main 
Cele wykonane 

* medal1 
- Doszedłeś 
* 

* medal2 
- Żyjesz 
* 

* medal3 
+ Znalazłeś ktosia 
- Nie znalazłeś ktosia 
*
Potem w Sailu (przyjmuję, że misja kończy się, gdy wejdziesz do arei o nazwie "endmission":

Code: Select all

every 0$1 trigger IsInArea(Dark, endmission) do 
Begin 
If not GetSide(Dark)=GetSide(ktos) then //Jeśli strony Darka i ktosia się nie zgadzają to daje 2 medale a 3 nie. 
Begin 
AddMedal('medal1',1); 
AddMedal('medal2',1); 
AddMedal('medal3',-1); 
GiveMedals('Main'); 
RewardPeople(Dark,); 
SaveCharacters(Dark,'Dark'); 
YouWin; 
end 
else //albo jeśli jest odwrotnie to... 
Begin 
AddMedal('medal1',1); 
AddMedal('medal2',1); 
AddMedal('medal3',1); 
GiveMedals('Main'); 
RewardPeople([Dark,ktos]); 
SaveCharacters(Dark,'Dark'); 
SaveCharacters(ktos,'ktos'); 
YouWin; 
end; 
end;
Author: NNPlaya
Topic: http://forum.original-war.net/viewtopic ... c&start=15
Post Reply