[G2:NK]Problem z opcją choice. 2308 4

O temacie

Autor Graveir

Zaczęty 25.12.2010 roku

Wyświetleń 2308

Odpowiedzi 4

Graveir

Graveir

Użytkownicy
Avatar Twilight Sparkle / Pożeracz serc
posty1275
Propsy235
ProfesjaGracz
  • Użytkownicy
  • Avatar Twilight Sparkle / Pożeracz serc
Witam.Mógłby ktoś sprawdzić mój skrypt dialogu i powiedzieć gdzie jest błąd?Będę wdzięczny za pomoc.
//========================================
//-----------------> OPCJA *KONIEC*
//========================================

INSTANCE DIA_Shakal_EXIT(C_INFO)
{
npc             = NONE_301_Shakal;
nr              = 999;
condition = DIA_Shakal_EXIT_Condition;
information = DIA_Shakal_EXIT_Info;
permanent = TRUE;
description     = "KONIEC";
};

FUNC INT DIA_Shakal_EXIT_Condition()
{
return TRUE;
};

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

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

INSTANCE DIA_Shakal_HELLO1 (C_INFO)
{
   npc          = NONE_301_Shakal;
   nr           = 1;
   condition    = DIA_Shakal_HELLO1_Condition;
   information  = DIA_Shakal_HELLO1_Info;
   permanent = FALSE;
   description = "Daj mi jakiś przedmiot.";
};

FUNC INT DIA_Shakal_HELLO1_Condition()
{
    return TRUE;
};

FUNC VOID DIA_Shakal_HELLO1_Info()
{
    AI_Output (other, self ,"DIA_Shakal_HELLO1_15_01"); //Daj mi jakiś przedmiot.
    AI_Output (self, other ,"DIA_Shakal_HELLO1_03_02"); //Wybierz sobie coś.

    Info_ClearChoices (DIA_Shakal_HELLO1);
    Info_AddChoice (DIA_Shakal_HELLO1, "Daj mi zwój.", DIA_Shakal_HELLO1_DajMiZwoj);
    Info_AddChoice (DIA_Shakal_HELLO1, "Daj mi złoto.", DIA_Shakal_HELLO1_DajMiZloto);
};

FUNC VOID DIA_Shakal_HELLO1_DajMiZwoj()
{
    CreateInvItems (self, ItSc_PalLight, 1);
    B_GiveInvItems (self, other, ItSc_PalLight, 1);
    Info_ClearChoices (DIA_Shakal_HELLO1_DajMiZwoj);
    AI_StopProcessInfos (self);
};

FUNC VOID DIA_Shakal_HELLO1_DajMiZloto()
{
    CreateInvItems (self, ItMi_Gold, 1);
    B_GiveInvItems (self, other, ItMi_Gold, 1);
    Info_ClearChoices (DIA_Shakal_HELLO1_DajMiZloto);
    AI_StopProcessInfos (self);
};
A błąd to że niby zły typ DIA_Shakal_HELLO1_DAJMIZWOJ(coś takiego mniej więcej)
 
Mój obecny sprzęt PC:
Intel core i5-4590
8 gb ram
Geforce GTX 1050Ti

Pawciow

Pawciow

Użytkownicy
posty533
Propsy70
ProfesjaTłumacz
  • Użytkownicy
bo bo bo....winno być

Info_ClearChoices           (DIA_Shakal_HELLO1);


zamiast

Info_ClearChoices           (DIA_Shakal_HELLO1_DajMiZwoj);
 
//i
Info_ClearChoices           (DIA_Shakal_HELLO1_DajMiZloto);

warto sprawdzać podobne skrypty w gothicu i łatwo się znajduje rozwiązanie :D

Graveir

Graveir

Użytkownicy
Avatar Twilight Sparkle / Pożeracz serc
posty1275
Propsy235
ProfesjaGracz
  • Użytkownicy
  • Avatar Twilight Sparkle / Pożeracz serc
No chyba nie.Bo to mają być 2 oddzielne-.-
Edit:
//========================================
//-----------------> OPCJA *KONIEC*
//========================================

INSTANCE DIA_Shakal_EXIT(C_INFO)
{
        npc             = NONE_301_Shakal;
        nr              = 999;
        condition       = DIA_Shakal_EXIT_Condition;
        information     = DIA_Shakal_EXIT_Info;
        permanent       = TRUE;
        description     = "KONIEC";
};

FUNC INT DIA_Shakal_EXIT_Condition()
{
        return TRUE;
};

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

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

INSTANCE DIA_Shakal_HELLO1 (C_INFO)
{
   npc          = NONE_301_Shakal;
   nr           = 1;
   condition    = DIA_Shakal_HELLO1_Condition;
   information  = DIA_Shakal_HELLO1_Info;
   permanent    = FALSE;
   description  = "Daj mi jakiś przedmiot.";
};

FUNC INT DIA_Shakal_HELLO1_Condition()
{
    return TRUE;
};

