Pokaż wiadomości

Ta sekcja pozwala Ci zobaczyć wszystkie wiadomości wysłane przez tego użytkownika. Zwróć uwagę, że możesz widzieć tylko wiadomości wysłane w działach do których masz aktualnie dostęp.


Wiadomości - przemetrzynascie

Strony: [1]
1
Skrypty / B_GivePlayerXP
« dnia: 2010-03-13, 11:22 »
Moja propozycja: stworzyć osobny dział, w którym będę opisane i charakteryzowane wszystkie skrypty. mogło by to wyglądać mniej więcej tak:

B_GivePlayerXP.d

Lokalizacja: Główny folder Gothica\_Work\data\Scripts\Content\Story\B_Story

Skrypt ten decyduje o tym co stanie się z bohaterem kiedy osiągnie następny poziom.

// **************
// B_GivePlayerXP
// **************

func void B_GivePlayerXP (var int add_xp)
{
if (hero.level == 0)
{
hero.exp_next = 500;
};
//----------------------------------------------------------------------------
hero.exp = hero.exp + add_xp;

//----------------------------------------------------------------------------
var string concatText;
concatText = PRINT_XPGained;
concatText = ConcatStrings (concatText, IntToString(add_xp));
PrintScreen (concatText, -1, YPOS_XPGained, FONT_ScreenSmall, 2);

//----------------------------------------------------------------------------
if ( hero.exp >= hero.exp_next ) // ( XP > (500*((hero.level+2)/2)*(hero.level+1)) )
{
hero.level = hero.level+1;
hero.exp_next = hero.exp_next +((hero.level+1)*500);

hero.attribute[ATR_HITPOINTS_MAX] = hero.attribute[ATR_HITPOINTS_MAX] + HP_PER_LEVEL;
hero.attribute[ATR_HITPOINTS] = hero.attribute[ATR_HITPOINTS] + HP_PER_LEVEL;

hero.LP = hero.LP + LP_PER_LEVEL;

PrintScreen (PRINT_LevelUp, -1, YPOS_LevelUp, FONT_Screen, 2);
Snd_Play ("LevelUp");
};
B_Checklog ();
};

Tak wygląda w orginale

if (hero.level == 0)
{
hero.exp_next = 500;
};

Te część mówi, że jeżeli poziom bohatera wynosi '0' - "if (hero.level == 0)" - to do następnego poziomu potrzebne nam będzie 500 punktów doświadczenia - "hero.exp_next = 500;"

if ( hero.exp >= hero.exp_next ) // ( XP > (500*((hero.level+2)/2)*(hero.level+1)) )
{
hero.level = hero.level+1;
hero.exp_next = hero.exp_next +((hero.level+1)*500);

hero.attribute[ATR_HITPOINTS_MAX] = hero.attribute[ATR_HITPOINTS_MAX] + HP_PER_LEVEL;
hero.attribute[ATR_HITPOINTS] = hero.attribute[ATR_HITPOINTS] + HP_PER_LEVEL;

hero.LP = hero.LP + LP_PER_LEVEL;

PrintScreen (PRINT_LevelUp, -1, YPOS_LevelUp, FONT_Screen, 2);
Snd_Play ("LevelUp");
};

Dalej mamy opisane co się stanie z naszym bohaterem jeśli otrzyma kolejny poziom.

Najpierw widzimy warunek - "if ( hero.exp >= hero.exp_next )" - czyli, jeżeli punkty doświadczenia bohatera są większe lub równe wymaganym punktom do następnego poziomu wtedy - "hero.level = hero.level+1;" - poziom bohatera jest równy aktualnemu poziomowi plus jeden (czyli poziom rośnie nam o jeden), "hero.exp_next = hero.exp_next +((hero.level+1)*500);" - wymagana ilość PD jest równa aktualnej wymaganej ilości PD plus równanie określające ilość wymaganych PD ((hero.level+1)*500), dalej mamy napisane, że maksymalna i aktualna  ilość punktów trafień zwiększa się o "HP_PER_LEVEL" (stała zdefiniowana w innym skrypcie), następnie mamy jeszcze, że liczba punktów nauki zwiększa się o LP_PER_LEVEL (następna stała) i funkcje wyświetlającą napis na ekranie.

