[G2:NK]Brak możliwości rozmowy z postacią. 1155 2

O temacie

Autor Graveir

Zaczęty 30.05.2010 roku

Wyświetleń 1155

Odpowiedzi 2

Graveir

Graveir

Użytkownicy
Avatar Twilight Sparkle / Pożeracz serc
posty1275
Propsy235
ProfesjaGracz
  • Użytkownicy
  • Avatar Twilight Sparkle / Pożeracz serc
Tak jak w temacie-stworzyłem postać+dialog,ale nie mogę z nią pogadać wg(czyli coś jak klikanie na ścierwojada bez wyciągniętej broni).Podaję skrypty:
// -----------------------------------
// This script file was created with NSC Script Generator 2.2 by Mirage Game Development
// Mirage Game Development - copyright 2005
// File: NONE_1000_Arnold
// -----------------------------------

instance NONE_1000_Arnold (Npc_Default)
{
// ------ NSC ------
name = "Arnold";
guild = GIL_NONE;
id = 1000;
voice = 19;
npctype = NPCTYPE_AMBIENT;

// ------ Attributes ------
B_SetAttributesToChapter(self, 2);

// ------ Fight tactic ------
fight_tactic = FAI_HUMAN_NORMAL;

// ------ Equipted weapons ------
EquipItem (self, ItMw_2h_Rod);
EquipItem (self, ItRw_Bow_L_03_MIS);

// ------ Inventory ------
B_CreateAmbientInv (self);
CreateInvItems (self, ItPo_Perm_STR, 10);

// ------ Visuals ------
B_SetNpcVisual (self, MALE, "Hum_Head_FatBald", Face_N_ZombieMud, BodyTex_N, ITAR_Prisoner);
Mdl_SetModelFatness (self, 0);
Mdl_ApplyOverlayMds (self, "Humans_Relaxed.mds");

// ------ Fight skills ------
B_SetFightSkills (self, 2);

};

FUNC VOID Rtn_Start_1000()
{
TA_Stand_Dementor(00,00,08,00,"NW_XARDAS_START");
TA_Stand_Dementor(08,00,00,00,"NW_XARDAS_START");
};
Teraz dialog:
//========================================
//-----------------> OPCJA *KONIEC*
//========================================

INSTANCE DIA_Arnold_EXIT(C_INFO)
{
npc = NONE_1000_Arnold;
nr = 999;
condition = DIA_Arnold_EXIT_Condition;
information = DIA_Arnold_EXIT_Info;
permanent = TRUE;
description = "KONIEC";
};

FUNC INT DIA_Arnold_EXIT_Condition()
{
return TRUE;
};

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

//========================================
//-----------------> HELLO1
//========================================

INSTANCE DIA_Arnold_HELLO1 (C_INFO)
{
   npc = NONE_1000_Arnold;
   nr = 1;
   condition = DIA_Arnold_HELLO1_Condition;
   information = DIA_Arnold_HELLO1_Info;
   permanent = FALSE;
   description = "Kim jesteś?";
};

FUNC INT DIA_Arnold_HELLO1_Condition()
{
return TRUE;
};

FUNC VOID DIA_Arnold_HELLO1_Info()
{
AI_Output (other, self ,"DIA_Arnold_HELLO1_15_04"); //Kim jesteś?
AI_Output (self, other ,"DIA_Arnold_HELLO1_03_05"); //Nazywam się Arnold.
AI_Output (other, self ,"DIA_Arnold_HELLO1_15_06"); //Co tu robisz?
AI_Output (self, other ,"DIA_Arnold_HELLO1_03_07"); //Szukam miecza o nazwie Jumper.

};

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

INSTANCE DIA_Arnold_HELLO2 (C_INFO)
{
   npc = NONE_1000_Arnold;
   nr = 2;
   condition = DIA_Arnold_HELLO2_Condition;
   information = DIA_Arnold_HELLO2_Info;
   permanent = FALSE;
   description = "Masz dla mnie jakieś zadanie?";
};

FUNC INT DIA_Arnold_HELLO2_Condition()
{
return TRUE;
};

FUNC VOID DIA_Arnold_HELLO2_Info()
{
AI_Output (other, self ,"DIA_Arnold_HELLO2_15_01"); //Masz dla mnie jakieś zadanie?
AI_Output (self, other ,"DIA_Arnold_HELLO2_03_02"); //Tak.Jeśli znajdziesz ten miecz to przynieś mi go.
AI_Output (other, self ,"DIA_Arnold_HELLO2_15_03"); //A co będę z tego miał?
AI_Output (self, other ,"DIA_Arnold_HELLO2_03_04"); //Będziesz mógł sobie wybrać nagrodę.

Log_CreateTopic (TOPIC_Arnold_Sword, LOG_MISSION);
Log_SetTopicStatus   (TOPIC_Arnold_Sword, LOG_RUNNING);
B_LogEntry (TOPIC_Arnold_Sword,"Mam znaleźć i przynieść miecz dla Arnolda.");
AI_StopProcessInfos (self);

};