FUNC VOID DIA_Shakal_HELLO1_Info()
{
    AI_Output (other, self ,"DIA_Shakal_HELLO1_15_01"); //Daj mi jakiś przedmiot.
    AI_Output (self, other ,"DIA_Shakal_HELLO1_03_02"); //Wybierz sobie coś.

    Info_ClearChoices           (DIA_Shakal_HELLO1);
    Info_AddChoice              (DIA_Shakal_HELLO1);
    Info_AddChoice              (DIA_Shakal_HELLO1);
};

FUNC VOID DIA_Shakal_HELLO1()
{
    CreateInvItems (self, ItSc_PalLight, 1);
    B_GiveInvItems (self, other, ItSc_PalLight, 1);
    Info_ClearChoices           (DIA_Shakal_HELLO1);
    AI_StopProcessInfos (self);
};

FUNC VOID DIA_Shakal_HELLO1()
{
    CreateInvItems (self, ItMi_Gold, 1);
    B_GiveInvItems (self, other, ItMi_Gold, 1);
    Info_ClearChoices           (DIA_Shakal_HELLO1);
    AI_StopProcessInfos (self);
};
I dalej w h*j błędów-.-
 
Mój obecny sprzęt PC:
Intel core i5-4590
8 gb ram
Geforce GTX 1050Ti

Pawciow

Pawciow

Użytkownicy
posty533
Propsy70
ProfesjaTłumacz
  • Użytkownicy
źle zrobiłeś!
 zrób tak:
//========================================
//-----------------> OPCJA *KONIEC*
//========================================

INSTANCE DIA_Shakal_EXIT(C_INFO)
{
        npc             = NONE_301_Shakal;
        nr              = 999;
        condition       = DIA_Shakal_EXIT_Condition;
        information     = DIA_Shakal_EXIT_Info;
        permanent       = TRUE;
        description     = "KONIEC";
};

FUNC INT DIA_Shakal_EXIT_Condition()
{
        return TRUE;
};

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

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

INSTANCE DIA_Shakal_HELLO1 (C_INFO)
{
   npc          = NONE_301_Shakal;
   nr           = 1;
   condition    = DIA_Shakal_HELLO1_Condition;
   information  = DIA_Shakal_HELLO1_Info;
   permanent    = FALSE;
   description  = "Daj mi jakiś przedmiot.";
};

FUNC INT DIA_Shakal_HELLO1_Condition()
{
    return TRUE;
};

FUNC VOID DIA_Shakal_HELLO1_Info()
{
    AI_Output (other, self ,"DIA_Shakal_HELLO1_15_01"); //Daj mi jakiś przedmiot.
    AI_Output (self, other ,"DIA_Shakal_HELLO1_03_02"); //Wybierz sobie coś.

    Info_ClearChoices           (DIA_Shakal_HELLO1);
    Info_AddChoice              (DIA_Shakal_HELLO1, "Daj mi zwój.", DIA_Shakal_HELLO1_DajMiZwoj);
    Info_AddChoice              (DIA_Shakal_HELLO1, "Daj mi złoto.", DIA_Shakal_HELLO1_DajMiZloto);
};

FUNC VOID DIA_Shakal_HELLO1_DajMiZwoj()
{
    CreateInvItems (self, ItSc_PalLight, 1);
    B_GiveInvItems (self, other, ItSc_PalLight, 1);
    Info_ClearChoices           (DIA_Shakal_HELLO1);
    AI_StopProcessInfos (self);
};

FUNC VOID DIA_Shakal_HELLO1_DajMiZloto()
{
    CreateInvItems (self, ItMi_Gold, 1);
    B_GiveInvItems (self, other, ItMi_Gold, 1);
    Info_ClearChoices           (DIA_Shakal_HELLO1);
    AI_StopProcessInfos (self);
};

skopiuj sobie najlepiej

zresztą ja wyraźnie napisałem, żebyś zmienił tylko te:

Info_ClearChoices           (DIA_Shakal_HELLO1_DajMiZwoj);
 
//i
Info_ClearChoices           (DIA_Shakal_HELLO1_DajMiZloto);


na takie:

Info_ClearChoices           (DIA_Shakal_HELLO1);


a Ty zmieniłeś nie wiadomo po co te  :facepalm:  , które są dobre:
Info_AddChoice              (DIA_Shakal_HELLO1, "Daj mi zwój.", DIA_Shakal_HELLO1_DajMiZwoj);
    Info_AddChoice              (DIA_Shakal_HELLO1, "Daj mi złoto.", DIA_Shakal_HELLO1_DajMiZloto);


Graveir

Graveir

Użytkownicy
Avatar Twilight Sparkle / Pożeracz serc
posty1275
Propsy235
ProfesjaGracz
  • Użytkownicy
  • Avatar Twilight Sparkle / Pożeracz serc
Skopiowałem i zreparsowało się bez błędu.Sorry,że tak cię wkurzam,ale dawno się nie bawiłem w skryptach(programie-stara wersja była prostsza).Rano wrzucę kolejny skrypt,bo mam wrażenie,że znów się nie obejdzie bez problemów(tym razem będę próbował,by po wybraniu np.2 zwojów kończyła się możliwość wybrania innych-czyli zmienna z tego co się orientuję).Jeszcze raz sorry.
 
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