Co można zmienić?
Jak w każdym skrypcie można zmienić już istniejące wartości,, czyli np. ilość otrzymanych punktów trafień zwiększyć do np. 50. Ale można też dopisać własne funkcje i warunki. O to przykład:
if ( hero.attribute[ATR_DEXTERITY] > hero.attribute[ATR_STRENGTH] )
&& ( hero.attribute[ATR_DEXTERITY] > hero.attribute[ATR_MANA_MAX] )
{
hero.attribute[ATR_DEXTERITY] = hero.attribute[ATR_DEXTERITY] + 1;
hero.attribute[ATR_HITPOINTS_MAX] = hero.attribute[ATR_HITPOINTS] + 5;
hero.protection[PROT_POINT] = hero.protection[PROT_POINT]+ 1;
};

Jeżeli zręczność jest większa od siły i od maksymalnej ilości punktów many otrzymujemy, 1 do zręczności, 5 do punktów trafień, i 1 do odporności na pociski.

w taki sposób można wprowadzić starzenie się bohatera, np.

if (hero.level > 10)
{
 Mdl_SetVisualBody (self, FACE_N_Player2);
};

Zamiast "FACE_N_Player2" wstawić stałą określającą teksturę twarzy bohatera wyglądającego starzej i tak co np. 10 poziomów zmieniać teksturę twarzy na starszą lub model postaci na bardziej "napakowaną" dzięki temu bohater z czasem będzie wyglądał na silniejszego.

Jeżeli macie jakieś inne fajne pomysły jak wykorzystać ten skrypt to napiszcie poniżej.

2
Skrypty / Trzęsienia ziemi
« dnia: 2010-03-12, 19:06 »
Jak wyłączyć trzęsienia ziemi w okolicy ruin?

3
Skrypty / Lord Hagen
« dnia: 2010-03-10, 17:36 »
Reprastowałem jeszcze raz skrypty i teraz jest śmiertelny...  :)  Można zamknąć.

4
Skrypty / Atak
« dnia: 2010-03-10, 17:29 »
Co wpisać by npc po dialogu zaatakował moją postać i ją zabił, ale tak żebym już nie wstał?

5
Ok, dzięki. Znalazłem już błąd. Chodzi o to, że jak używasz funkcji Choice i nazywasz ją np. DIA_NONE_999999_Przemek_ODPZLA to nie możesz użyć tego w warunku if (npc_knowsinfo). Temat można zamknąć

6
Skrypty / Lord Hagen
« dnia: 2010-03-10, 15:32 »
:)  Nie jestem głupi...

7
Skrypty / Lord Hagen
« dnia: 2010-03-10, 14:35 »
Można zdjąć god moda Hagenowi? Zmieniłem w jego skrypcie opcje immortal na '0', ale to nic nie dalo  :D

8
Mój dialog

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

INSTANCE DIA_NONE_999999_Przemek_EXIT(C_INFO)
{
npc = NONE_999999_Przemek;
nr = 999;
condition = DIA_NONE_999999_Przemek_EXIT_Condition;
information = DIA_NONE_999999_Przemek_EXIT_Info;
permanent = TRUE;
description = "KONIEC";
};

FUNC INT DIA_NONE_999999_Przemek_EXIT_Condition()
{
return TRUE;
};

FUNC INT DIA_NONE_999999_Przemek_EXIT_Info()
{
AI_StopProcessInfos (self);
};

//========================================
//-----------------> Spotkanie
//========================================

INSTANCE DIA_NONE_999999_Przemek_Spotkanie (C_INFO)
{
   npc = NONE_999999_Przemek;
   nr = 1;
   condition = DIA_NONE_999999_Przemek_Spotkanie_Condition;
   information = DIA_NONE_999999_Przemek_Spotkanie_Info;
   permanent = FALSE;
   description = "Się ma!";
};

