Umieszczenie i przypisanie npc 1938 1

O temacie

Autor siewka181

Zaczęty 7.04.2014 roku

Wyświetleń 1938

Odpowiedzi 1

siewka181

siewka181

Użytkownicy
PomiotBeliara
posty411
Propsy68
ProfesjaNierób
  • Użytkownicy
  • PomiotBeliara
Witam a wiem odrazu do rzeczy.
Jak mam przypisać ten skrypt do konkretnego npc i umieścić go pod wieżą xardasa.
I czy wgl będzie to działać :
Spoiler


//========================================
//-----------------> EXIT
//========================================

INSTANCE DIA_Ash_EXIT(C_INFO)
{
   npc         = DIA_VLK_1009_Ash;
   nr         = 999;
   condition   = DIA_Ash_EXIT_Condition;
   information   = DIA_Ash_EXIT_Info;
   permanent   = TRUE;
   description = DIALOG_ENDE;
};

FUNC INT DIA_Ash_EXIT_Condition()
{
   return TRUE;
};

FUNC INT DIA_Ash_EXIT_Info()
{
   AI_StopProcessInfos   (self);
};

//========================================
//-----------------> PICKPOCKET
//========================================

INSTANCE DIA_Ash_PICKPOCKET(C_INFO)
{
   npc         = DIA_VLK_1009_Ash;
   nr         = 900;
   condition   = DIA_Ash_PICKPOCKET_Condition;
   information   = DIA_Ash_PICKPOCKET_Info;
   permanent   = TRUE;
   description = Pickpocket_120;
};

FUNC INT DIA_Ash_PICKPOCKET_Condition()
{
   C_Beklauen (111, 666);
};

FUNC INT DIA_Ash_PICKPOCKET_Info()
{
   Info_ClearChoices   (DIA_Ash_PICKPOCKET);
   Info_AddChoice      (DIA_Ash_PICKPOCKET, DIALOG_BACK       ,DIA_Ash_PICKPOCKET_BACK);
   Info_AddChoice      (DIA_Ash_PICKPOCKET, DIALOG_PICKPOCKET       ,DIA_Ash_PICKPOCKET_DoIt);
};

FUNC INT DIA_Ash_PICKPOCKET_DoIt()
{
   B_Beklauen ();
   Info_ClearChoices   (DIA_Ash_PICKPOCKET);
};

FUNC INT DIA_Ash_PICKPOCKET_BACK()
{
   Info_ClearChoices   (DIA_Ash_PICKPOCKET);
};

//========================================
//-----------------> HELLO2
//========================================

INSTANCE DIA_Ash_HELLO2 (C_INFO)
{
   npc         = VLK_1009_Ash;
   nr         = 2;
   condition   = DIA_Ash_HELLO2_Condition;
   information   = DIA_Ash_HELLO2_Info;
   permanent   = FALSE;
   description   = "stary_wojak"
};

FUNC INT DIA_Ash_HELLO2_Condition()
{

     && (Hero.Level < 1)
  {
      return TRUE;
  };
};


