Gothic 1 i skrypt na wrogiego npc 3427 8

O temacie

Autor Bloody Skull

Zaczęty 13.09.2015 roku

Wyświetleń 3427

Odpowiedzi 8

Bloody Skull

Bloody Skull

Użytkownicy
posty136
Propsy5
ProfesjaGrafik 2D
  • Użytkownicy
Witam!
Otóż od kilku dni tworzę moda pt: "Gothic: The World Of Quest"....
Chciałbym zrobić wrogiego npc, który jest mi potrzebny do pewnej lokacji.
Zrobiłem ów npc na podstawie Bandyty z obozu koło kanionu trolli, ale nie atakował mnie.
Oto skrypt
instance Non_3112_Joris (Npc_Default)
{
   //-------- primary data --------
   
   name =               "Joris";
   Npctype =            Npctype_ROGUE;
   guild =               GIL_NONE;     
   level =               32;
   
   voice =               7;
   id =               3111;

   //-------- abilities --------

   attribute[ATR_STRENGTH] =      40;
   attribute[ATR_DEXTERITY] =      30;
   attribute[ATR_MANA_MAX] =      0;
   attribute[ATR_MANA] =         0;
   attribute[ATR_HITPOINTS_MAX] =   184;
   attribute[ATR_HITPOINTS] =      184;

   //-------- visuals --------
   //             animations
   Mdl_SetVisual      (self,"HUMANS.MDS");
   Mdl_ApplyOverlayMds   (self,"Humans_Mage.mds");
   //         body mesh     ,bdytex,skin,head mesh     ,headtex,teethtex,ruestung   
   Mdl_SetVisualBody (self,"hum_body_Naked0", 1, 1 ,"Hum_Head_Psionic", 20,  1, ORG_ARMOR_M);
   
   B_Scale (self);   
   Mdl_SetModelFatness (self, 0);      
   
   fight_tactic   =   FAI_HUMAN_STRONG;      


   //-------- Talente --------                                   

   Npc_SetTalentSkill (self, NPC_TALENT_BOW,1);
   Npc_SetTalentSkill (self, NPC_TALENT_2H,1);
   Npc_SetTalentSkill (self, NPC_TALENT_1H,1);   

   //-------- inventory --------
                                      
   CreateInvItems (self, ItKeLockpick,1);      
   CreateInvItems(self, ItMiNugget, 15);
   CreateInvItems (self, ItFoRice,8);
   CreateInvItems (self, ItFoBooze, 3);
   CreateInvItems (self, ItLsTorch, 2);
   CreateInvItems (self, ItFo_Potion_Health_01, 2);
   CreateInvItem (self, ItMi_Stuff_Plate_01);
   CreateInvItem (self, ItMi_Stuff_Barbknife_01);
   CreateInvItem (self, ItFoLoaf);
   CreateInvItem (self, ItAt_Claws_01);      
   EquipItem (self, ItMw_1H_Mace_War_01);
   EquipItem (self, ItRw_Bow_Long_01);
   CreateInvItems (self, ItAmArrow, 20);
   
   //-------------Daily Routine-------------
   daily_routine = Rtn_start_3112;
};

FUNC VOID Rtn_start_3112 ()
{
    TA_GuardPalisade      (08,00,22,00,"BAN1");
    TA_GuardPalisade      (22,00,08,00,"BAN1");            
};

FUNC VOID Rtn_OMFull_3112 ()
{
    TA_GuardPalisade      (08,00,22,00,"BAN1");   
    TA_GuardPalisade      (22,00,08,00,"BAN1");
};

FUNC VOID Rtn_FMTaken_3112 ()
{
    TA_GuardPalisade      (08,00,22,00,"BAN1");   
    TA_GuardPalisade      (22,00,08,00,"BAN1");
};


Jestem zielony w skryptowaniu, więc proszę o wyrozumiałość :D
 

gothic1210
  • Gość
W pliku B_SetRoguesToHostile.d daj
var C_NPC Joris;   Joris   = Hlp_GetNpc(Non_3112_Joris); Npc_SetTempAttitude(Joris, ATT_HOSTILE); Npc_SetAttitude(Joris, ATT_HOSTILE);
 

Draks

Draks

Użytkownicy
Gothic 2 Nowy porządek
posty1715
Propsy766
ProfesjaGrafik 3D
  • Użytkownicy
  • Gothic 2 Nowy porządek
Nie atakował twojej postaci ponieważ masz ustawione  GIL_NONE; zmień to na GIL_BDT;
 

Splash

Splash

Moderator
posty4209
Propsy3412
ProfesjaNierób
  • Moderator
Nie atakował twojej postaci ponieważ masz ustawione  GIL_NONE; zmień to na GIL_BDT;
Spójrz na nazwę tematu.
 
Nie zajmuję się multiplayerami do Gothica. Przestańcie zawracać mi tym głowę...
Ps. Siemekk ma downa i śpi w pufie

Draks

Draks

Użytkownicy
Gothic 2 Nowy porządek
posty1715
Propsy766
ProfesjaGrafik 3D
  • Użytkownicy
  • Gothic 2 Nowy porządek
Napisał, że potrzebuję wrogiego NPC który go będzie atakował, także wystarczy mu ustawienie gildii bandyty. Przynajmniej ja to tak rozumiem.
 

gothic1210
  • Gość
Ale w g1 nie ma takiej gildii... 
 

Bloody Skull

Bloody Skull

Użytkownicy
posty136
Propsy5
ProfesjaGrafik 2D
  • Użytkownicy
W pliku B_SetRoguesToHostile.d daj
var C_NPC Joris;   Joris   = Hlp_GetNpc(Non_3112_Joris); Npc_SetTempAttitude(Joris, ATT_HOSTILE); Npc_SetAttitude(Joris, ATT_HOSTILE);

A jak chcę dodać samodzielnie taki skrypt, to muszę tylko zmienić nazwę npc?

gothic1210
  • Gość
Tworzysz zmienną c_npc, przypisujesz do niej obiekt (czyli w tym wypadku NPC) a potem już tylko ustawiasz nastawienie do gracza. Linijka którą ci podałem to szablon. Możesz go wykorzystać do jakiego tylko chcesz NPC. 
 

Bloody Skull

Bloody Skull

Użytkownicy
posty136
Propsy5
ProfesjaGrafik 2D
  • Użytkownicy


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