FUNC INT DIA_NONE_999999_Przemek_Spotkanie_Condition()
{
return TRUE;
};

func VOID DIA_NONE_999999_Przemek_Spotkanie_Info()
{
AI_Output (other, self ,"DIA_NONE_999999_Przemek_Spotkanie_15_00"); //Się ma!
AI_Output (self, other ,"DIA_NONE_999999_Przemek_Spotkanie_01_01"); //Joł, Joł!
AI_Output (self, other ,"DIA_NONE_999999_Przemek_Spotkanie_01_02"); //Gdzie idziesz?
AI_Output (other, self ,"DIA_NONE_999999_Przemek_Spotkanie_15_03"); //Do miasta, po Oko Innosa!
AI_Output (self, other ,"DIA_NONE_999999_Przemek_Spotkanie_01_04"); //Aha...

};
//========================================
//-----------------> Pierwsza misja
//========================================

INSTANCE DIA_NONE_999999_Przemek_MYSZYN (C_INFO)
{
   npc = NONE_999999_Przemek;
   nr = 2;
   condition = DIA_NONE_999999_Przemek_MYSZYN_Condition;
   information = DIA_NONE_999999_Przemek_MYSZYN_Info;
   permanent = FALSE;
   Important = TRUE;
};

FUNC INT DIA_NONE_999999_Przemek_MYSZYN_Condition()
{
if (npc_knowsinfo (other, DIA_NONE_999999_Przemek_Spotkanie))
{
return TRUE;
};
};

func VOID DIA_NONE_999999_Przemek_MYSZYN_Info()
{
AI_Output (self, other ,"DIA_NONE_999999_Przemek_MYSZYN_01_00"); //Poczekaj! Mam dla ciebie misje!
AI_Output (self, other ,"DIA_NONE_999999_Przemek_MYSZYN_01_01"); //Przynieś mi Wielką Pałe!

Log_CreateTopic (TOPIC_wielkapala, LOG_MISSION);
Log_SetTopicStatus (TOPIC_wielkapala, LOG_RUNNING);
B_LogEntry (TOPIC_wielkapala, "Muszę znaleźć Wielką Pałe dla Przemka");
};
//========================================
//-----------------> WIELKA PAŁA1
//========================================

INSTANCE DIA_NONE_999999_Przemek_WIELKAPALA1 (C_INFO)
{
   npc = NONE_999999_Przemek;
   nr = 3;
   condition = DIA_NONE_999999_Przemek_WIELKAPALA1_Condition;
   information = DIA_NONE_999999_Przemek_WIELKAPALA1_Info;
   permanent = FALSE;
   description = "Gdzie ją znajdę?";
};

FUNC INT DIA_NONE_999999_Przemek_WIELKAPALA1_Condition()
{
if (npc_knowsinfo (other, DIA_NONE_999999_Przemek_WYKONANAMYSZYN))
|| (npc_hasitems (other, ItMw_1h_Wielka_Pala) >= 1)
{
return FALSE;
}
else
if (npc_knowsinfo (other, DIA_NONE_999999_Przemek_MYSZYN))
{
return TRUE;
};

};

func VOID DIA_NONE_999999_Przemek_WIELKAPALA1_Info()
{
AI_Output (other, self ,"DIA_NONE_999999_Przemek_WIELKAPALA1_15_00"); //Gdzie ją znajdę?
AI_Output (self, other ,"DIA_NONE_999999_Przemek_WIELKAPALA1_01_01"); //Odebrała mi ją, Ogromna Bestia! Uciekła w stronę wodospadu!

B_LogEntry (TOPIC_wielkapala, "Zabrał ją Ogromna Bestia i uciekła w stronę wodospadu");
};
//========================================
//-----------------> WIELKA PAŁA2
//========================================

INSTANCE DIA_NONE_999999_Przemek_WIELKAPALA2 (C_INFO)
{
   npc = NONE_999999_Przemek;
   nr = 4;
   condition = DIA_NONE_999999_Przemek_WIELKAPALA2_Condition;
   information = DIA_NONE_999999_Przemek_WIELKAPALA2_Info;
   permanent = FALSE;
   description = "Po co Ci ona?";
};