//========================================
//-----------------> HELLO3
//========================================

INSTANCE DIA_Arnold_HELLO3 (C_INFO)
{
   npc = NONE_1000_Arnold;
   nr = 3;
   condition = DIA_Arnold_HELLO3_Condition;
   information = DIA_Arnold_HELLO3_Info;
   permanent = FALSE;
   description = "Znalazłem miecz.";
};

FUNC INT DIA_Arnold_HELLO3_Condition()
{
if (Npc_KnowsInfo (other, DIA_Arnold_HELLO2))
&& (Npc_HasItems (other, Jumper) >=1)
{
return TRUE;
};
};


FUNC VOID DIA_Arnold_HELLO3_Info()
{
AI_Output (other, self ,"DIA_Arnold_HELLO3_15_01"); //Znalazłem miecz.
AI_Output (self, other ,"DIA_Arnold_HELLO3_03_02"); //Masz go przy sobie?
AI_Output (other, self ,"DIA_Arnold_HELLO3_15_03"); //Tak.
AI_Output (self, other ,"DIA_Arnold_HELLO3_03_04"); //Dasz mi go?
AI_Output (other, self ,"DIA_Arnold_HELLO3_15_05"); //Nie ma sprawy,trzymaj.
AI_Output (self, other ,"DIA_Arnold_HELLO3_03_06"); //Dziękuję.Wybierz sobie nagrodę.
B_LogEntry (TOPIC_Arnold_Sword,"Przyniosłem miecz.");
Log_SetTopicStatus   (TOPIC_Arnold_Sword, LOG_SUCCESS);

B_GivePlayerXP (300);
B_GiveInvItems (other, self, Jumper, 1);

Info_ClearChoices (DIA_Arnold_HELLO3);

Info_AddChoice (DIA_Arnold_HELLO3, "Daj mi runę", DIA_Arnold_HELLO3_Reward_Is_Rune);
Info_AddChoice (DIA_Arnold_HELLO3, "Daj mi jakiś pancerz.", DIA_Arnold_HELLO3_Reward_Is_Armor);
};

FUNC void DIA_Arnold_HELLO3_Reward_Is_Rune()
{
AI_Output (other, self ,"DIA_Arnold_HELLO3_HELLO3_Reward_Is_Rune_15_01"); //Daj mi runę.
AI_Output (self, other ,"DIA_Arnold_HELLO3_HELLO3_Reward_Is_Rune_03_02"); //Masz runę światła.
CreateInvItems (self, ItRu_Light, 1);
B_GiveInvItems (self, other, ItRu_Light, 1);
Info_ClearChoices (DIA_Arnold_HELLO3);
};

FUNC void DIA_Arnold_HELLO3_Reward_Is_Armor()
{
AI_Output (other, self ,"DIA_Arnold_HELLO3_HELLO3_Reward_Is_Armor_15_01"); //Daj mi jakiś pancerz.
AI_Output (self, other ,"DIA_Arnold_HELLO3_HELLO3_Reward_Is_Armor_03_02"); //Trzymaj.
CreateInvItems (self, ITAR_DJG_Crawler, 1);
B_GiveInvItems (self, other, ITAR_DJG_Crawler, 1);
Info_ClearChoices (DIA_Arnold_HELLO3);
};
Zrobiłem paczkę z modem i po uruchomieniu nie mogę z nim pogadać....
 
Mój obecny sprzęt PC:
Intel core i5-4590
8 gb ram
Geforce GTX 1050Ti

Adanos

Adanos

Administrator
Szara eminencja
posty5204
Propsy3870
ProfesjaProgramista
  • Administrator
  • Szara eminencja
npctype = NPCTYPE_AMBIENT;"NPC z imieniem" nie powinien mieć typu ambient. Typ ambient oznacza, że wszyscy (zwykle bez imion, np. mieszkaniec) będą mieć taką samą opcję dialogową.

A poza tym, skompilowałeś skrypty?

Graveir

Graveir

Użytkownicy
Avatar Twilight Sparkle / Pożeracz serc
posty1275
Propsy235
ProfesjaGracz
  • Użytkownicy
  • Avatar Twilight Sparkle / Pożeracz serc
Tak.Dałem w spacerze reparse script->uruchomiłem ponownie->dałem aktualizację(zapisałem pliki ou)->reparse script i po stworzeniu moda nie mogłem z nim wg pogadać(czyli tak jakby to był potwór,z którym nie da rady wg porozmawiać)
Edit:Zmieniłem na typ FRIEND,ale dalej nic.....
Edit2:Haloo
Edit3:Temat do zamknięcia.
 
Mój obecny sprzęt PC:
Intel core i5-4590
8 gb ram
Geforce GTX 1050Ti


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