Problem z dialogami 3855 10

O temacie

Autor Sauron

Zaczęty 19.07.2011 roku

Wyświetleń 3855

Odpowiedzi 10

Sauron

Sauron

Użytkownicy
posty267
Propsy5
Profesjabrak
  • Użytkownicy
DIALOG 1

jak próbuje zosmawiać z aronem to jest tylko koniec

SKRYPT POSTACI :

instance BAU_997_Aron (Npc_Default)
{
// ------ NSC ------
name = "Aron";
guild = GIL_OUT;
id = 997;
voice = 3;
flags   = 0; //NPC_FLAG_IMMORTAL oder 0
npctype = NPCTYPE_MAIN;

// ------ Attribute ------
B_SetAttributesToChapter (self, 2); //setzt Attribute und LEVEL entsprechend dem angegebenen Kapitel (1-6)

// ------ Kampf-Taktik ------
fight_tactic = FAI_HUMAN_STRONG; // MASTER / STRONG / COWARD

// ------ Equippte Waffen ------ //Munition wird automatisch generiert, darf aber angegeben werden
EquipItem (self, ItMw_1h_Bau_Axe);

// ------ 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_Bald", Face_P_Weak_Cutter, BodyTex_P, ITAR_Bau_M);
Mdl_SetModelFatness (self, 1);
Mdl_ApplyOverlayMds (self, "Humans_Arrogance.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, 25); //Grenzen für Talent-Level liegen bei 30 und 60

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

FUNC VOID Rtn_PreStart_997 ()
{
TA_Stand_Guarding (08,00,22,00,"XXX");
    TA_Stand_Guarding (22,00,08,00,"XXX");
};

Skrypt DIALOGU:

//========================================
//-----------------> OPCJA *KONIEC*
//========================================

INSTANCE DIA_Aron_EXIT(C_INFO)
{
npc         = BAU_997_Aron;
nr              = 999;
condition = DIA_Aron_EXIT_Condition;
information = DIA_Aron_EXIT_Info;
permanent = TRUE;
description = "KONIEC";
};

FUNC INT DIA_Aron_EXIT_Condition()
{
return TRUE;
};

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

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

INSTANCE DIA_Aron_HELLO1 (C_INFO)
{
   npc          = BAU_997_Aron;
   nr       = 1;
   condition    = DIA_Aron_HELLO1_Condition;
   information  = DIA_Aron_HELLO1_Info;
   permanent = FALSE;
   description = "Witaj";
};

FUNC INT DIA_Aron_HELLO1_Condition()
{
    return TRUE;
};

FUNC VOID DIA_Aron_HELLO1_Info()
{
    AI_Output (other, self ,"DIA_Aron_HELLO1_15_01"); //Witaj
    AI_Output (self, other ,"DIA_Aron_HELLO1_03_02"); //Witam
    Info_ClearChoices (DIA_Aron_HELLO1);
    Info_AddChoice (DIA_Aron_HELLO1, "Kim jesteś?", DIA_Aron_HELLO1_HELLO2);
    Info_AddChoice (DIA_Aron_HELLO1, "Co tu robisz?", DIA_Aron_HELLO1_HELLO3);
    Info_AddChoice (DIA_Aron_HELLO1, "Mam owcze futra", DIA_Aron_HELLO1_JOB4);
    AI_StopProcessInfos (self);
};

FUNC VOID DIA_Aron_HELLO1_HELLO2()
{
    AI_Output (other, self ,"DIA_Aron_HELLO1_HELLO2_15_01"); //Kim jesteś?
    AI_Output (self, other ,"DIA_Aron_HELLO1_HELLO2_03_02"); //Nazywam się Aron
};

FUNC VOID DIA_Aron_HELLO1_HELLO3()
{
    AI_Output (other, self ,"DIA_Aron_HELLO1_HELLO3_15_01"); //Co tu robisz?
    AI_Output (self, other ,"DIA_Aron_HELLO1_HELLO3_03_02"); //Czekam aż ktoś taki głupi jak ty podejdzie do mnie i zada tak cholernie głupie pytanie
    AI_Output (other, self ,"DIA_Aron_HELLO1_HELLO3_15_03"); //Wybacz jestem nowy
    AI_Output (self, other ,"DIA_Aron_HELLO1_HELLO3_03_04"); //Właśnie cholera widze

    Info_ClearChoices (DIA_Aron_HELLO1);
    Info_AddChoice (DIA_Aron_HELLO1, "Szukam pracy", DIA_Aron_HELLO1_HELLO3_JOB);
};

FUNC VOID DIA_Aron_HELLO1_HELLO3_JOB()
{
    AI_Output (other, self ,"DIA_Aron_HELLO1_JOB1_15_01"); //Szukam pracy
    AI_Output (self, other ,"DIA_Aron_HELLO1_JOB1_03_02"); //To dobrze się składa potrzebuje 10 owczych futer
    AI_Output (other, self ,"DIA_Aron_HELLO1_JOB1_15_03"); //Ach to dlatego jesteś taki ponury
    AI_Output (self, other ,"DIA_Aron_HELLO1_JOB1_03_04"); //A w pysk byś nie chciał?
    Info_ClearChoices (DIA_Aron_HELLO1);
    Info_AddChoice (DIA_Aron_HELLO1, "To sprubuj mnie walnąć", DIA_Aron_HELLO1_HELLO3_JOB_FIGHT);
    Info_AddChoice (DIA_Aron_HELLO1, "Przyniosę ci owcze futra", DIA_Aron_HELLO1_HELLO3_JOB_JOB2);
    Info_AddChoice (DIA_Aron_HELLO1, "Nie mam ochoty przynosić ci tych futer", DIA_Aron_HELLO1_HELLO3_JOB_JOB_NONE);
};

FUNC VOID DIA_Aron_HELLO1_HELLO3_JOB_FIGHT()
{
    AI_Output (other, self ,"DIA_Aron_HELLO1_FIGHT_15_01"); //To spóbuj mnie walnąć
    AI_StopProcessInfos (self);
    B_Attack (self, other, AR_NONE,1);
};

FUNC VOID DIA_Aron_HELLO1_HELLO3_JOB_JOB2()
{
    AI_Output (other, self ,"DIA_Aron_HELLO1_JOB2_15_01"); //Przyniosę ci owcze futra
    AI_Output (self, other ,"DIA_Aron_HELLO1_JOB2_03_02"); //Dobrze tylko się pospiesz
    MIS_Aron_Sheeps = LOG_RUNNING;

    Log_CreateTopic            (TOPIC_Aron_Sheeps, LOG_MISSION);
    Log_SetTopicStatus   (TOPIC_Aron_Sheeps, LOG_RUNNING);
    B_LogEntry                 (TOPIC_Aron_Sheeps,"Aron chcę żebym mu przyniósł 10 owczych futer.");
};

FUNC VOID DIA_Aron_HELLO1_HELLO3_JOB_JOB_NONE()
{
    AI_Output (other, self ,"DIA_Aron_HELLO1_JOB_NONE_15_01"); //Nie mam ochoty przynosić ci tych futer
    AI_Output (self, other ,"DIA_Aron_HELLO1_JOB_NONE_03_02"); //Nie to nie
    Info_ClearChoices (DIA_Aron_HELLO1);
};

FUNC VOID DIA_Aron_HELLO1_JOB4()
{
    if (Npc_HasItems (other, ItAt_SheepFur) >=10)
    {
        AI_Output (other, self ,"DIA_Aron_HELLO1_JOB4_15_01"); //Mam owcze futra
        B_GiveInvItems (other, self, ItAt_SheepFur, 10);
        AI_Output (self, other ,"DIA_Aron_HELLO1_JOB4_03_02"); //Dobrze oto twoja zapłata
        CreateInvItems (self, ItMi_Gold, 100);
        B_GiveInvItems (self, other, ItMi_Gold, 100);
        B_LogEntry                 (TOPIC_Aron_Sheeps,"Dałem Aronowi owcze futra.");
        Log_SetTopicStatus   (TOPIC_Aron_Sheeps, LOG_SUCCESS);
        MIS_Aron_Sheeps = LOG_SUCCESS;

        B_GivePlayerXP (200);
    }
    else
    {
        AI_Output (self, other ,"DIA_Aron_HELLO1_JOB4_03_03"); //Jak nie masz owczych futer to nie zawracaj mi dupy!
        Info_ClearChoices (DIA_Aron_HELLO1);
    };
};


DIALOG 2

błąd więcej nie pamiętam  : )

Skrypt postaci:

instance BAU_996_Lethar (Npc_Default)
{
// ------ NSC ------
name = "Lethar";
guild = GIL_OUT;
id = 996;
voice = 3;
flags   = 0; //NPC_FLAG_IMMORTAL oder 0
npctype = NPCTYPE_MAIN;

// ------ Attribute ------
B_SetAttributesToChapter (self, 2); //setzt Attribute und LEVEL entsprechend dem angegebenen Kapitel (1-6)

// ------ Kampf-Taktik ------
fight_tactic = FAI_HUMAN_STRONG; // MASTER / STRONG / COWARD

// ------ Equippte Waffen ------ //Munition wird automatisch generiert, darf aber angegeben werden
EquipItem (self, ItMw_1h_Bau_Axe);

// ------ 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_FatBald", Face_N_NormalBart_Grim, BodyTex_N, ITAR_Bau_M);
Mdl_SetModelFatness (self, 0);
Mdl_ApplyOverlayMds (self, "Humans_Relaxed.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, 25); //Grenzen für Talent-Level liegen bei 30 und 60

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

FUNC VOID Rtn_PreStart_996 ()
{
TA_Stand_Guarding (08,00,22,00,"XXX");
    TA_Stand_Guarding (22,00,08,00,"XXX");
};


SKRYPT DIALOGU:

//========================================
//-----------------> OPCJA *KONIEC*
//========================================

INSTANCE DIA_Lethar_EXIT(C_INFO)
{
npc         = BAU_996_Lethar;
nr              = 1000;
condition = DIA_Lethar_EXIT_Condition;
information = DIA_Lethar_EXIT_Info;
permanent = TRUE;
description = "KONIEC";
};

FUNC INT DIA_Lethar_EXIT_Condition()
{
return TRUE;
};

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

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

INSTANCE DIA_Lethar_HELLO1 (C_INFO)
{
   npc          = BAU_996_Lethar;
   nr       = 1;
   condition    = DIA_Lethar_HELLO1_Condition;
   information  = DIA_Lethar_HELLO1_Info;
   permanent = FALSE;
   description = "Witam";
};

FUNC INT DIA_Lethar_HELLO1_Condition()
{
    return TRUE;
};

FUNC VOID DIA_Lethar_HELLO1_Info()
{
    AI_Output (other, self ,"DIA_Lethar_HELLO1_15_01"); //Witam
    AI_Output (self, other ,"DIA_Lethar_HELLO1_03_02"); //Witam

    Info_ClearChoices (DIA_Lethar_HELLO1);
    Info_AddChoice (DIA_Lethar_HELLO1, "Kim jesteś?", DIA_Lethar_HELLO1_HELLO2);
    Info_AddChoice (DIA_Lethar_HELLO1, "Możesz mi sprzedać owcze futra", DIA_Lethar_HELLO1_SHEEP);
};

FUNC VOID DIA_Lethar_HELLO1_HELLO2()
{
    AI_Output (other, self ,"DIA_Lethar_HELLO1_HELLO2_15_01"); //Kim jesteś?
    AI_Output (self, other ,"DIA_Lethar_HELLO1_HELLO2_03_02"); //Nazywam się Lethar
};

FUNC VOID DIA_Lethar_HELLO1_SHEEP()
{
    if (Npc_KnowsInfo (other, DIA_Aron_HELLO1_HELLO3_JOB_JOB2))
    {
        AI_Output (other, self ,"DIA_Lethar_HELLO1_SHEEP_15_01"); //Możesz mi sprzedać 10 owczych futer
        AI_Output (self, other ,"DIA_Lethar_HELLO1_SHEEP_03_02"); //Cholera chyba mam troche futer
        AI_Output (other, self ,"DIA_Lethar_HELLO1_SHEEP_15_03"); //Zapłace ci 50 sztuk złota
        AI_Output (self, other ,"DIA_Lethar_HELLO1_SHEEP_03_04"); //A przypomiałem sobie mam owcze futra
        if (Npc_HasItems (other, ItMi_Gold) >=50)
        {
            AI_Output (other, self ,"DIA_Lethar_HELLO1_SHEEP_15_05"); //Mam zapłate
            B_GiveInvItems (other, self, ItMi_Gold, 50);
            AI_Output (self, other ,"DIA_Lethar_HELLO1_SHEEP_03_06"); //Oto futra
            CreateInvItems (self, ItAt_SheepFur, 10);
            B_GiveInvItems (self, other, ItAt_SheepFur, 10);
        };
        AI_StopProcessInfos (self);
};

 
Ash nazg durbatulûk, ash nazg gimbatul,
ash nazg thrakatulûk agh burzum-ishi krimpatul.

Codeman

Codeman

Użytkownicy
posty53
Propsy33
  • Użytkownicy

Codeman

Problem z dialogami
#1 2011-07-19, 13:27(Ostatnia zmiana: 2011-07-19, 13:45)
       TA_Stand_Guarding               (08,00,22,00,"XXX");
    TA_Stand_Guarding           (22,00,08,00,"XXX");
W miejscu XXX dopisz waipoint'a.
Spróbuj tak zrobić chociaż wątpię by pomogło. Najlepiej jest napisać skrypt dialogu sam, lub wzorować się na gotowym bo tutaj widać że 100% makerem robiony dialog.
Albo jeśli to nie pomoże zupdatuj skrypty w spacerze i stwórz OU.

Trening czyni mistrza, w końcu uczymy się na własnych błędach :D
 

Sauron

Sauron

Użytkownicy
posty267
Propsy5
Profesjabrak
  • Użytkownicy

Sauron

Problem z dialogami
#2 2011-07-19, 14:03(Ostatnia zmiana: 2011-07-19, 14:04)
TEN SKRYPT EDYTOWAŁEM OD TILLA ,a bŁĘdzy są z dialogiem
 
Ash nazg durbatulûk, ash nazg gimbatul,
ash nazg thrakatulûk agh burzum-ishi krimpatul.

Codeman

Codeman

Użytkownicy
posty53
Propsy33
  • Użytkownicy
No to sorry, najwyraźniej musisz zsparsować skrypty w spacerze. Jeśli nie wiesz jak poszukaj jakiś tutków.
 

Sauron

Sauron

Użytkownicy
posty267
Propsy5
Profesjabrak
  • Użytkownicy
właśnie teraz se przypomniałem że przy jednym dialogu nie sparsowałem skrypty  :  )
 
Ash nazg durbatulûk, ash nazg gimbatul,
ash nazg thrakatulûk agh burzum-ishi krimpatul.

Codeman

Codeman

Użytkownicy
posty53
Propsy33
  • Użytkownicy
Widzisz i po kłopocie :)
A ty mi z CAPSEM wyjechałeś:D
 

Sauron

Sauron

Użytkownicy
posty267
Propsy5
Profesjabrak
  • Użytkownicy
TYLKO ŻE ZOSTAŁ JESZCZE JEDEN DIALOG (TEN Z BŁĘDEM W LINIJCE około 80). (znowu CAPSLOCK   :lol2:     )
 
Ash nazg durbatulûk, ash nazg gimbatul,
ash nazg thrakatulûk agh burzum-ishi krimpatul.

Codeman

Codeman

Użytkownicy
posty53
Propsy33
  • Użytkownicy
Jaki błąd wywala ???
 

Sauron

Sauron

Użytkownicy
posty267
Propsy5
Profesjabrak
  • Użytkownicy

Sauron

Problem z dialogami
#8 2011-07-21, 15:50(Ostatnia zmiana: 2011-07-21, 16:05)
UNKNOWN IENTIFIER : (LINE 80) w dialogu z letharem

EDIT: ta linijka jest o 2 linijki na dół od kramry ze średnikiem.

 
Ash nazg durbatulûk, ash nazg gimbatul,
ash nazg thrakatulûk agh burzum-ishi krimpatul.

Codeman

Codeman

Użytkownicy
posty53
Propsy33
  • Użytkownicy

Codeman

Problem z dialogami
#9 2011-07-21, 17:49(Ostatnia zmiana: 2011-07-21, 17:51)
Usuń znak "};" który jest pomiędzy liniami

           B_GiveInvItems (self, other, ItAt_SheepFur, 10);
        }; //TO USUŃ :)
        AI_StopProcessInfos     (self);
 

Sauron

Sauron

Użytkownicy
posty267
Propsy5
Profesjabrak
  • Użytkownicy

Sauron

Problem z dialogami
#10 2011-07-21, 18:41(Ostatnia zmiana: 2011-07-21, 18:42)
Sam naprawiłem potem był drugi błąd
na końcu miały być dwie klamry ze średnikiem

TEMAT DO ZAMKNIĘCIA
 
Ash nazg durbatulûk, ash nazg gimbatul,
ash nazg thrakatulûk agh burzum-ishi krimpatul.


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