Błąd NPC 18039 65

O temacie

Autor

Zaczęty 5.01.2010 roku

Wyświetleń 18039

Odpowiedzi 65

inż. Avallach

inż. Avallach

Administrator
posty7661
Propsy5239
NagrodyV
ProfesjaProgramista
  • Administrator
Użyj Windowsowego Notatnika, kliknij ctrl+h wp pierwszym polu wpisz Grd_215_Torwache w drugim Grd_8001_Skrzypek i kliknij replace all.

Dla tych co niewiedzą ten zwykły niepozorny Notatnik pokazuje też numer linijki w której jest kursor co bardzo ułatwia szukanie błędów, bez ściągania i instalowania dodatkowego oprogramowania.

WonderiuS
  • Gość

WonderiuS
Gość

Błąd NPC
#61 2010-01-09, 18:24(Ostatnia zmiana: 2010-01-24, 21:21)




i znowu coś jest źle w obu skryptach, zmieniłem wszędzie u skrzypka i znowu coś jest źle, podaję zmieniony kod:

[codebox]// **************************************************
//                    EXIT
// **************************************************

INSTANCE DIA_GRD_8001_Skrzypek_Exit (C_INFO)
{
   npc         = GRD_8001_Skrzypek;
   nr         = 999;
   condition   = DIA_GRD_8001_Skrzypek_Exit_Condition;
   information   = DIA_GRD_8001_Skrzypek_Exit_Info;
   permanent   = 1;
   description = DIALOG_ENDE;
};                 

FUNC INT DIA_GRD_8001_Skrzypek_Exit_Condition()
{
   return 1;
};

FUNC VOID DIA_GRD_8001_Skrzypek_Exit_Info()
{
   AI_StopProcessInfos   ( self );
};

// **************************************************
//             Erstes Mal aufkreuzen
// **************************************************

INSTANCE DIA_GRD_8001_Skrzypek_First (C_INFO)
{
   npc            = GRD_8001_Skrzypek;
   nr            = 2;
   condition      = DIA_GRD_8001_Skrzypek_First_Condition;
   information      = DIA_GRD_8001_Skrzypek_First_Info;
   permanent      = 0;
   important      = 1;
};


FUNC VOID DIA_GRD_8001_Skrzypek_First_Info()
{
   AI_Output (self, other,"DIA_GRD_8001_Skrzypek_First_06_00"); //A dokąd to się wybierasz?
   AI_Output (other, self,"DIA_GRD_8001_Skrzypek_First_15_01"); //No do obozu.
   AI_Output (self, other,"DIA_GRD_8001_Skrzypek_First_06_02"); //Przyszedłeś tu sprawiać kłopoty?
   
   Info_ClearChoices   (DIA_GRD_8001_Skrzypek_First );
   Info_AddChoice      (DIA_GRD_8001_Skrzypek_First,"Jasne, zamierzam was się pozbyć!"      ,DIA_GRD_8001_Skrzypek_First_Trouble);
   Info_AddChoice      (DIA_GRD_8001_Skrzypek_First,"Nie, chce się tylko trochę rozejrzeć.."      ,DIA_GRD_8001_Skrzypek_First_JustLooking);
   if (Npc_KnowsInfo(hero,Info_Diego_Kolonie))
   {
      Info_AddChoice      (DIA_GRD_8001_Skrzypek_First,"Chce do was dołączyć."   ,DIA_GRD_8001_Skrzypek_First_Hero);
   };
};

func void DIA_GRD_8001_Skrzypek_First_Trouble()
{
   AI_Output (other, self,"DIA_GRD_8001_Skrzypek_First_Trouble_15_00"); //Jasne, zamierzam was się pozbyć!
   AI_Output (self, other,"DIA_GRD_8001_Skrzypek_First_Trouble_06_01"); //Czyżby? W takim razie coś ci pokażę.
   Info_ClearChoices   (DIA_GRD_8001_Skrzypek_First );
   
   AI_StopProcessInfos   ( self );
   Npc_SetTarget(self, other);
   AI_StartState(self, ZS_Attack, 1, "");   
};

