prowadzenie beziego przez NPC 2637 3

O temacie

Autor RafalBudzis

Zaczęty 24.01.2010 roku

Wyświetleń 2637

Odpowiedzi 3

RafalBudzis

RafalBudzis

Użytkownicy
posty1967
Propsy808
ProfesjaSkrypter
  • Użytkownicy

RafalBudzis

prowadzenie beziego przez NPC
2010-01-24, 14:14(Ostatnia zmiana: 2010-01-24, 14:19)
zrobiłem skrypt na podstawie skrypty NOV_1330_...
ale nie wiem jak go poprawic zeby mój NPC VLK_5008_rafal prowadził nas do punktu SPAWN_MOLERAT02_SPAWN01

oto kod dialogów


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

INSTANCE DIA_Rafal_Exit (C_INFO)
{
   npc         = Vlk_5008_Rafal;
   nr         = 999;
   condition   = DIA_Rafal_Exit_Condition;
   information   = DIA_Rafal_Exit_Info;
   permanent   = 1;
   description = DIALOG_ENDE;
};                      

FUNC INT DIA_Rafal_Exit_Condition()
{
   return 1;
};

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

// **************************************************
//             Was machst du?
// **************************************************

INSTANCE DIA_Rafal_Hello (C_INFO)
{
   npc            = Vlk_5008_Rafal;
   nr            = 1;
   condition      = DIA_Rafal_Hello_Condition;
   information      = DIA_Rafal_Hello_Info;
   permanent      = 0;
   description      = "Cześć!";
};

FUNC INT DIA_Rafal_Hello_Condition()
{   
   return 1;
};

FUNC VOID DIA_Rafal_Hello_Info()
{
   AI_Output (other, self,"DIA_Rafal_Hello_15_00"); //Cześć! Myślałem ze nie przerzyjemy upadku a jednak
   AI_Output (self, other,"DIA_Rafal_Hello_03_01"); //Cóż, teraz już jesteśmy w koloni
   AI_Output (other, self,"DIA_Rafal_Hello_15_02"); //Masz racje jak my sobie poradzimy !!!
   AI_Output (self, other,"DIA_Rafal_Hello_03_03"); //Spokojnie jestem jednym z magów tworzacych tę bariere
   AI_Output (self, other,"DIA_Rafal_Hello_03_04"); //osodzono MNIE o naruszenie struktury magicznej bariery zdorzyłem uciec a i tak trafiłem tutaj
   AI_Output (other, self,"DIA_Rafal_Hello_15_05"); //Masz jakiś pomysł od czego zacząć ?
   AI_Output (self, other,"DIA_Rafal_Hello_03_06"); //najlepiej znajdzi nam jakąs broń bo kilofem dużo nie zdziałamy

   Log_CreateTopic              (CH1_swordlol,   LOG_MISSION);
   Log_SetTopicStatus      (CH1_swordlol,   LOG_RUNNING);
   B_LogEntry         (CH1_swordlol,   "Musze znalesc dla mnie i maga rafała jakies miecze !!!");

};



INSTANCE DIA_Rafal_zadanie (C_INFO)
{
   npc            = Vlk_5008_Rafal;
   nr            = 2;
   condition      = DIA_Rafal_zadanie_Condition;
   information      = DIA_Rafal_zadanie_Info;
   permanent      = 0;
   description      = "mam bron";
};

FUNC INT DIA_Rafal_zadanie_Condition()
{
if (npc_knowsInfo(other, DIA_Rafal_Hello))
{
   
   return TRUE;
};
};

FUNC VOID DIA_Rafal_zadanie_Info()
{
   AI_Output (other, self,"DIA_Rafal_zadanie_15_00"); //Mam broń !
   AI_Output (self, other,"DIA_Rafal_zadanie_03_01"); //ok pokarz co tam masz
   
   Info_ClearChoices   (DIA_Rafal_zadanie);
   Info_AddChoice      (DIA_Rafal_zadanie,DIALOG_BACK               ,   DIA_Rafal_zadanie_BACK);
   Info_AddChoice      (DIA_Rafal_zadanie,"prosze miecz"            ,   DIA_Rafal_zadanie_OK);
   Info_AddChoice      (DIA_Rafal_zadanie,"oto runa"               ,   DIA_Rafal_zadanie_WO);
   Info_AddChoice      (DIA_Rafal_zadanie,"nie moge niczego znaleść"         ,   DIA_Rafal_zadanie_FOKUS);
};

func void DIA_Rafal_zadanie_BACK ()
{
   Info_ClearChoices   (DIA_Rafal_zadanie);
};

