[Gothic II] Dodawanie postaci. Problem. 2556 1

O temacie

Autor Mooriss

Zaczęty 15.08.2010 roku

Wyświetleń 2556

Odpowiedzi 1

Mooriss

Mooriss

Użytkownicy
posty54
  • Użytkownicy
Witam, siemka itd.
Próbuję zrobić moda, mam 52NPC i dialogi do nich ( robiłem, kiedy miałem odcięty internet. )
Skrypty postaci nie mają, żadnego błędu. Dajmy na to SLD_888_Kasztan ( nazwa pliku )
[Klikając w spoiler otwierasz dialog postaci]
Spoiler

//*********************************************************************
//   Info EXIT
//*********************************************************************
INSTANCE DIA_SLD_888_Kasztan_EXIT   (C_INFO)
{
   npc         = SLD_888_Kasztan;
   nr          = 888;
   condition   = DIA_SLD_888_Kasztan_EXIT_Condition;
   information = DIA_SLD_888_Kasztan_EXIT_Info;
   permanent   = TRUE;
   description = DIALOG_ENDE;
};

FUNC INT DIA_SLD_888_Kasztan_EXIT_Condition()
{
   return TRUE;
};

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

//*********************************************************************
//   Info Hello
//*********************************************************************
INSTANCE DIA_SLD_888_Kasztan_powitanie   (C_INFO)
{
   npc         = SLD_888_Kasztan;
   nr          = 1;
   condition   = DIA_SLD_888_Kasztan_powitanie_Condition;
   information = DIA_SLD_888_Kasztan_powitanie_Info;
   permanent   = FALSE;
   description = "Kim jesteś ?";
};

FUNC INT DIA_SLD_888_Kasztan_powitanie_Condition()
{
   return TRUE;
};

FUNC VOID DIA_SLD_888_Kasztan_powitanie_Info()
{
   AI_Output (other,self ,"DIA_SLD_888_Kasztan_powitanie_15_00"); //Kim jesteś ?
   AI_Output (self ,other,"DIA_SLD_888_Kasztan_powitanie_55_01"); //Jestem Olaf, ale każdy mówi na mnie kasztan. Jestem, także
   AI_Output (self ,other,"DIA_SLD_888_Kasztan_powitanie_55_02"); //przywódcą najemników, którzy nadal nie poddają się wojską
   AI_Output (self ,other,"DIA_SLD_888_Kasztan_powitanie_55_03"); //Króla... Wybił wszystkich na Khorinis przeklęty bydlak!
   AI_Output (self ,other,"DIA_SLD_888_Kasztan_powitanie_55_04"); //Mamy także mały oddział zwiadowczy pod miastem... Jest to
   AI_Output (self ,other,"DIA_SLD_888_Kasztan_powitanie_55_05"); //około 3 osób... Jeżeli jeszcze żyją...
   AI_Output (other,self,"DIA_SLD_888_Kasztan_powitanie_15_06"); //Ale mówiłeś, że wybił wszystkich.
   AI_Output (self ,other,"DIA_SLD_888_Kasztan_powitanie_55_07"); //Myślałeś, że wybił najbogatszych obywateli i swoich
   AI_Output (self ,other,"DIA_SLD_888_Kasztan_powitanie_55_08"); //ludzi? Ha! Gdybyś zapłacił paladynom 50tys. to
   AI_Output (self ,other,"DIA_SLD_888_Kasztan_powitanie_55_09"); //oddadzą Ci nawet własny statek! Głupi ludzie...
   AI_Output (other,self,"DIA_SLD_888_Kasztan_powitanie_15_10"); //Hmm.. Macie jakiegoś szpiega wśród Paladynów ?
   AI_Output (self ,other,"DIA_SLD_888_Kasztan_powitanie_55_11"); //Był kiedyś jeden śmiałek, ale wątpie, żeby
   AI_Output (self ,other,"DIA_SLD_888_Kasztan_powitanie_55_12"); //zdołał do nich dołączyć.. Najpewniej wybili go zanim zdążył
   AI_Output (self ,other,"DIA_SLD_888_Kasztan_powitanie_55_13"); //wejść do miasta... Bydlaki! Mamy jeszcze jednego maga
   AI_Output (self ,other,"DIA_SLD_888_Kasztan_powitanie_55_14"); //wody, ale nie wiadomo gdzie się podziewa.. Szedł na samotną
   AI_Output (self ,other,"DIA_SLD_888_Kasztan_powitanie_55_15"); //misję.. Chciał skontaktować się z królem, za pomocą kamienii
   AI_Output (self ,other,"DIA_SLD_888_Kasztan_powitanie_55_16"); //ogniskujących.. Miał je Max - może On z nim rozmawiał. Nie wiem
   AI_Output (self ,other,"DIA_SLD_888_Kasztan_powitanie_55_17"); //na pewno... Dobra, koniec pogaduszek.

};

