Jak napisać taki warunek że o godz, 00.01 w grze nasz Bezio umarł? 5076 10

O temacie

Autor JOHN

Zaczęty 21.09.2010 roku

Wyświetleń 5076

Odpowiedzi 10

JOHN

JOHN

Użytkownicy
posty31
  • Użytkownicy
Witam!
Potrzebuję warunku takiego, aby o godz. 00.01 Bezio padł trupem i nie żył:P
Napisałem takie coś
if(wld_time (00,01)
{
Npc_ChangeAttribute (self, ATR_HITPOINTS, -9999);  
};
ale wyskakuje błąd że gra nie zna takiego czegoś jak WLD_TIME:(
Proszę o pomoc szczególnie dlatego, że pisanie warunków jest chyba jedną z moich gorszych stron, a może się nauczę:D
Z góry dziękuję:D

RafalBudzis

RafalBudzis

Użytkownicy
posty1967
Propsy808
ProfesjaSkrypter
  • Użytkownicy
ło ładnie namieszane :D
po pierwsze if(wld_time (00,01)czy zamknąłeś oba nawiasy :D
po drugie co ci da ze wpisałeś tą zmienną ?? nie dałeś ani porównywanie z czymś == ani nic :D  czyli to co w pentli wykonywało by się ile razy by chciało :D
po trzecie spróbuj tak
   FUNC VOID tiger {
czas = wld_time();

if(czas==00)
{
Npc_ChangeAttribute (self, ATR_HITPOINTS, -9999);  
};
};

a to do pliku Story_Globals.d
var int czas;

JOHN

JOHN

Użytkownicy
posty31
  • Użytkownicy
Cytat: RafalBudzis link=topic=11465.msg112451#msg112451#msg112451#msg112451 date=1285096291
ło ładnie namieszane :D
po pierwsze if(wld_time (00,01)czy zamknąłeś oba nawiasy :D
po drugie co ci da ze wpisałeś tą zmienną ?? nie dałeś ani porównywanie z czymś == ani nic :D  czyli to co w pentli wykonywało by się ile razy by chciało :D
po trzecie spróbuj tak
   FUNC VOID tiger {
czas = wld_time();

if(czas==00)
{
Npc_ChangeAttribute (self, ATR_HITPOINTS, -9999);  
};
};

a to do pliku Story_Globals.d
var int czas;

zaraz sprawdzam:D yyy... nie zamknąłem... sorki... nie pomyślałem... ja nie umiem pisać warunków... :(

Cytuj
   FUNC VOID tiger
    {


            czas = wld_time(); //tu najpierw kazało mi wstawić #msg112451#msg112451#msg112451#msg112451 date=1285096291]
ło ładnie namieszane :D
po pierwsze if(wld_time (00,01)czy zamknąłeś oba nawiasy :D
po drugie co ci da ze wpisałeś tą zmienną ?? nie dałeś ani porównywanie z czymś == ani nic :D  czyli to co w pentli wykonywało by się ile razy by chciało :D
po trzecie spróbuj tak
   FUNC VOID tiger {
czas = wld_time();

if(czas==00)
{
Npc_ChangeAttribute (self, ATR_HITPOINTS, -9999);  
};
};

a to do pliku Story_Globals.d
var int czas;

zaraz sprawdzam:D yyy... nie zamknąłem... sorki... nie pomyślałem... ja nie umiem pisać warunków... :(

Cytuj
   FUNC VOID tiger
    {


            czas = wld_time(); //tu najpierw kazało mi wstawić (#msg112451#msg112451#msg112451#msg112451 date=1285096291]
ło ładnie namieszane :D
po pierwsze if(wld_time (00,01)czy zamknąłeś oba nawiasy :D
po drugie co ci da ze wpisałeś tą zmienną ?? nie dałeś ani porównywanie z czymś == ani nic :D  czyli to co w pentli wykonywało by się ile razy by chciało :D
po trzecie spróbuj tak
   FUNC VOID tiger {
czas = wld_time();

if(czas==00)
{
Npc_ChangeAttribute (self, ATR_HITPOINTS, -9999);  
};
};

a to do pliku Story_Globals.d
var int czas;

zaraz sprawdzam:D yyy... nie zamknąłem... sorki... nie pomyślałem... ja nie umiem pisać warunków... :(

Cytuj
   FUNC VOID tiger
    {


            czas = wld_time(); //tu najpierw kazało mi wstawić , a po wstawieniu kazało mi dać #msg112451#msg112451#msg112451#msg112451 date=1285096291]
ło ładnie namieszane :D
po pierwsze if(wld_time (00,01)czy zamknąłeś oba nawiasy :D
po drugie co ci da ze wpisałeś tą zmienną ?? nie dałeś ani porównywanie z czymś == ani nic :D  czyli to co w pentli wykonywało by się ile razy by chciało :D
po trzecie spróbuj tak
   FUNC VOID tiger {
czas = wld_time();

if(czas==00)
{
Npc_ChangeAttribute (self, ATR_HITPOINTS, -9999);  
};
};

a to do pliku Story_Globals.d
var int czas;

zaraz sprawdzam:D yyy... nie zamknąłem... sorki... nie pomyślałem... ja nie umiem pisać warunków... :(

Cytuj
   FUNC VOID tiger
    {


            czas = wld_time(); //tu najpierw kazało mi wstawić )#msg112451#msg112451#msg112451#msg112451 date=1285096291]
ło ładnie namieszane :D
po pierwsze if(wld_time (00,01)czy zamknąłeś oba nawiasy :D
po drugie co ci da ze wpisałeś tą zmienną ?? nie dałeś ani porównywanie z czymś == ani nic :D  czyli to co w pentli wykonywało by się ile razy by chciało :D
po trzecie spróbuj tak
   FUNC VOID tiger {
czas = wld_time();

if(czas==00)
{
Npc_ChangeAttribute (self, ATR_HITPOINTS, -9999);  
};
};

a to do pliku Story_Globals.d
var int czas;

zaraz sprawdzam:D yyy... nie zamknąłem... sorki... nie pomyślałem... ja nie umiem pisać warunków... :(

Cytuj
   FUNC VOID tiger
    {


            czas = wld_time(); //tu najpierw kazało mi wstawić  i nie wiem gdzie to wstawić bo cały czas jest: U:PAR: Expected #msg112451#msg112451#msg112451#msg112451 date=1285096291]
ło ładnie namieszane :D
po pierwsze
if(wld_time (00,01)czy zamknąłeś oba nawiasy :D
po drugie co ci da ze wpisałeś tą zmienną ?? nie dałeś ani porównywanie z czymś == ani nic :D  czyli to co w pentli wykonywało by się ile razy by chciało :D
po trzecie spróbuj tak
   FUNC VOID tiger {
czas = wld_time();

if(czas==00)
{
Npc_ChangeAttribute (self, ATR_HITPOINTS, -9999);  
};
};

a to do pliku Story_Globals.d
var int czas;

zaraz sprawdzam:D yyy... nie zamknąłem... sorki... nie pomyślałem... ja nie umiem pisać warunków... :(

Cytuj
   FUNC VOID tiger
    {


            czas = wld_time(); //tu najpierw kazało mi wstawić )#msg112451#msg112451#msg112451#msg112451 date=1285096291]
ło ładnie namieszane :D
po pierwsze if(wld_time (00,01)czy zamknąłeś oba nawiasy :D
po drugie co ci da ze wpisałeś tą zmienną ?? nie dałeś ani porównywanie z czymś == ani nic :D  czyli to co w pentli wykonywało by się ile razy by chciało :D
po trzecie spróbuj tak
   FUNC VOID tiger {
czas = wld_time();

if(czas==00)
{
Npc_ChangeAttribute (self, ATR_HITPOINTS, -9999);  
};
};

a to do pliku Story_Globals.d
var int czas;

zaraz sprawdzam:D yyy... nie zamknąłem... sorki... nie pomyślałem... ja nie umiem pisać warunków... :(

Cytuj
   FUNC VOID tiger
    {


            czas = wld_time(); //tu najpierw kazało mi wstawić  (line 295)[/b] i wklejam wszędzie ten nawias i nie działa :#msg112451#msg112451#msg112451#msg112451 date=1285096291]
ło ładnie namieszane :D
po pierwsze if(wld_time (00,01)czy zamknąłeś oba nawiasy :D
po drugie co ci da ze wpisałeś tą zmienną ?? nie dałeś ani porównywanie z czymś == ani nic :D  czyli to co w pentli wykonywało by się ile razy by chciało :D
po trzecie spróbuj tak
   FUNC VOID tiger {
czas = wld_time();

if(czas==00)
{
Npc_ChangeAttribute (self, ATR_HITPOINTS, -9999);  
};
};

a to do pliku Story_Globals.d
var int czas;

zaraz sprawdzam:D yyy... nie zamknąłem... sorki... nie pomyślałem... ja nie umiem pisać warunków... :(

Cytuj
   FUNC VOID tiger
    {


            czas = wld_time(); //tu najpierw kazało mi wstawić (
   
    if(czas==00,01)
    {
            Npc_ChangeAttribute     (self,  ATR_HITPOINTS,  -9999);  
    };
    };

RafalBudzis

RafalBudzis

Użytkownicy
posty1967
Propsy808
ProfesjaSkrypter
  • Użytkownicy
Cytuj
a to do pliku Story_Globals.d
var int czas;

dodałeś to do pliku Story_Globals.d ????

JOHN

JOHN

Użytkownicy
posty31
  • Użytkownicy
Cytat: RafalBudzis link=topic=11465.msg112522#msg112522#msg112522#msg112522 date=1285164577
dodałeś to do pliku Story_Globals.d ????

tak!! Specjalnie jeszcze sprawdzałem kilka razy

RafalBudzis

RafalBudzis

Użytkownicy
posty1967
Propsy808
ProfesjaSkrypter
  • Użytkownicy
nie chce mi się sprawdzać co powinno działać więc masz 2 przykłady
spróbuj tak
1.
   FUNC VOID tiger {
        czas = wld_Settime();

if(Wld_IsTime(00,00,czas))
{
        Npc_ChangeAttribute     (self,  ATR_HITPOINTS,  -9999);  
};
};

2.
   FUNC VOID tiger {
        czas = Wld_SetTime();

if(czas==00)
{
        Npc_ChangeAttribute     (self,  ATR_HITPOINTS,  -9999);  
};
};


któryś powinien zadziałać :D

JOHN

JOHN

Użytkownicy
posty31
  • Użytkownicy
Cytat: RafalBudzis link=topic=11465.msg112540#msg112540#msg112540#msg112540 date=1285169017
nie chce mi się sprawdzać co powinno działać więc masz 2 przykłady
spróbuj tak
1.
   FUNC VOID tiger {
        czas = wld_Settime();

if(Wld_IsTime(00,00,czas))
{
        Npc_ChangeAttribute     (self,  ATR_HITPOINTS,  -9999);  
};
};

2.
   FUNC VOID tiger {
        czas = Wld_SetTime();

if(czas==00)
{
        Npc_ChangeAttribute     (self,  ATR_HITPOINTS,  -9999);  
};
};


któryś powinien zadziałać :D

Wkleiłem to tak:
Cytuj
FUNC VOID UseSKRĘT()
{
      .
      .
      .

        Wld_SetTime     (00,00);

        if(Wld_IsTime(00,01))
        {
                Npc_ChangeAttribute     (self,  ATR_HITPOINTS,  -9999);  
        };
};

Inaczej widziało błąd w tym czas=cośtam a teraz widzi go i tym warunku if(Wld_IsTime(00,01)) (woła o przecinek). Wstawiam go wszędzie i nic :(
P.S.
Sorry, że jestem taki natrętny...

RafalBudzis

RafalBudzis

Użytkownicy
posty1967
Propsy808
ProfesjaSkrypter
  • Użytkownicy
if(Wld_IsTime (0,01,    0,04))
{
        Npc_ChangeAttribute     (self,  ATR_HITPOINTS,  -9999);  
};

ok tak powinno działać a zmienną czas całkowicie skasuj

JOHN

JOHN

Użytkownicy
posty31
  • Użytkownicy
Cytat: RafalBudzis link=topic=11465.msg112597#msg112597#msg112597#msg112597 date=1285183119
if(Wld_IsTime (0,01,    0,04))
{
        Npc_ChangeAttribute     (self,  ATR_HITPOINTS,  -9999);  
};

ok tak powinno działać a zmienną czas całkowicie skasuj

Też nie działa :#msg112597#msg112597#msg112597#msg112597 date=1285183119]
if(Wld_IsTime (0,01,    0,04))
{
        Npc_ChangeAttribute     (self,  ATR_HITPOINTS,  -9999);  
};

ok tak powinno działać a zmienną czas całkowicie skasuj
[/quote]

Też nie działa :(
ZASTANAWIAM SIĘ czy nie prosić o zamknięcie tematu... Chyba już dam Ci spokój, i tak już wiele dla mnie zrobiłeś za co Ci baaardzo dziękuję :D

inż. Avallach

inż. Avallach

Administrator
posty7662
Propsy5238
NagrodyV
ProfesjaProgramista
  • Administrator
Miałem nie odpowiadać, bo tego typu pytanie świadczy o kompletnej nieznajomości mechanizmu skryptów w Gothicu, jednak przypominało mi się coś co prawdopodobnie zupełnie przez przypadek może jednak to umożliwić. Mianowicie wstaw po prostu w funkcji
\_Work\Data\Scripts\Content\AI\B_Human\B_RefreshArmor.dNpc_ChangeAttribute (hero, ATR_HITPOINTS, -npc.attribute[ATR_HITPOINTS_MAX]);Normalnie coś takiego byłoby niewykonalne (chyba żeby co sekundę sprawdzać aktualny czas, rozwiązanie naprawdę fatalne), ale akurat o północy miała odpalać się zawsze ta funkcja (Pirahnie w końcu z niej zrezygnowały i wywaliły całą zawartość, ale nadal można tam wstawić własny kod który będzie dzięki temu odpalany codziennie o północy).
Pamiętaj jednak że gracz może zwyczajnie to przespać, tak że z jego punktu widzenia północ nigdy nie nastąpi. Jeśli chcesz takie coś uniemożliwić, musiałbyś dodać też odpowiedni kod w monologu spania.

JOHN

JOHN

Użytkownicy
posty31
  • Użytkownicy
Cytat: Avallach link=topic=11465.msg112623#msg112623#msg112623#msg112623 date=1285216587
Miałem nie odpowiadać, bo tego typu pytanie świadczy o kompletnej nieznajomości mechanizmu skryptów w Gothicu...

Przepraszam, ale się uczę! Chciałbym od razu wszystko umieć... Nikt chyba od razu wszystkiego nie umiał... Ale dzięki za pomoc :D

Temat można zamknąć. Dzięki za pomoc.


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