Czasowa nieśmiertelność 8791 31

O temacie

Autor Jastrzab

Zaczęty 24.12.2010 roku

Wyświetleń 8791

Odpowiedzi 31

Jastrzab

Jastrzab

Użytkownicy
posty197
Propsy39
Profesjabrak
  • Użytkownicy
No wypijam miksturę i wszystko jest git, pokazuje się napis ale za to hero nie ma nieśmiertelności. Tak teraz wygląda skrypt tick tock:

func void tick_tock()

{

if(Czas_Niesmiertelnosc_Sek != 0)

{
PRINT("MOJ TICK_TOCK JEST SPRAWNY!");
self.flags = 2;
Czas_Niesmiertelnosc_Sek-=1;

}
else

{
self.flags = 0;

};
};
 
CPU: Intel Core i7 8700k
RAM: G.Skill Ripjaws 16GB 3000MHz CL15
GPU: MSI GTX 1060 6GB
Mobas: MSI Z370 Gaming Pro Carbon


Jastrzab

Jastrzab

Użytkownicy
posty197
Propsy39
Profesjabrak
  • Użytkownicy
Nic to niestety nie dało, ale self czy hero to moim zdaniem nie ma znaczenia  ;p
 
CPU: Intel Core i7 8700k
RAM: G.Skill Ripjaws 16GB 3000MHz CL15
GPU: MSI GTX 1060 6GB
Mobas: MSI Z370 Gaming Pro Carbon

inż. Avallach

inż. Avallach

Administrator
posty7661
Propsy5239
NagrodyV
ProfesjaProgramista
  • Administrator
Ma znaczenie, i to nie jest moje zdanie tylko coś co jest faktem. "Self" to zmienna której zawartość jest dynamicznie zmieniana przez każdą oddziałującą na obiekt klasy c_npc funkcję, na tenże obiekt (podobnie kiedy parser akurat czyta definicję jakiegoś npc). "Hero" zawsze odnosi się do npc którego instance zostało podane w parametrach startowych jako postać gracza, czyli zarówno w oryginale jak i chyba wszystkich modach (bo zmiana tego bywa miejscami kłopotliwa) pc_hero. Czyli self tylko czasami, zdecydowanie bardzo rzadko w porównaniu z całością przypadków odnosi się do tego samego co hero.

Jastrzab

Jastrzab

Użytkownicy
posty197
Propsy39
Profesjabrak
  • Użytkownicy
Rozumiem, dzięki Avallach  :D
 
CPU: Intel Core i7 8700k
RAM: G.Skill Ripjaws 16GB 3000MHz CL15
GPU: MSI GTX 1060 6GB
Mobas: MSI Z370 Gaming Pro Carbon

Jastrzab

Jastrzab

Użytkownicy
posty197
Propsy39
Profesjabrak
  • Użytkownicy
Odświeżam i czekam na dalsze propozycje ^^
 
CPU: Intel Core i7 8700k
RAM: G.Skill Ripjaws 16GB 3000MHz CL15
GPU: MSI GTX 1060 6GB
Mobas: MSI Z370 Gaming Pro Carbon

Taliasan

Taliasan

Użytkownicy
posty378
Propsy171
Profesjabrak
  • Użytkownicy

Taliasan

Czasowa nieśmiertelność
#26 2011-01-03, 18:01(Ostatnia zmiana: 2011-01-03, 18:51)
.
 


Zysk

Zysk

Użytkownicy
posty606
Propsy451
  • Użytkownicy
Cytat: Avallach link=topic=12515.msg126518#msg126518#msg126518#msg126518 date=1293630956
Ma znaczenie, i to nie jest moje zdanie tylko coś co jest faktem. "Self" to zmienna której zawartość jest dynamicznie zmieniana przez każdą oddziałującą na obiekt klasy c_npc funkcję, na tenże obiekt (podobnie kiedy parser akurat czyta definicję jakiegoś npc). "Hero" zawsze odnosi się do npc którego instance zostało podane w parametrach startowych jako postać gracza, czyli zarówno w oryginale jak i chyba wszystkich modach (bo zmiana tego bywa miejscami kłopotliwa) pc_hero. Czyli self tylko czasami, zdecydowanie bardzo rzadko w porównaniu z całością przypadków odnosi się do tego samego co hero.
nawet w dialogach hero to other, a nie self o ile dobrze pamiętam.

w każdym razie hero chyba nie zawsze wskazuje na pc_hero, tylko na postać kontrolowaną przez gracza (czary przemian, kontrola).

I uwaga conajmniej do stylu, potencjalnie może to jest przyczyna twojego błędu. Zamiast 2 powinno być NPC_FLAG_IMMORTAL, czy coś w ten deseń.
 

Zkirtaem

Zkirtaem

Moderator
Mięso
posty2171
Propsy1689
ProfesjaGracz
  • Moderator
  • Mięso

Zkirtaem
Moderator

Czasowa nieśmiertelność
#29 2011-01-03, 19:16(Ostatnia zmiana: 2011-01-03, 19:19)
Cytuj
if (życie>życie.full-1)
{
nic nie rób
}
else
{
życie=życie.full
}

zmienna życie jak i życie.full jest gdzieś jakoś nazywana, pamiętam jak robiłem skrypty jedzenia to było. Prościej nie wyjaśnię.

A co do tego, że będzie dodawał ciągle, to po prostu

Cytuj
if (wypiłem miksturę)
{
zmienna1=1;
}

a w tick tocku
Cytuj
if (zmienna1=1)
{
licznik=9999;
zmienna1=0;
}
if (licznik>1)
{
skrypt dodawania hp;
}
 

inż. Avallach

inż. Avallach

Administrator
posty7661
Propsy5239
NagrodyV
ProfesjaProgramista
  • Administrator

inż. Avallach
Administrator

Czasowa nieśmiertelność
#30 2011-01-03, 19:27(Ostatnia zmiana: 2011-01-03, 19:29)
Cytat: Zysk link=topic=12515.msg127835#msg127835#msg127835#msg127835 date=1294077517
nawet w dialogach hero to other, a nie self o ile dobrze pamiętam.

w każdym razie hero chyba nie zawsze wskazuje na pc_hero, tylko na postać kontrolowaną przez gracza (czary przemian, kontrola).

I uwaga conajmniej do stylu, potencjalnie może to jest przyczyna twojego błędu. Zamiast 2 powinno być NPC_FLAG_IMMORTAL, czy coś w ten deseń.
W dialogach other to zawsze gracz, self to npc z którym się rozmawia. Ogólnie jestem pewien na 100% tego jak działają te dwie zmienne.
Co do tej uwagi do "stylu", oto wycinek z constans.d:
CONST INT NPC_FLAG_IMMORTAL = 1 << 1;Może nie jestem geniuszem informatyki, ale wydawało mi się że jest to jedno i to samo co zwyczajne 2.

Meatrikz, twoja metoda próbuje cały czas maskować życie herosa, ale pomijając sposób w jaki to napisałeś, naprawdę nie wydaje się to lepszą metodą od nadania flagi nieśmiertelności.

Zysk

Zysk

Użytkownicy
posty606
Propsy451
  • Użytkownicy
a czy 1+234*123/123/234 to też będzie to samo? no niby tak, ale czytanie zajmuje trochę więcej czasu.
 


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