FUNC INT DIA_NONE_999999_Przemek_WIELKAPALA2_Condition()
{
if (npc_knowsinfo (other, DIA_NONE_999999_Przemek_WYKONANAMYSZYN))
{
return FALSE;
}
else
if (npc_knowsinfo (other, DIA_NONE_999999_Przemek_MYSZYN))
{
return TRUE;
};
};

func VOID DIA_NONE_999999_Przemek_WIELKAPALA2_Info()
{
AI_Output (other, self ,"DIA_NONE_999999_Przemek_WIELKAPALA2_15_00"); //Po co Ci ona?
AI_Output (self, other ,"DIA_NONE_999999_Przemek_WIELKAPALA2_01_01"); //Żeby mieć co w dupe wsadzić!
};
//========================================
//-----------------> WYKONANA MYSZYN
//========================================

INSTANCE DIA_NONE_999999_Przemek_WYKONANAMYSZYN (C_INFO)
{
   npc = NONE_999999_Przemek;
   nr = 5;
   condition = DIA_NONE_999999_Przemek_WYKONANAMYSZYN_Condition;
   information = DIA_NONE_999999_Przemek_WYKONANAMYSZYN_Info;
   permanent = FALSE;
   description = "Mam pałe!";
};

FUNC INT DIA_NONE_999999_Przemek_WYKONANAMYSZYN_Condition()
{
if (npc_knowsinfo (other, DIA_NONE_999999_Przemek_MYSZYN))
&& (npc_hasitems (other, ItMw_1h_Wielka_Pala) >= 1)
{
return TRUE;
};
};

func VOID DIA_NONE_999999_Przemek_WYKONANAMYSZYN_Info()
{
AI_Output (other, self ,"DIA_NONE_999999_Przemek_WYKONANAMYSZYN_15_00"); //Mam pałe!
AI_Output (self, other ,"DIA_NONE_999999_Przemek_WYKONANAMYSZYN_01_01"); //Dawaj!

B_giveinvitems (other, self, ItMw_1h_Wielka_Pala, 1);
B_LogEntry (TOPIC_wielkapala, "Przemek ma już swoją pałe");
Log_SetTopicStatus (TOPIC_wielkapala, LOG_SUCCESS);

AI_Output (self, other ,"DIA_NONE_999999_Przemek_WYKONANAMYSZYN_01_02"); //Weź 50 goldów i zrób z nich użytek u Nadji!

Createinvitems (self, itmi_gold, 50);
B_giveinvitems (self, other, itmi_gold, 50);
Log_CreateTopic (TOPIC_nadja, LOG_MISSION);
Log_SetTopicStatus (TOPIC_nadja, LOG_RUNNING);
B_LogEntry (TOPIC_nadja, "Przemek chcę, żebym wydał te pieniądze na Nadję. Lepiej to zrobię!");

AI_Output (self, other ,"DIA_NONE_999999_Przemek_WYKONANAMYSZYN_01_03"); //Ale przynieś mi jakiś dowód, żebym wiedział, że tego nie przechlałeś!

B_LogEntry (TOPIC_nadja, "Muszę przynieś dowód, że to zrobiłem");
};
//========================================
//-----------------> MYSZYN NADJA
//========================================

INSTANCE DIA_NONE_999999_Przemek_MYSZYNNADJA (C_INFO)
{
   npc = NONE_999999_Przemek;
   nr = 6;
   condition = DIA_NONE_999999_Przemek_MYSZYNNADJA_Condition;
   information = DIA_NONE_999999_Przemek_MYSZYNNADJA_Info;
   permanent = FALSE;
   description = "Zobiłem co chciałeś!";
};

FUNC INT DIA_NONE_999999_Przemek_MYSZYNNADJA_Condition()
{
if (npc_hasitems (other, ItMi_zuzyta_prezerwatywa) >= 1)
&& (npc_knowsinfo (other, DIA_NONE_999999_Przemek_WYKONANAMYSZYN))
{
return TRUE;
};
};