func void DIA_GRD_8001_Skrzypek_First_JustLooking()
{
   AI_Output (other, self,"DIA_GRD_8001_Skrzypek_First_JustLooking_15_00"); //Nie, chce się tylko trochę rozejrzeć.
   AI_Output (self, other,"DIA_GRD_8001_Skrzypek_First_JustLooking_06_01"); //W takim razie zapłać 10 bryłek rudy.
   
   Info_ClearChoices   (DIA_GRD_8001_Skrzypek_First );
   Info_AddChoice      (DIA_GRD_8001_Skrzypek_First,"Ehh.."               ,DIA_GRD_8001_Skrzypek_First_NoPay);
   Info_AddChoice      (DIA_GRD_8001_Skrzypek_First,"10 bryłek rudy."   ,DIA_GRD_8001_Skrzypek_First_Pay);
};

func void DIA_GRD_8001_Skrzypek_First_Diego()
{
   AI_Output (other, self,"DIA_GRD_8001_Skrzypek_First_Diego_15_00"); //Chce do was dołączyć.
   AI_Output (self, other,"DIA_GRD_8001_Skrzypek_First_Diego_06_01"); //Naprawdę? W takim razie idź do Lumbermila.
   Info_ClearChoices   (DIA_GRD_8001_Skrzypek_First );
};

func void DIA_GRD_8001_Skrzypek_First_NoPay()
{
   AI_Output (other, self,"DIA_GRD_8001_Skrzypek_First_NoPay_15_00"); //Ehh..
   AI_Output (self, other,"DIA_GRD_8001_Skrzypek_First_NoPay_06_01"); //W takim razie, wynocha!
   Info_ClearChoices   (DIA_GRD_8001_Skrzypek_First );
};

func void DIA_GRD_8001_Skrzypek_First_Pay()
{
   if (Npc_HasItems(other, itminugget) >= 10)
   {
      AI_Output (other, self,"DIA_GRD_8001_Skrzypek_First_Pay_15_00"); //Proszę, oto 10 bryłek rudy.
      AI_Output (self, other,"DIA_GRD_8001_Skrzypek_First_Pay_06_01"); //Dobrze, w takim razie właź.
      B_GiveInvItems    (other,self, itminugget,10);CreateInvItems       (self,  itminugget,10);
   }
   else
   {
      AI_Output (other, self,"DIA_GRD_8001_Skrzypek_First_Pay_NoOre_15_00"); //Nie mam tyle rudy.
      AI_Output (self, other,"DIA_GRD_8001_Skrzypek_First_Pay_NoOre_06_01"); //Niech będzie, w końcu jesteś tu nowy. Wchodź!
      
   };
      
   Info_ClearChoices   (DIA_GRD_8001_Skrzypek_First );
   AI_StopProcessInfos   ( self );
};

// **************************************************
//                   PERM
// **************************************************

INSTANCE DIA_GRD_8001_Skrzypek_PERM (C_INFO)
{
   npc         = GRD_8001_Skrzypek;
   nr         = 1;
   condition   = DIA_GRD_8001_Skrzypek_PERM_Condition;
   information   = DIA_GRD_8001_Skrzypek_PERM_Info;
   permanent   = 1;
   description = "Co słychać?";
};                 

FUNC INT DIA_GRD_8001_Skrzypek_PERM_Condition()
{
   return 1;
};

FUNC VOID DIA_GRD_8001_Skrzypek_PERM_Info()
{
   AI_Output (other, self,"DIA_GRD_8001_Skrzypek_PERM_15_00"); //Co słychać?
   AI_Output (self, other,"DIA_GRD_8001_Skrzypek_PERM_06_01"); //A jak myślisz?
};[/codebox]
 

Adanos

Adanos

Administrator
Szara eminencja
posty5204
Propsy3870
ProfesjaProgramista
  • Administrator
  • Szara eminencja
// **************************************************
//  EXIT
// **************************************************

INSTANCE DIA_GRD_8001_Skrzypek_Exit (C_INFO)
{
npc = GRD_8001_Skrzypek;
nr = 999;
condition = DIA_GRD_8001_Skrzypek_Exit_Condition;
information = DIA_GRD_8001_Skrzypek_Exit_Info;
permanent = 1;
description = DIALOG_ENDE;
};  

FUNC INT DIA_GRD_8001_Skrzypek_Exit_Condition()
{
return 1;
};

FUNC VOID DIA_GRD_8001_Skrzypek_Exit_Info()
{
AI_StopProcessInfos ( self );
};

// **************************************************
// Erstes Mal aufkreuzen
// **************************************************

INSTANCE DIA_GRD_8001_Skrzypek_First (C_INFO)
{
npc = GRD_8001_Skrzypek;
nr = 2;
condition = DIA_GRD_8001_Skrzypek_First_Condition;
information = DIA_GRD_8001_Skrzypek_First_Info;
permanent = 0;
important = 1;
};
FUNC INT DIA_GRD_8001_Skrzypek_First_Condition()
{
return 1;
};