func void DIA_Rafal_zadanie_OK ()
{
if (npc_hasitems (other,ItMw_1H_Sword_Short_01) >=1)
{
   AI_Output         (other, self,"Sit_2_PSI_Rafal_zadanie_OK_15_01"); //prosze miecz
   AI_Output         (self, other,"Sit_2_PSI_Rafal_zadanie_OK_03_02"); //dzieki to mozemy zacząć
   AI_Output         (other, self,"Sit_2_PSI_Rafal_zadanie_OK_15_03"); //Zacząć ?
   AI_Output         (self, other,"Sit_2_PSI_Rafal_zadanie_OK_03_04"); //NIEWAZNE
   b_giveinvitems         (other, self, ItMw_1H_Sword_Short_01,1);
   B_LogEntry         (CH1_swordlol,   "Oddałem Rafałowi miecz mam nadzieje ze wyciągnie nas z tad");
        Log_SetTopicStatus      (CH1_swordlol,   LOG_SUCCESS);
   B_GiveXP           (XP_DeliverSecondFocus);
   
};
};

func void DIA_Rafal_zadanie_WO ()
{

if (npc_hasitems (other,ItArRuneFireball) >=1)
{
   AI_Output         (other, self,"Sit_2_PSI_Rafal_zadanie_WO_15_01"); //Prosze oto runa.
   AI_Output         (self, other,"Sit_2_PSI_Rafal_zadanie_WO_03_02"); //o cholera jak ci sie udało ja zdobyć. zresztą niewarzne.
   AI_Output         (other, self,"Sit_2_PSI_Rafal_zadanie_WO_15_03"); //to proste udało mi sie okraści tego maga co wreczał mi list he he he.
   AI_Output         (self, other,"Sit_2_PSI_Rafal_zadanie_WO_03_04"); //dobra idzmy poszukac miejsca na obuz chodz za mną
   b_giveinvitems         (other, self, ItArRuneFireball,1);
   B_LogEntry         (CH1_swordlol,   "Oddałem Rafałowi rune teraz musimy znaleśc miejsce na obuz ciekawe ila nam to zajmie");
        Log_SetTopicStatus      (CH1_swordlol,   LOG_SUCCESS);
   B_GiveXP           (XP_DeliverSecondFocus);
   Log_CreateTopic              (CH1_naszoboz,   LOG_MISSION);
   Log_SetTopicStatus      (CH1_naszoboz,   LOG_RUNNING);
   B_LogEntry         (CH1_naszoboz,   "Musze znaleść dobre miejsce na obuz takie gdzie mogligysmy sie skrycz z tajemniczym magiem");
};
};

func void DIA_Rafal_zadanie_FOKUS ()
{
   AI_Output         (other, self,"Sit_2_PSI_Rafal_zadanie_FOKUS_15_01"); //Dlaczego ten kamień jest taki ważny?
   AI_Output         (self, other,"Sit_2_PSI_Rafal_zadanie_FOKUS_03_02"); //Ten magiczny artefakt
   AI_Output         (self, other,"Sit_2_PSI_Rafal_zadanie_FOKUS_03_03"); //To jeden z pięciu kamieni
   AI_Output         (self, other,"Sit_2_PSI_Rafal_zadanie_FOKUS_03_04"); //Jedna z moich wizji
   AI_Output         (other, self,"Sit_2_PSI_Rafal_zadanie_FOKUS_15_05"); //To musiała być niezwykle
   AI_Output         (self, other,"Sit_2_PSI_Rafal_zadanie_FOKUS_03_06"); //Zesłał mi ją sam Śniący!
};



FUNC VOID  DIA_Rafal_GotoPSI_Info()
{
   AI_Output (other, self,"DIA_Rafal_GotoPSI_15_00"); //Prowadz !!!
   if (Psi_Walk == 0)
   {
      if (Npc_GetTrueGuild(hero) == GIL_NONE)
      {
         Log_SetTopicStatus   (CH1_naszoboz,   LOG_RUNNING);
      };
      B_LogEntry            (CH1_naszoboz, "Mag rafał wyrusza na poszukiwanie obozu !!");
      Psi_Walk   = 1;
   };
   AI_Output (self, other,"DIA_Rafal_GotoPSI_03_01"); //To wspaniale. Chodź za mną!
   
   Rafal_GotoPSI_Day = Wld_GetDay();
   self.aivar[AIV_PARTYMEMBER] = TRUE;
   
   Npc_SetRefuseTalk (self, 300);
   
   AI_StopProcessInfos   (self);
   
   Npc_SetPermAttitude(self,ATT_FRIENDLY);
   Npc_ExchangeRoutine(self,"GUIDE");
};
[/codebox]

a tu postaci NPC VLK_5008_rafal