func VOID DIA_NONE_999999_Przemek_MYSZYNNADJA_Info()
{
AI_Output (other, self ,"DIA_NONE_999999_Przemek_MYSZYNNADJA_15_00"); //Zrobiłem co chciałeś!
AI_Output (self, other ,"DIA_NONE_999999_Przemek_MYSZYNNADJA_01_01"); //A masz dowód?
AI_Output (other, self ,"DIA_NONE_999999_Przemek_MYSZYNNADJA_15_02"); //Proszę, oto zużyta prezerwatywa!

B_giveinvitems (other, self, ItMi_zuzyta_prezerwatywa, 1);

AI_Output (self, other ,"DIA_NONE_999999_Przemek_MYSZYNNADJA_01_03"); //Dobrze! W nagrodę dostaniesz...
B_LogEntry (TOPIC_nadja, "Sprawa załatwiona!");
Log_SetTopicStatus (TOPIC_nadja, LOG_SUCCESS);
AI_Output (self, other ,"DIA_NONE_999999_Przemek_MYSZYNNADJA_01_04"); //Niedostaniesz wpierdol!

Info_ClearChoices (DIA_NONE_999999_Przemek_MYSZYNNADJA);
Info_AddChoice (DIA_NONE_999999_Przemek_MYSZYNNADJA, "Ok, dobre i to!", DIA_NONE_999999_Przemek_ODPDOBRA );
Info_AddChoice (DIA_NONE_999999_Przemek_MYSZYNNADJA, "Co?! Dawaj natychmiast złoto!", DIA_NONE_999999_Przemek_ODPZLA );
};
//---------------->Odpowiedź dobra
func void DIA_NONE_999999_Przemek_ODPDOBRA ()
{
AI_Output (other, self ,"DIA_NONE_999999_Przemek_MYSZYNNADJA_15_05"); //Ok, dobre i to!
};
//---------------->Odpowiedź zła
func void DIA_NONE_999999_Przemek_ODPZLA ()
{
AI_Output (other, self ,"DIA_NONE_999999_Przemek_MYSZYNNADJA_15_06"); //Co?! Dawaj natychmiast złoto!

AI_StopProcessInfos(self);
B_Attack (self, other, AR_SuddenEnemyInferno, 1);
};
//================================================
//-----------------> Jeżli odp. zła
//================================================

INSTANCE DIA_NONE_999999_Przemek_JEZODPZLA (C_INFO)
{
   npc = NONE_999999_Przemek;
   nr = 7;
   condition = DIA_NONE_999999_Przemek_JEZODPZLA_Condition;
   information = DIA_NONE_999999_Przemek_JEZODPZLA_Info;
   permanent = FALSE;
   Important = TRUE;
};
FUNC INT DIA_NONE_999999_Przemek_JEZODPZLA_Condition()
{
if (npc_knowsinfo (other, DIA_NONE_999999_Przemek_ODPZLA))
{
return TRUE;
};
};
func VOID DIA_NONE_999999_Przemek_JEZODPZLA_Info()
{
AI_Output (self, other ,"DIA_NONE_999999_Przemek_JEZODPZLA_01_01"); //Masz coś jeszcze do powiedzenia?
AI_Output (other, self ,"DIA_NONE_999999_Przemek_JEZODPZLA_15_02"); //Nie, już nic...

AI_StopProcessInfos(self);
};
//================================================
//-----------------> Zrobisz dla mnie coś jeszcze?
//================================================

INSTANCE DIA_NONE_999999_Przemek_MYSZYNHAGEN (C_INFO)
{
   npc = NONE_999999_Przemek;
   nr = 8;
   condition = DIA_NONE_999999_Przemek_MYSZYNHAGEN_Condition;
   information = DIA_NONE_999999_Przemek_MYSZYNHAGEN_Info;
   permanent = FALSE;
   Important = TRUE;
};