FUNC VOID DIA_GRD_8001_Skrzypek_First_Info()
{
AI_Output (self, other,"DIA_GRD_8001_Skrzypek_First_06_00"); //A dokąd to się wybierasz?
AI_Output (other, self,"DIA_GRD_8001_Skrzypek_First_15_01"); //No do obozu.
AI_Output (self, other,"DIA_GRD_8001_Skrzypek_First_06_02"); //Przyszedłeś tu sprawiać kłopoty?

Info_ClearChoices (DIA_GRD_8001_Skrzypek_First );
Info_AddChoice (DIA_GRD_8001_Skrzypek_First,"Jasne, zamierzam was się pozbyć!" ,DIA_GRD_8001_Skrzypek_First_Trouble);
Info_AddChoice (DIA_GRD_8001_Skrzypek_First,"Nie, chce się tylko trochę rozejrzeć.." ,DIA_GRD_8001_Skrzypek_First_JustLooking);
if (Npc_KnowsInfo(hero,Info_Diego_Kolonie))
{
Info_AddChoice (DIA_GRD_8001_Skrzypek_First,"Chce do was dołączyć." ,DIA_GRD_8001_Skrzypek_First_Hero);
};
};

func void DIA_GRD_8001_Skrzypek_First_Trouble()
{
AI_Output (other, self,"DIA_GRD_8001_Skrzypek_First_Trouble_15_00"); //Jasne, zamierzam was się pozbyć!
AI_Output (self, other,"DIA_GRD_8001_Skrzypek_First_Trouble_06_01"); //Czyżby? W takim razie coś ci pokażę.
Info_ClearChoices (DIA_GRD_8001_Skrzypek_First );

AI_StopProcessInfos ( self );
Npc_SetTarget(self, other);
AI_StartState(self, ZS_Attack, 1, "");
};

func void DIA_GRD_8001_Skrzypek_First_JustLooking()
{
AI_Output (other, self,"DIA_GRD_8001_Skrzypek_First_JustLooking_15_00"); //Nie, chce się tylko trochę rozejrzeć.
AI_Output (self, other,"DIA_GRD_8001_Skrzypek_First_JustLooking_06_01"); //W takim razie zapłać 10 bryłek rudy.

Info_ClearChoices (DIA_GRD_8001_Skrzypek_First );
Info_AddChoice (DIA_GRD_8001_Skrzypek_First,"Ehh.." ,DIA_GRD_8001_Skrzypek_First_NoPay);
Info_AddChoice (DIA_GRD_8001_Skrzypek_First,"10 bryłek rudy." ,DIA_GRD_8001_Skrzypek_First_Pay);
};

func void DIA_GRD_8001_Skrzypek_First_Diego()
{
AI_Output (other, self,"DIA_GRD_8001_Skrzypek_First_Diego_15_00"); //Chce do was dołączyć.
AI_Output (self, other,"DIA_GRD_8001_Skrzypek_First_Diego_06_01"); //Naprawdę? W takim razie idź do Lumbermila.
Info_ClearChoices (DIA_GRD_8001_Skrzypek_First );
};

func void DIA_GRD_8001_Skrzypek_First_NoPay()
{
AI_Output (other, self,"DIA_GRD_8001_Skrzypek_First_NoPay_15_00"); //Ehh..
AI_Output (self, other,"DIA_GRD_8001_Skrzypek_First_NoPay_06_01"); //W takim razie, wynocha!
Info_ClearChoices (DIA_GRD_8001_Skrzypek_First );
};

func void DIA_GRD_8001_Skrzypek_First_Pay()
{
if (Npc_HasItems(other, itminugget) >= 10)
{
AI_Output (other, self,"DIA_GRD_8001_Skrzypek_First_Pay_15_00"); //Proszę, oto 10 bryłek rudy.
AI_Output (self, other,"DIA_GRD_8001_Skrzypek_First_Pay_06_01"); //Dobrze, w takim razie właź.
B_GiveInvItems (other,self, itminugget,10);CreateInvItems (self,  itminugget,10);
}
else
{
AI_Output (other, self,"DIA_GRD_8001_Skrzypek_First_Pay_NoOre_15_00"); //Nie mam tyle rudy.
AI_Output (self, other,"DIA_GRD_8001_Skrzypek_First_Pay_NoOre_06_01"); //Niech będzie, w końcu jesteś tu nowy. Wchodź!

};

Info_ClearChoices (DIA_GRD_8001_Skrzypek_First );
AI_StopProcessInfos ( self );
};

