Pytanie dot. Spacera i skryptów 5812 16

O temacie

Autor Alexik

Zaczęty 30.01.2012 roku

Wyświetleń 5812

Odpowiedzi 16

Alexik

Alexik

Użytkownicy
posty396
Propsy150
ProfesjaNierób
  • Użytkownicy

Alexik

Pytanie dot. Spacera i skryptów
2012-01-30, 15:39(Ostatnia zmiana: 2012-01-30, 16:32)
Witam mam następujące problemy z Spacerem i z skryptami najpierw spacer
Gdy dodałem nowe rzeczy do świata zapisuje właczam gre z zaznaczonym reparse scripts i nadal nic nie ma.
Teraz skrypty,mam pytanie
Czy jest możliwe coś takiego ,że w 4 rozdziale nie byłoby żadnego ataku na magów ognia itd? Tylko takie normalne questy u Npc?
I ostatni problem,zrobiłem monolog z gotowaniem i dodałem do kotła Cook w spacerze w odpowiednim miejscu i gdy chce gotować nic się nie robi a jak idę spać to są te opcje które dodałem,co jest źle?
 

mass1500

mass1500

Użytkownicy
posty149
Propsy11
ProfesjaGracz
  • Użytkownicy
w monologu musisz dodać stała w ai_constans np.
const int cook = 8;
a w każdym monologu do gotowania daj to jako warunek
if (PLAYER_MOBSI_PRODUCTION == MOBSI_cook)
a to musisz dać jako funkcję (najlepiej razem w pliku z monologiem i na początku pliku)
FUNC VOID cook_S1 ()
{

        if (Hlp_GetInstanceID(self)==Hlp_GetInstanceID(hero))
        {
                self.aivar[AIV_INVINCIBLE]=TRUE;
                PLAYER_MOBSI_PRODUCTION = MOBSI_cook;
                Ai_ProcessInfos (hero);
        };

};
i w spacku musisz dodać funkcje on_state_func (czy jakoś tak)
wtedy powinno wszytko działać
 

RafalBudzis

RafalBudzis

Użytkownicy
posty1967
Propsy808
ProfesjaSkrypter
  • Użytkownicy
no no mass widać ze się uczysz ale:
Po pierwsze spytam się do której części ten monolog bo jak do G1 to trzeba jeszcze zmienić monolog spania pod możliwość innego monologu.
Po 2 robisz zmienna cook a potem z dupy wyciągasz zmienna MOBSI_cook ja się pytam skąd ??
jak robisz cook to lecisz dalej z cook
if (PLAYER_MOBSI_PRODUCTION == cook)FUNC VOID cook_S1 ()
{

        if (Hlp_GetInstanceID(self)==Hlp_GetInstanceID(hero))
        {
                self.aivar[AIV_INVINCIBLE]=TRUE;
                PLAYER_MOBSI_PRODUCTION = cook;
                Ai_ProcessInfos (hero);
        };

};
no i w G1 trzeba było zrobić też zmienną która zastąpiła by PLAYER_MOBSI_PRODUCTION

Gdy dodałem nowe rzeczy do świata zapisuje właczam gre z zaznaczonym reparse scripts i nadal nic nie ma.
Świat jest w paczce .vdf w folderze data i w 1 kolejności jest on czytany właśnie z tej paczki. Masz 3 rozwiązania albo przenosisz paczkę world.vdf w jakieś dziwne miejsce zeby gra nie znalazła. Możesz też zmienić rozszerzenie np. na .abc (najlepsze rozwiązanie) Albo podmieniasz world.ZEN w ten paczce za pomocą Gothic VDFS

Czy jest możliwe coś takiego ,że w 4 rozdziale nie byłoby żadnego ataku na magów ognia itd? Tylko takie normalne questy u Npc?

Jest to możliwe :)

@down
czytaj uważnie napisałem ze do G1 potrzebna bedzie 2 zmienna ty zrobiłeś tylko jedną... i nawet jej nie użyłeś :P

mass1500

mass1500

Użytkownicy
posty149
Propsy11
ProfesjaGracz
  • Użytkownicy
napisałem przecierz że musi zrobić stałą
 

Alexik

Alexik

Użytkownicy
posty396
Propsy150
ProfesjaNierób
  • Użytkownicy
Dobra,ale jest kolejny problem bo jak podchodze do kotła to mam śpij do ranka itd..
 

RafalBudzis

RafalBudzis

Użytkownicy
posty1967
Propsy808
ProfesjaSkrypter
  • Użytkownicy
Dobra,ale jest kolejny problem bo jak podchodze do kotła to mam śpij do ranka itd..
Po pierwsze spytam się do której części ten monolog bo jak do G1 to trzeba jeszcze zmienić monolog spania pod możliwość innego monologu.

naucz się czytać okej ?

Alexik

Alexik

Użytkownicy
posty396
Propsy150
ProfesjaNierób
  • Użytkownicy
Wybacz,ale wtedy nie zauważyłem tego bo z telefonu pisałem  :lol:  
Robie to do G1
 


Alexik

Alexik

Użytkownicy
posty396
Propsy150
ProfesjaNierób
  • Użytkownicy
Mógłby ktoś pomóc bo te poradniki niewiele mi pomagają
 

mass1500

mass1500

Użytkownicy
posty149
Propsy11
ProfesjaGracz
  • Użytkownicy
a co ci nie działa?
 

Alexik

Alexik