FUNC INT DIA_NONE_999999_Przemek_MYSZYNHAGEN_Condition()
{
if (npc_knowsinfo (other, DIA_NONE_999999_Przemek_ODPDOBRA)) || (npc_knowsinfo (other, DIA_NONE_999999_Przemek_JEZODPZLA))
{
return TRUE;
};
};
func VOID DIA_NONE_999999_Przemek_MYSZYNHAGEN_Info()
{
AI_Output (self, other ,"DIA_NONE_999999_Przemek_MYSZYNHAGEN_01_00"); //Zrobisz dla mnie coś jeszcze?

Info_ClearChoices (DIA_NONE_999999_Przemek_MYSZYNNADJA);
Info_AddChoice (DIA_NONE_999999_Przemek_MYSZYNHAGEN, "Jasne!", DIA_NONE_999999_Przemek_ODPTAK );
Info_AddChoice (DIA_NONE_999999_Przemek_MYSZYNHAGEN, "Chyba śnisz!", DIA_NONE_999999_Przemek_ODPNIE );
};
//-----------------> Odpowiedź twierdząca

func void DIA_NONE_999999_Przemek_ODPTAK ()
{
AI_Output (other, self ,"DIA_NONE_999999_Przemek_MYSZYNHAGEN_15_01"); //Jasne!
AI_Output (self, other ,"DIA_NONE_999999_Przemek_MYSZYNHAGEN_01_02"); //Zabij Hagena!
AI_Output (other, self ,"DIA_NONE_999999_Przemek_MYSZYNHAGEN_15_03"); //Jak mam to zrobić?
AI_Output (self, other ,"DIA_NONE_999999_Przemek_MYSZYNHAGEN_01_04"); //Użyj w jego komnacie tego czaru!

B_giveinvitems (self, other, ItSc_Firerain, 1);
Log_CreateTopic (TOPIC_smierchagena, LOG_MISSION);
Log_SetTopicStatus (TOPIC_smierchagena, LOG_RUNNING);
B_LogEntry (TOPIC_smierchagena, "Przemek chcę, żebym zabił Hagena... Ale będzie rzeź!");
AI_StopProcessInfos (self);
};
//-----------------> Odpowiedź przecząca

func void DIA_NONE_999999_Przemek_ODPNIE ()
{
AI_Output (other, self ,"DIA_NONE_999999_Przemek_MYSZYNHAGEN_15_05"); //Chyba śnisz!
AI_Output (self, other ,"DIA_NONE_999999_Przemek_MYSZYNHAGEN_01_06"); //Czyli jednak masz wpierdol...

AI_StopProcessInfos(self);
B_Attack (self, other, AR_SuddenEnemyInferno, 1);
};

//=============================================
//-----------------> Jeżeli odpowiedź przecząca
//=============================================

INSTANCE DIA_NONE_999999_Przemek_JEZODPPRZE (C_INFO)
{
   npc = NONE_999999_Przemek;
   nr = 9;
   condition = DIA_NONE_999999_Przemek_JEZODPPRZE_Condition;
   information = DIA_NONE_999999_Przemek_JEZODPPRZE_Info;
   permanent = FALSE;
   Important = TRUE;
};

FUNC INT DIA_NONE_999999_Przemek_JEZODPPRZE_Condition()
{
if (npc_knowsinfo (other, DIA_NONE_999999_Przemek_ODPNIE))
{
return TRUE;
};
};

func VOID DIA_NONE_999999_Przemek_JEZODPPRZE_Info()
{
AI_Output (other, self ,"DIA_NONE_999999_Przemek_JEZODPPRZE_01_00"); //Dam ci ostanią szanse! Pomożesz mi czy nie?

Info_ClearChoices (DIA_NONE_999999_Przemek_JEZODPPRZE);
Info_AddChoice (DIA_NONE_999999_Przemek_JEZODPPRZE, "Tak Panie!", DIA_NONE_999999_Przemek_ODPTAK2 );
Info_AddChoice (DIA_NONE_999999_Przemek_JEZODPPRZE, "Nigdy!", DIA_NONE_999999_Przemek_ODPNIE2 );
};
//-----------------> Odpowiedź twierdząca