//*********************************************************************
//   Quest
//*********************************************************************
INSTANCE DIA_SLD_888_Kasztan_quest   (C_INFO)
{
   npc         = SLD_888_Kasztan;
   nr          = 2;
   condition   = DIA_SLD_888_Kasztan_quest_Condition;
   information = DIA_SLD_888_Kasztan_quest_Info;
   permanent   = FALSE;
   description = "Mogę coś dla Ciebie zrobić ?";
};

FUNC INT DIA_SLD_888_Kasztan_quest_Condition()
{
if (Npc_KnowsInfo (other,DIA_SLD_888_Kasztan))
{
   return TRUE;
};
};

FUNC VOID DIA_SLD_888_Kasztan_quest_Info()
{
   AI_Output (other,self ,"DIA_SLD_888_Kasztan_quest_15_00"); //Mogę coś dla Ciebie zrobić?
   AI_Output (self ,other,"DIA_SLD_888_Kasztan_quest_55_01"); //Tak. W zasadzie jest jedna taka sprawa... Musisz przynieść
   AI_Output (self ,other,"DIA_SLD_888_Kasztan_quest_55_02"); //nam 10 sztuk surowego mięsa. To nie będzie takie trudne prawda ?
   AI_Output (self ,other,"DIA_SLD_888_Kasztan_quest_55_03"); //W tym tutaj domu, przy łóżku, leży typowy miecz oraz skórzany pancerz.
   AI_Output (self ,other,"DIA_SLD_888_Kasztan_quest_55_04"); //Niestety - nie mamy łuku do polowań, więc musisz pozostać przy
   AI_Output (self ,other,"DIA_SLD_888_Kasztan_quest_55_05"); //walce w zwarciu... Uważaj tylko, na to, aby te bestie Cię nie otoczyły...
   AI_Output (self ,other,"DIA_SLD_888_Kasztan_quest_55_06"); //Naprawdę - skończyło by się to katastrofą ... Więc idź!
   AI_Output (self ,other,"DIA_SLD_888_Kasztan_quest_55_07"); //A! I jeżeli pomyślnie wykonasz zadanie dostaniesz
   AI_Output (self ,other,"DIA_SLD_888_Kasztan_quest_55_08"); //2500 sztuk złota.. Jeżeli wypłyniesz kiedyś na
   AI_Output (self ,other,"DIA_SLD_888_Kasztan_quest_55_09"); //kontynent, lub Khorinis znów będzie tętniło życiem, to
   AI_Output (self ,other,"DIA_SLD_888_Kasztan_quest_55_10"); //będziesz miał niezły majątek! Za każde zadanie otrzymasz
   AI_Output (self ,other,"DIA_SLD_888_Kasztan_quest_55_11"); //po dwóch tysiącach monet w górę! Więc opłaca się
   AI_Output (self ,other,"DIA_SLD_888_Kasztan_quest_55_12"); //pracować dla nas - najemników. Ale pamiętaj :
   AI_Output (self ,other,"DIA_SLD_888_Kasztan_quest_55_13"); //Jeżeli zginiesz, to nie będzie to nasza wina.
   AI_Output (other,self ,"DIA_SLD_888_Kasztan_quest_55_14"); //Dobra - Idę, zanim się rozmyślę.

        Log_CreateTopic (TOPIC_Mieso, LOG_MISSION);
        Log_SetTopicStatus (TOPIC_Mieso, LOG_RUNNING);
        B_LogEntry (TOPIC_Mieso,"Najemnicy nie mają co jeść i potrzebują miejsca. Za farmą jest pełno ścierwojadów.");

};

//*********************************************************************
//   Koniec Questa
//*********************************************************************
INSTANCE DIA_SLD_888_Kasztan_miestomam   (C_INFO)
{
   npc         = SLD_888_Kasztan;
   nr          = 2;
   condition   = DIA_SLD_888_Kasztan_miestomam_Condition;
   information = DIA_SLD_888_Kasztan_miestomam_Info;
   permanent   = FALSE;
   description = "Proszę! Oto 10 sztuk mięsa.";
};