func VOID DIA_Ash_HELLO2_Info()
{
        AI_Output (other, self ,"DIA_Ash_HELLO2_15_01"); //Witaj!
        AI_Output (other, self ,"DIA_Ash_HELLO2_15_02"); //Kim jeste?
        AI_Output (self, other ,"DIA_Ash_HELLO2_03_03"); //Jestem starym wojownikiem z kontynentu.
        AI_Output (other, self ,"DIA_Ash_HELLO2_15_04"); //Mam do ciebie prośbę.
        AI_Output (self, other ,"DIA_Ash_HELLO2_03_05"); //Hmmmm ?
        AI_Output (other, self ,"DIA_Ash_HELLO2_15_06"); //Mógłbyś mi pomóc ?
        AI_Output (other, self ,"DIA_Ash_HELLO2_15_07"); //Zapomniałem wielu rzeczy i zostałem bez grosza a khorinis nie jest zbyt przyjaznym miejscem dla obdartych podróżnych.       
        AI_Output (self, other ,"DIA_Ash_HELLO2_03_10"); //Słuchaj mam pomysł.
        AI_Output (self, other ,"DIA_Ash_HELLO2_03_11"); //Ty pomożesz mnie a ja tobie.

        AI_Output (other, self ,"DIA_Ash_HELLO2_15_12"); //W jaki sposób ?
        AI_PlayAni (self, "T_SEARCH");
        AI_PlayAni (self, "T_SEARCH");
        AI_Output (self, other ,"DIA_Ash_HELLO2_03_13"); //Znajdz mój stary sztylet który zgubiłem w okolicy a czeka cię ciekawa nagroda.
        AI_Output (other, self ,"DIA_Ash_HELLO2_15_14"); //W takim razie idę go poszukać.
        B_LogEntry   (TOPIC_Wojak_Sztylet,"Stary wojownik polecił mi znaleźć jego stary sztylet.");

        B_GivePlayerXP (1900);

        if (Npc_HasItems (other, ItAm_Prot_Fire_01) >=1)
        {
        B_GiveInvItems (self, other, ItMi_Gold, 2500);
        };

        AI_StopProcessInfos   (self);
};

PS. nie śmiejcie się z dialogu wiem że troche głupio to wymyśliłem ale jest to wgl pierwszy dialog jaki wymyśliłem  do gothica.
 
JAK NAZYWA SIĘ CHOROBA NA KTÓRĄ CIERPIĄ WYZNAWCY ADANOSA ?
WADA NOSA :d
Motyw do Google Chrome by ja: https://www.mychrometheme.com/t/94h6ywsfrpdltksaofn965n3e
http://z0r.de/L/z0r-de_4014.swf

Zucklov

Zucklov

Quest Pack Team
Sztywniutko
posty1220
Propsy1241
ProfesjaSkrypter
  • Quest Pack Team
  • Sztywniutko
Po 1:
Cytuj
//========================================
//-----------------> EXIT
//========================================

INSTANCE DIA_Ash_EXIT(C_INFO)
{
   npc         = DIA_VLK_1009_Ash;
   nr         = 999;
   condition   = DIA_Ash_EXIT_Condition;
   information   = DIA_Ash_EXIT_Info;
   permanent   = TRUE;
   description = DIALOG_ENDE;
};
To na czerwono to powinno być instance npc, to samo jest w dialogu niżej.
Po 2 dialog ma błędy w składni:
Cytuj
        AI_PlayAni (self, "T_SEARCH");
        AI_PlayAni (self, "T_SEARCH");
Po co 2 razy z rzędu?
Cytuj
FUNC INT DIA_Ash_HELLO2_Condition()
{

     && (Hero.Level < 1)
  {
      return TRUE;
  };
};
Jak masz jeden warunek to używasz if, a nie koniunkcji.
Cytuj
        if (Npc_HasItems (other, ItAm_Prot_Fire_01) >=1)
        {
        B_GiveInvItems (self, other, ItMi_Gold, 2500);
        };
Nie ma komendy, która tworzy w ekwipunku rozmówcy 2500 sztuk złota, więc nie dostaniesz nic (albo jakieś grosze, tyle, ile ma w ekwipunku). Nie będę się śmiał, bo sam pisałem kiedyś takie dialogi, ale przyjrzyj się temu, co zaznaczyłem oraz gotowym dialogom i to popraw. Dialogi się przypisują automatycznie do npc, którego podasz w
Cytuj
INSTANCE DIA_Ash_HELLO2 (C_INFO)
{
   npc         = VLK_1009_Ash;
   nr         = 2;
   condition   = DIA_Ash_HELLO2_Condition;
   information   = DIA_Ash_HELLO2_Info;
   permanent   = FALSE;
   description   = "stary_wojak"
};
Poza tym dziwny opis tego dialogu. "Description" to jest tekst, który się będzie wyświetlał w oknie opcji dialogowych, dziwnie to będzie wyglądało.
 
Lieb Vaterland magst ruhig sein


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