Użytkownicy
posty396
Propsy150
ProfesjaNierób
  • Użytkownicy
Jak,podchodze do kotła,to jest monolog  łóżka,wyświetla się śpij do rana,do wieczora,do północy itp,ale i jest monolog kotła który zrobiłem
 

kaczka

kaczka

RaveN Studio
Definitely not kaczka!
posty2280
Propsy2392
NagrodyV
ProfesjaLvl designer
  • RaveN Studio
  • Definitely not kaczka!
Pokaż cały monolog bo wróżkami to my raczej nie jesteśmy :ayfkm:
 

Alexik

Alexik

Użytkownicy
posty396
Propsy150
ProfesjaNierób
  • Użytkownicy
FUNC VOID cook_S1 ()
{

        if (Hlp_GetInstanceID(self)==Hlp_GetInstanceID(hero))
        {
                self.aivar[AIV_INVINCIBLE]=TRUE;
               
                Ai_ProcessInfos (hero);
        };

};


//===============================NoCook=============================

INSTANCE PC_NoCook_End (C_Info)
{
        npc            = PC_Hero;
   nr            = 999;
   condition      = PC_NoCook_End_Condition;
   information      = PC_NoCook_End_Info;
   permanent      = 1;
   description      = DIALOG_ENDE;
};

FUNC INT PC_NoCook_End_Condition ()
{

   
        {      
                return 1;
        };
};

FUNC VOID PC_NoCook_End_Info()
{
        AI_StopProcessInfos (hero);
};

//--------------------------dinner-----------------------//
INSTANCE PC_Cook_dinner (C_INFO)
{
   npc            = PC_Hero;   
   condition      = PC_Cook_dinner_Condition;
   information      = PC_cook_dinner_Info;
   permanent      = 1;
   description      = "Gotuj zupę";
};

FUNC INT PC_Cook_dinner_Condition()
{   

{   
      return 1;
   };
PrintScreen("Zrobiłeś Zupę,Smacznego!.",-1,-1,"font_old_20_white.tga",3);
CreateInvItem(self,ItFoSoup);
B_GiveInvItems(self,other,ItFoSoup,1);
};
 

mass1500

mass1500

Użytkownicy
posty149
Propsy11
ProfesjaGracz
  • Użytkownicy
zrób stałą w ai_constans
const int mobsi_"zmienna" = "nie powtarzająca się liczba przy monologach"
pisałem ci przecierz że musisz dać to
if (PLAYER_MOBSI_PRODUCTION == MOBSI_"zmienna")
w warunku

a po za tym
CreateInvItem(self,ItFoSoup
nie zamknąłeś nawiasu i nie dałeś średnika

i wklej to
PLAYER_MOBSI_PRODUCTION = "zmienna";
między tym
self.aivar[AIV_INVINCIBLE]=TRUE; a tym Ai_ProcessInfos (hero);
 

RafalBudzis

RafalBudzis

Użytkownicy
posty1967
Propsy808
ProfesjaSkrypter
  • Użytkownicy
zrób stałą w ai_constans
const int mobsi_"zmienna" = "nie powtarzająca się liczba przy monologach"
ha ha ha w 1 chwili myślałem ze to integer potem ze string potem zgłupiałem ;d

Ma racje ale źle napisał po prostu robisz zmienną integer (liczbowa) z obojętniej jaką nazwą
const int garnek = 0;
const int lozko_cholera_jasna = 1;
ta druga zmienna dla podkreślenia ze nazwa nie jest ważna ;d
robisz tez 3 zmienną bo w gothicu 1 jej nie ma w przeciwieństwie do G2NK
var int jaki_teraz_monolog;

Spoiler
i wklej to
PLAYER_MOBSI_PRODUCTION = "zmienna";
między tym
self.aivar[AIV_INVINCIBLE]=TRUE; a tym Ai_ProcessInfos (hero);

ale pierdolisz ;d  to nie ma znaczenia byle by było przed Ai_ProcessInfos.

a więc musisz teraz w inicjacji, tworzeniu, starcie monologu garka dać

jaki_teraz_monolog = garnek;
dzieki temu zmienna jaki_teraz_monolog bedzie miała wartość 0 taką jaką daliśmy garkowi

a w monologu spania (funkcja sleepabit_s1) dajesz
jaki_teraz_monolog = lozko_cholera_jasna;


potem w każdym dialogu od monologów sprawdzasz czy

zmienna jaki_teraz_monolog ma wartośc garnek
dla monologów od garka

Func int ..._condition(){

return jaki_teraz_monolog == garnek;

};

zmienna jaki_teraz_monolog ma wartość lozko_cholera_jasna
dla monologów od łożka

Func int ..._condition(){

return jaki_teraz_monolog == lozko_cholera_jasna;

};

mass1500

mass1500

Użytkownicy
posty149
Propsy11
ProfesjaGracz
  • Użytkownicy
zrób stałą w ai_constans
const int mobsi_"zmienna" = "nie powtarzająca się liczba przy monologach"
ha ha ha w 1 chwili myślałem ze to integer potem ze string potem zgłupiałem ;d

wiedziałem że ktoś tego nie zrozumie :D
 

Alexik

Alexik

Użytkownicy
posty396
Propsy150
ProfesjaNierób
  • Użytkownicy
Dobra,dziękuje wam temat do zamknięcia  :ok:
 


0 użytkowników i 1 Gość przegląda ten wątek.
0 użytkowników
Do góry