FUNC INT DIA_SLD_888_Kasztan_miestomam_Condition()
{
if (Npc_KnowsInfo (other,DIA_SLD_888_quest))
   && (npc_hasitems (other, ITFOMUTTONRAW) >= 10)
{
   return TRUE;
};
};

FUNC VOID DIA_SLD_888_Kasztan_miestomam_Info()
{
   AI_Output (other,self ,"DIA_SLD_888_Kasztan_miestomam_15_00"); //Proszę! Oto 10 kawałków mięsa!
   AI_Output (self ,other,"DIA_SLD_888_Kasztan_miestomam_55_01"); //O! Tego nam było trzeba!
   AI_Output (self ,other,"DIA_SLD_888_Kasztan_miestomam_55_02"); //Oto Twoje 2500 sztuk złota! Można na Ciebie liczyć!
   AI_Output (self ,other,"DIA_SLD_888_Kasztan_miestomam_55_02"); //Popytaj innych chłopaków o zadania. Powiedz, że ja Cię przysyłam.

        B_giveinvitems (other, self, ITFOMUTTONRAW, 10);
        Createinvitems (self, itmi_gold, 2500);
        B_giveinvitems (self, other, ItMi_Gold, 2500);
        B_LogEntry (TOPIC_Mieso,"Najemnicy otrzymali zapasy żywności, a ja dostałem 2500 Sztuk Złota! To nie lada interes!");
        Log_SetTopicStatus (TOPIC_Mieso, LOG_SUCCESS);

};

Skrypt:
Spoiler

instance SLD_888_Kasztan (Npc_Default)
{
   // ------ NSC ------
   name       = "Kasztan";
   guild       = GIL_SLD;
   id          = 888;
   voice       = 11;
   flags       = 2;                              //NPC_FLAG_IMMORTAL oder 0
   npctype      = NPCTYPE_MAIN;
   
   // ------ Attribute ------
   B_SetAttributesToChapter (self, 5);                                                   //setzt Attribute und LEVEL entsprechend dem angegebenen Kapitel (1-6)
      
   // ------ Kampf-Taktik ------
   fight_tactic      = FAI_HUMAN_MASTER;   // MASTER / STRONG / NORMAL / COWARD
   
   // ------ Equippte Waffen ------                                                   //Munition wird automatisch generiert, darf aber angegeben werden
   EquipItem         (self, ItMw_1H_Pal_Sword);
   EquipItem         (self, ItRw_Sld_Bow);
   CreateInvItems       (self, ItRw_Arrow, 999);
   CreateInvItems       (self, ItFo_Stew, 1);
   
   // ------ Inventory ------
   B_CreateAmbientInv    (self);
      
   // ------ visuals ------                                                         //Muss NACH Attributen kommen, weil in B_SetNpcVisual die Breite abh. v. STR skaliert wird
   B_SetNpcVisual       (self, MALE, "Hum_Head_Pony", Face_N_Lee, BodyTex_N, ITAR_SLD_H);      
   Mdl_SetModelFatness   (self, 2);
   Mdl_ApplyOverlayMds   (self, "Humans_Militia.mds"); // Tired / Militia / Mage / Arrogance / Relaxed
   
   // ------ NSC-relevante Talente vergeben ------
   B_GiveNpcTalents (self);
   
   // ------ Kampf-Talente ------                                                      //Der enthaltene B_AddFightSkill setzt Talent-Ani abhängig von TrefferChance% - alle Kampftalente werden gleichhoch gesetzt
   B_SetFightSkills (self, 80); //Grenzen für Talent-Level liegen bei 30 und 60

   // ------ TA anmelden ------
   daily_routine       = Rtn_Start_888;
};

FUNC VOID Rtn_Start_888 ()
{
   TA_Stand_Eating   (07,00,21,00,"NW_FARM4_TILL");
   TA_Stand_ArmsCrossed    (21,00,07,00,"NW_FARM4_TILL");
};


Klikam w spacer "Napraw Skrypty" i error wyskakuje ( Błąd aplikacji "Spacer 2.6.1 PL" tam jest "Nie wysyłaj" i "Wyślij raport o błędach." :/ Jeżeli nie ten dział to proszę o przeniesienie.
 

BlackVampire

BlackVampire

Użytkownicy
posty59
Propsy5
ProfesjaGracz
  • Użytkownicy
Wydaje mi się, że to wina spacera a nie skryptów. Sprubuj z oryginalnym spacerem, a nie z tym spolszczonym.
 


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