[codebox]instance VLK_5008_Rafal (Npc_Default)
{
   //-------- primary data --------
   
   name =                     "Rafal";
   npctype =                  npctype_mine_ambient;
   guild =                     GIL_NONE;      
   level =                     3;
   
   
   voice =                     3;
   id =                     5008;


   //-------- abilities --------
   
   attribute[ATR_STRENGTH] =      15;
   attribute[ATR_DEXTERITY] =      10;
   attribute[ATR_MANA_MAX] =      100;
   attribute[ATR_MANA] =         100;
   attribute[ATR_HITPOINTS_MAX] =   76;
   attribute[ATR_HITPOINTS] =      76;

   //-------- visuals --------
   Npc_SetTalentSkill      ( self, NPC_TALENT_MAGE,      6);
   //             animations
   Mdl_SetVisual      (self,"HUMANS.MDS");
   Mdl_ApplyOverlayMds   (self,"Humans_Tired.mds");
   //            body mesh,            head mesh,            hairmesh,   face-tex,   hair-tex,   skin   
   Mdl_SetVisualBody (self,"hum_body_Naked0",3,1,"Hum_Head_Fighter", 70,  3, VLK_ARMOR_L);

   B_Scale (self);
   Mdl_SetModelFatness (self, 0);
   
   fight_tactic   =   FAI_HUMAN_COWARD;
   //-------- Talents  --------                                    

   Npc_SetTalentSkill (self, NPC_TALENT_1H,1);
   
   //-------- inventory --------                                    

   EquipItem    (self,ItArRuneWindfist);

   CreateInvItem (self, ItMwPickaxe);
   CreateInvItem (self, ItFoLoaf);
   CreateInvItem (self, ItFoBeer);
   CreateInvItem (self, ItLsTorch);
   CreateInvItems(self,ItFo_mutton_01,20);   
   CreateInvItems(self,ItFoApple,5);
   CreateInvItems(self,ItFoLoaf,5);
   CreateInvItems(self,ItFoMutton,10);
   CreateInvItems(self,ItFoMuttonRaw,20);
   CreateInvItems(self,ItFoCheese,5);
   CreateInvItems(self,ItFoRice,5);
   CreateInvItems(self,ItFoSoup,5);
   CreateInvItems(self,ItFoMeatbugragout,5);
   CreateInvItems(self,ItFoCrawlersoup,5);
   CreateInvItems(self,ItFoBooze,10);
   CreateInvItems(self,ItFoWine,5);
   CreateInvItems(self,ItFo_wineberrys_01,5);
   CreateInvItems(self,ItFoBeer,5);
   CreateInvItem(self,ItMw_1H_Sword_Short_01);
   CreateInvItem(self,ItArRuneFireball);


   //-------------Daily Routine-------------
   daily_routine = Rtn_FMstart_5008;
};

FUNC VOID Rtn_FMstart_5008 ()   //FM
{
   TA_SitAround      (00,00,23,00,"WP_INTRO_WI06");
   TA_SitAround      (23,00,24,00,"WP_INTRO_WI06");
};

FUNC VOID Rtn_Guide_5008 ()
{
   TA_GuidePC (08,00,20,00,"SPAWN_MOLERAT02_SPAWN01");
   TA_GuidePC (20,00,08,00,"SPAWN_MOLERAT02_SPAWN01");
};

[/codebox]

nie patrzcie na ortografie tylko na dialog o dawaniu runy kula ognia !!!!
Dzięki za wszelkie odpowiedzi

fifka

fifka

DreamVader
posty563
Propsy50
ProfesjaTłumacz
  • DreamVader
hmm Zobacz skrypt tego nowicjusza co jest w starym obozie na targowisku. w jego skrypcie dialogów to jest.
 
Naprawdę dokopałeś się do postów typa nieaktywnego na forum od 10 lat? Weź wyjdź z domu.

RafalBudzis

RafalBudzis

Użytkownicy
posty1967
Propsy808
ProfesjaSkrypter
  • Użytkownicy
no a co ja napisałem ;p  moze nie zrozumiale "zrobiłem skrypt na podstawie skrypty NOV_1330_..." to jest skrypt tego z targowiska dokleiłem to co ma być na końcu tych 2 skryptów co dałem ale nie działa !!! jak to naprawić

Patrzcie końcówki skryptów

z góry dzięki za pomoc

RafalBudzis

RafalBudzis

Użytkownicy
posty1967
Propsy808
ProfesjaSkrypter
  • Użytkownicy
ok już sobie poradziłem okazało się ze wystarczy dodać to :
Npc_ExchangeRoutine(self,"GUIDE");

DO ZAMKNIĘCIA


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