func void DIA_NONE_999999_Przemek_ODPTAK2 ()
{
AI_Output (other, self ,"DIA_NONE_999999_Przemek_JEZODPPRZE_15_01"); //Tak Panie! Dla ciebie wszystko!
AI_Output (self, other ,"DIA_NONE_999999_Przemek_JEZODPPRZE_01_02"); //W takim razie, zabij Hagena!
AI_Output (other, self ,"DIA_NONE_999999_Przemek_JEZODPPRZE_15_03"); //Jak mam to zrobić?
AI_Output (self, other ,"DIA_NONE_999999_Przemek_JEZODPPRZE_01_04"); //Użyj w jego komnacie tego czaru!

B_giveinvitems (self, other, ItSc_Firerain, 1);
Log_CreateTopic (TOPIC_smierchagena, LOG_MISSION);
Log_SetTopicStatus (TOPIC_smierchagena, LOG_RUNNING);
B_LogEntry (TOPIC_smierchagena, "Mój Pan każe mi zabić Hagena... Ale będzie rzeź!");
AI_StopProcessInfos (self);
};
//-----------------> Odpowiedź przecząca

func void DIA_NONE_999999_Przemek_ODPNIE2 ()
{
AI_Output (other, self ,"DIA_NONE_999999_Przemek_JEZODPPRZE_15_05"); //Odwal się!
AI_Output (self, other ,"DIA_NONE_999999_Przemek_JEZODPPRZE_01_06"); //Czyli jednak musisz zginąć...

AI_StopProcessInfos(self);
B_Attack (self, other, AR_SuddenEnemyInferno, 1);
};
//========================================
//-----------------> Wykonana misja Hagen
//========================================

INSTANCE DIA_NONE_999999_Przemek_WYKHAGEN (C_INFO)
{
   npc = NONE_999999_Przemek;
   nr = 10;
   condition = DIA_NONE_999999_Przemek_WYKHAGEN_Condition;
   information = DIA_NONE_999999_Przemek_WYKHAGEN_Info;
   permanent = FALSE;
   description = "Zabiłem Hagena!";
};

FUNC INT DIA_NONE_999999_Przemek_WYKHAGEN_Condition()
{
if (Npc_IsDead (PAL_200_Hagen))
{
return TRUE;
};
};

func VOID DIA_NONE_999999_Przemek_WYKHAGEN_Info()
{
AI_Output (other, self ,"DIA_NONE_999999_Przemek_WYKHAGEN_15_00"); //Hagen nieżyje!
AI_Output (self, other ,"DIA_NONE_999999_Przemek_WYKHAGEN_01_01"); //Hahaha, ale frajer! Teraz nie przejdziesz gry!

AI_StopProcessInfos(self);
};

To błąd który wyskakuje



Fragmenty kodu w których może być błąd

Info_AddChoice (DIA_NONE_999999_Przemek_MYSZYNNADJA, "Ok, dobre i to!", DIA_NONE_999999_Przemek_ODPDOBRA );
Info_AddChoice (DIA_NONE_999999_Przemek_MYSZYNNADJA, "Co?! Dawaj natychmiast złoto!", DIA_NONE_999999_Przemek_ODPZLA );
};

func void DIA_NONE_999999_Przemek_ODPZLA ()
{
AI_Output (other, self ,"DIA_NONE_999999_Przemek_MYSZYNNADJA_15_06"); //Co?! Dawaj natychmiast złoto!

AI_StopProcessInfos(self);
B_Attack (self, other, AR_SuddenEnemyInferno, 1);

INSTANCE DIA_NONE_999999_Przemek_JEZODPZLA (C_INFO)
{
   npc = NONE_999999_Przemek;
   nr = 7;
   condition = DIA_NONE_999999_Przemek_JEZODPZLA_Condition;
   information = DIA_NONE_999999_Przemek_JEZODPZLA_Info;
   permanent = FALSE;
   Important = TRUE;
};

Ja tu nie widze błędu. Dlaczego mi wyskakuje błąd?

Strony: [1]
Do góry