// **************************************************
// PERM
// **************************************************

INSTANCE DIA_GRD_8001_Skrzypek_PERM (C_INFO)
{
npc = GRD_8001_Skrzypek;
nr = 1;
condition = DIA_GRD_8001_Skrzypek_PERM_Condition;
information = DIA_GRD_8001_Skrzypek_PERM_Info;
permanent = 1;
description = "Co słychać?";
};  

FUNC INT DIA_GRD_8001_Skrzypek_PERM_Condition()
{
return 1;
};

FUNC VOID DIA_GRD_8001_Skrzypek_PERM_Info()
{
AI_Output (other, self,"DIA_GRD_8001_Skrzypek_PERM_15_00"); //Co słychać?
AI_Output (self, other,"DIA_GRD_8001_Skrzypek_PERM_06_01"); //A jak myślisz?
};
Ze Skrzypkiem powinno być ok.

WonderiuS
  • Gość

WonderiuS
Gość

Błąd NPC
#63 2010-01-09, 18:44(Ostatnia zmiana: 2010-01-09, 20:28)
Teraz znowu takie cosik podobnego się pokazuje, czyli znowu coś jest źle w tym dialogu Skrzypka:

DIA_GRD_8001_Skrzypek_First_Hero

// **************************************************
//  EXIT
// **************************************************

INSTANCE DIA_Grd_215_Torwache_Exit (C_INFO)
{
npc = Grd_215_Torwache;
nr = 999;
condition = DIA_Grd_215_Torwache_Exit_Condition;
information = DIA_Grd_215_Torwache_Exit_Info;
permanent = 1;
description = DIALOG_ENDE;
};  

FUNC INT DIA_Grd_215_Torwache_Exit_Condition()
{
return 1;
};

FUNC VOID DIA_Grd_215_Torwache_Exit_Info()
{
AI_StopProcessInfos ( self );
};

// **************************************************
// Erstes Mal aufkreuzen
// **************************************************

INSTANCE DIA_Grd_215_Torwache_First (C_INFO)
{
npc = Grd_215_Torwache;
nr = 2;
condition = DIA_Grd_215_Torwache_First_Condition;
information = DIA_Grd_215_Torwache_First_Info;
permanent = 0;
important = 1;
};

FUNC INT DIA_Grd_215_Torwache_First_Condition()
{
if (!Npc_KnowsInfo(hero,DIA_Grd_215_First))  //Wenn der SC nicht durchs Hintertor rein ist.
&& (Kapitel < 2)
{
return 1;
};
};

FUNC VOID DIA_Grd_215_Torwache_First_Info()
{
AI_Output (self, other,"DIA_Grd_215_Torwache_First_06_00"); //A ty dokąd się wybierasz?
AI_Output (other, self,"DIA_Grd_215_Torwache_First_15_01"); //Do Obozu.
AI_Output (self, other,"DIA_Grd_215_Torwache_First_06_02"); //Chyba nie przyszedłeś tu, żeby sprawiać kłopoty, co?

Info_ClearChoices (DIA_Grd_215_Torwache_First );
Info_AddChoice (DIA_Grd_215_Torwache_First,"Jasne, zamierzam przejąć kontrolę nad całym obozem!" ,DIA_Grd_215_Torwache_First_Trouble);
Info_AddChoice (DIA_Grd_215_Torwache_First,"Chciałem się tylko trochę rozejrzeć." ,DIA_Grd_215_Torwache_First_JustLooking);
if (Npc_KnowsInfo(hero,Info_Diego_Kolonie))
{
Info_AddChoice (DIA_Grd_215_Torwache_First,"Diego powiedział, że mam się z nim spotkać w obozie." ,DIA_Grd_215_Torwache_First_Diego);
};
};

func void DIA_Grd_215_Torwache_First_Trouble()
{
AI_Output (other, self,"DIA_Grd_215_Torwache_First_Trouble_15_00"); //Jasne, zamierzam przejąć kontrolę nad całym obozem!
AI_Output (self, other,"DIA_Grd_215_Torwache_First_Trouble_06_01"); //Hej, facet jest całkiem zabawny... Nie lubię zabawnych facetów.
Info_ClearChoices (DIA_Grd_215_Torwache_First );

AI_StopProcessInfos ( self );
Npc_SetTarget(self, other);
AI_StartState(self, ZS_Attack, 1, "");
};

