Monolog i kowadło? 2476 5

O temacie

Autor CBA

Zaczęty 27.03.2009 roku

Wyświetleń 2476

Odpowiedzi 5

CBA

CBA

Użytkownicy
posty100
Profesjabrak
  • Użytkownicy
Witam
mam problem:
Jak zrobić monolog do kowadła? bo chciałbym rozwinąć kowalstwo w gothicu i myślę żeby dla kowadła zrobić monolog po którym jeśli mamy x przedmiot to możemy wykuć jakiś miecz itd
Jest to możliwe? jeżeli tak to jak?
 


CBA

CBA

Użytkownicy
posty100
Profesjabrak
  • Użytkownicy
Wiesz nie za bardzo zrozumiałem z tego XD
 

Adanos

Adanos

Administrator
Szara eminencja
posty5204
Propsy3870
ProfesjaProgramista
  • Administrator
  • Szara eminencja
To powinieneś... W czym masz zatem problem? Czego nie rozumiesz?

CBA

CBA

Użytkownicy
posty100
Profesjabrak
  • Użytkownicy
Po pierwsze to musimy przygotować plik spania, mianowicie zmieniamy funkcję SLEEPABIT_S1:
KOD
var int monolog;
const int m_sleep=0;
func void sleepabit_s1()
{
if(Npc_IsPlayer(self))
{
 monolog=m_sleep;
 self.aivar[AIV_INVINCIBLE]=TRUE;
 Ai_ProcessInfos(self);
};
};

Zaś wszystkie condition opcji spania zmieniamy na ism_sleep:
KOD
func int ism_sleep()
{
return (monolog==m_sleep);
};
nie za bardzo wiem gdzie ten plik z sleep
const int m_cook=1;//inny niż sleep i inne monologi
func void cookabit_s1()
{
if(Npc_IsPlayer(self))
{
 monolog=m_cook;
 self.aivar[AIV_INVINCIBLE]=TRUE;
 Ai_StartProcessInfo(self);
};
};
func int ism_cook()
{
return (monolog==m_sleep);
};
to samo musze zrobić z każdym kowadłem?
I teraz definiujemy odpowiednie dialogi:
KOD
INSTANCE PC_NoCook (c_Info) //Warto pamiętać o końcu rozmowy :D
{
npc = PC_Hero; // Ważne
nr = 999;
condition  = ism_cook;
information  = PC_NoCook_Info;
important  = 0;
permanent  = 1;
description  = DIALOG_ENDE;
};
func VOID PC_NoCook_Info()
{
// W przypadku alchemii przydałoby się zwrócić flaszkę potrzebną do rozpoczęcia pracy
AI_StopProcessInfos (self);
self.aivar[AIV_INVINCIBLE]=FALSE;

};
INSTANCE PC_CookMineCrawlerSoup (c_Info) //Warto pamiętać o końcu rozmowy :D
{
npc = PC_Hero; // Ważne
condition  = PC_CookMineCrawlerSoup_Condition;
information  = PC_CookMineCrawlerSoup_Info;
important  = 0;
permanent  = 1;
description  = "Gotuj pełzaczaną";
};
func int PC_CookMineCrawlerSoup_Condition()
{
return(ism_cook()&&umiem); //umiem jest ustawione na tak jeżeli nas ktoś tego nauczy
};
func VOID PC_NoCook_Info()
{
if(mam_skladniki()) //oczywiście nie trzeba wszystkiego robić w oddzielnych funkcjach
{
 usun_skladniki();
 dodaj_zupe();
 zabulgaj();
}
else
{
 Print("Zupę pełzaczaną robi się z pełzacza, skombinuj sobie najpierw jakiegoś");
};
};
ten monolog dajemy do MISSIONS i jak tu dać aby dialog mi się wyświetlił kiedy mam x przedmiot i po wybraniu jakiegoś dostać itema i żeby mi zabrał ten x przedmiot
 

Adanos

Adanos

Administrator
Szara eminencja
posty5204
Propsy3870
ProfesjaProgramista
  • Administrator
  • Szara eminencja
Sleepabit.d :
C:\Program Files\Piranha Bytes\Gothic\_Work\Data\Scripts\Content\Story\EVENTS

Cytuj
to samo musze zrobić z każdym kowadłem?
Skrypt robisz jeden.


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