func void DIA_Grd_215_Torwache_First_JustLooking()
{
AI_Output (other, self,"DIA_Grd_215_Torwache_First_JustLooking_15_00"); //Chciałem się tylko trochę rozejrzeć.
AI_Output (self, other,"DIA_Grd_215_Torwache_First_JustLooking_06_01"); //To cię będzie kosztować 10 bryłek rudy.

Info_ClearChoices (DIA_Grd_215_Torwache_First );
Info_AddChoice (DIA_Grd_215_Torwache_First,"Nieważne." ,DIA_Grd_215_Torwache_First_NoPay);
Info_AddChoice (DIA_Grd_215_Torwache_First,"10 bryłek..." ,DIA_Grd_215_Torwache_First_Pay);
};

func void DIA_Grd_215_Torwache_First_Diego()
{
AI_Output (other, self,"DIA_Grd_215_Torwache_First_Diego_15_00"); //Diego powiedział, że mam się z nim spotkać w obozie.
AI_Output (self, other,"DIA_Grd_215_Torwache_First_Diego_06_01"); //W takim razie - właź.
Info_ClearChoices (DIA_Grd_215_Torwache_First );
};

func void DIA_Grd_215_Torwache_First_NoPay()
{
AI_Output (other, self,"DIA_Grd_215_Torwache_First_NoPay_15_00"); //Nieważne.
AI_Output (self, other,"DIA_Grd_215_Torwache_First_NoPay_06_01"); //W takim razie - spadaj.
Info_ClearChoices (DIA_Grd_215_Torwache_First );
};

func void DIA_Grd_215_Torwache_First_Pay()
{
if (Npc_HasItems(other, itminugget) >= 10)
{
AI_Output (other, self,"DIA_Grd_215_Torwache_First_Pay_15_00"); //Dobrze, masz tu swoje 10 bryłek.
AI_Output (self, other,"DIA_Grd_215_Torwache_First_Pay_06_01"); //Dobra. Zapraszam do środka.
B_GiveInvItems (other,self, itminugget,10);CreateInvItems (self,  itminugget,10);
}
else
{
AI_Output (other, self,"DIA_Grd_215_Torwache_First_Pay_NoOre_15_00"); //Nie mam tyle przy sobie.
AI_Output (self, other,"DIA_Grd_215_Torwache_First_Pay_NoOre_06_01"); //Cóż. Tym razem zrobię wyjątek, bo jesteś tu nowy.

};

Info_ClearChoices (DIA_Grd_215_Torwache_First );
AI_StopProcessInfos ( self );
};

// **************************************************
// PERM
// **************************************************

INSTANCE DIA_Grd_215_Torwache_PERM (C_INFO)
{
npc = Grd_215_Torwache;
nr = 1;
condition = DIA_Grd_215_Torwache_PERM_Condition;
information = DIA_Grd_215_Torwache_PERM_Info;
permanent = 1;
description = "Coś nowego?";
};  

FUNC INT DIA_Grd_215_Torwache_PERM_Condition()
{
return 1;
};

FUNC VOID DIA_Grd_215_Torwache_PERM_Info()
{
AI_Output (other, self,"DIA_Grd_215_Torwache_PERM_15_00"); //Coś nowego?
AI_Output (self, other,"DIA_Grd_215_Torwache_PERM_06_01"); //Nie. Wszystko po staremu.
};

I co tu jest źle? Bo mi się prawie to samo pokazuje co przy Skrzypku. Da się to jakoś naprawić? A Skrzypka zrobię od podstaw.

 

Adanos

Adanos

Administrator
Szara eminencja
posty5204
Propsy3870
ProfesjaProgramista
  • Administrator
  • Szara eminencja
Wywal to na czerwono i nie zrób żadnego błędu przy tym!
Cytuj
FUNC INT DIA_Grd_215_Torwache_First_Condition()
{    
    if    (!Npc_KnowsInfo(hero,DIA_Grd_215_First))  //Wenn der SC nicht durchs Hintertor rein ist.
    &&  
(Kapitel < 2)
    {
        return 1;
    };
};

WonderiuS
  • Gość
Wywal to na czerwono i nie zrób żadnego błędu przy tym!


Adanos, ten problem rozwiązany, zajrzyj do tematu Dialog.
 


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