Gdy postać biegnie... 3008 10

O temacie

Autor Bogdan Zwei

Zaczęty 25.06.2012 roku

Wyświetleń 3008

Odpowiedzi 10

Bogdan Zwei

Bogdan Zwei

Użytkownicy
Wulgarny skurwiel pierdolony.
posty1864
Propsy541
Profesjabrak
  • Użytkownicy
  • Wulgarny skurwiel pierdolony.

Bogdan Zwei

Gdy postać biegnie...
2012-06-25, 15:03(Ostatnia zmiana: 2012-06-25, 15:04)
Jaki jest kod (skrypt), który będzie wywoływać efekt, dodawać zmienną, co tylko zechcemy, ale tylko, gdy biegniemy?

Chodzi mi o coś takiego:

if (postaćbiegnie (hero))
{
]wld_playeffect ("spellfx_massdeath", hero, hero, 0, 0, 0, FALSE);
};


Od razu informuję, że C_BodyStateContains(hero, BS_RUN)) i C_BodyStateContains(hero, BS_WALK)) nie działa (doradził mi to Lehona).
 
:ok: zachęca do dalszej pomocy. Nie zapominaj o tym!

Prywatne wiadomości typu "Ej, pomocy" kasuję od razu. Od tego jest forum, a nie PW.

To me, defeat in anything is merely temporary, and its punishment is but an urge for me to greater effort to achieve my goal. Defeat simply tells me that something is wrong in my doing; it is a path leading to success and truth.

In order to realize our true self we must be willing to live without being dependent upon the opinion of others.

Jurigag

Jurigag

Użytkownicy
posty869
Propsy285
ProfesjaSkrypter
  • Użytkownicy
Pokaż cały skrypt, warunek jak chciałeś go dodać bo mogłeś równie dobrze źle to dodać...
 
Skrypter/Tester - Szukasz testera/skryptera - Pisz !

inż. Avallach

inż. Avallach

Administrator
posty7661
Propsy5239
NagrodyV
ProfesjaProgramista
  • Administrator

inż. Avallach
Administrator

Gdy postać biegnie...
#2 2012-06-25, 15:32(Ostatnia zmiana: 2012-06-25, 15:34)
Działa, po prostu prawdopodobnie mylisz wywołanie z warunkiem.
To co jest wewnątrz warunku, dzieje się wtedy kiedy warunek jest wypełniony I wywołasz wówczas całą funkcję. Jeśli po prostu zrobiłeś skrypt:
func void foo ()
{
if (true)
{
print ("bar";
};
};
i zapisałeś go w pliku cokolwiek.d, to napis nigdy się nie pojawi, mimo że warunek zawsze będzie spełniony. Musisz tą funkcję wykonywać.
Jeśli chcesz żeby coś się po prostu działo, musisz zmusić silnik do odpalenia funkcji w której to jest w danym momencie.

W ostateczności możesz użyć ticktocka z warunkiem.

Bogdan Zwei

Bogdan Zwei

Użytkownicy
Wulgarny skurwiel pierdolony.
posty1864
Propsy541
Profesjabrak
  • Użytkownicy
  • Wulgarny skurwiel pierdolony.

Bogdan Zwei

Gdy postać biegnie...
#3 2012-06-25, 17:08(Ostatnia zmiana: 2012-06-25, 17:09)
Skrypt:

func void Sprint()
{
    var int sprint;
    var int stamina; stamina = 10;
        if(MEM_KeyState(KEY_Z)==KEY_PRESSED && !(C_BodyStateContains(hero, BS_FALL)||C_BodyStateContains(hero, BS_JUMP))) {
                if(sprint) {
                        Mdl_RemoveOverlayMDS(hero, "HUMANS_SPRINT.MDS");
if (C_BodyStateContains(hero, BS_RUN) && stamina >= 1)
{
stamina = stamina - 1;
}
else
{
stamina = 10;
Mdl_ApplyOverlayMDS(hero, "HUMANS_SPRINT.MDS");
};
                } else {
                        Mdl_ApplyOverlayMDS(hero, "HUMANS_SPRINT.MDS");
if (C_BodyStateContains(hero, BS_RUN) && stamina == 0)
{
Mdl_ApplyOverlayMDS(hero, "HUMANS_SPRINT.MDS");
stamina = 10;
};
                };
                sprint = !sprint;
        };
};

I nie działa, może coś źle zapisałem?
 
:ok: zachęca do dalszej pomocy. Nie zapominaj o tym!

Prywatne wiadomości typu "Ej, pomocy" kasuję od razu. Od tego jest forum, a nie PW.

To me, defeat in anything is merely temporary, and its punishment is but an urge for me to greater effort to achieve my goal. Defeat simply tells me that something is wrong in my doing; it is a path leading to success and truth.

In order to realize our true self we must be willing to live without being dependent upon the opinion of others.

inż. Avallach

inż. Avallach

Administrator
posty7661
Propsy5239
NagrodyV
ProfesjaProgramista
  • Administrator

inż. Avallach
Administrator

Gdy postać biegnie...
#4 2012-06-25, 17:13(Ostatnia zmiana: 2012-06-25, 17:17)
Czy wywołujesz funkcję Sprint() co klatkę?
Umieść w niej na początku
print ("działa");i zobacz czy się wyświetla. Jeśli nie - twój trigger jest źle ustawiony.

Jeśli sama funkcja będzie działać, daj ten kod w warunku, aby upewnić się że to wina funkcji C_BodyStateContains (co wydaje się mało prawdopodobne):
if (C_BodyStateContains(hero, BS_RUN))
{ print ("działa"); };
Jeśli jednak i ten napis się pojawi, po prostu źle ułożyłeś logikę skryptu, a sama funkcja użyta w warunku jest ok.

Bogdan Zwei

Bogdan Zwei

Użytkownicy
Wulgarny skurwiel pierdolony.
posty1864
Propsy541
Profesjabrak
  • Użytkownicy
  • Wulgarny skurwiel pierdolony.

Bogdan Zwei

Gdy postać biegnie...
#5 2012-06-25, 17:14(Ostatnia zmiana: 2012-06-25, 17:15)
FF_ApplyOnceExt (Sprint, 100, -1);
Owszem. Chyba co klatkę xDD


Zawsze zapominam, ile to co klatkę, ale zdaje mi się, że powinno być 10, albo 9...
 
:ok: zachęca do dalszej pomocy. Nie zapominaj o tym!

Prywatne wiadomości typu "Ej, pomocy" kasuję od razu. Od tego jest forum, a nie PW.

To me, defeat in anything is merely temporary, and its punishment is but an urge for me to greater effort to achieve my goal. Defeat simply tells me that something is wrong in my doing; it is a path leading to success and truth.

In order to realize our true self we must be willing to live without being dependent upon the opinion of others.

Sawik

Sawik

Moderator działu
Rebel
posty4772
Propsy3197
ProfesjaNierób
  • Moderator działu
  • Rebel
FF_ApplyOnceExt (Sprint, 100, -1);
Owszem. Chyba co klatkę xDD


Zawsze zapominam, ile to co klatkę, ale zdaje mi się, że powinno być 10, albo 9...
Czemu FF_ApplyOnceExt? Lepiej by chyba było po prostu
FF_Apply (Sprint);
 
Życzę wam seksu analnego po stronie biernej.
Dropbox +500 mb na start
LowPoly
Wykonanie modelu niskopoligonowego to sztuka kompromisu. Nie jest to jedynie uproszczenie modelu wysokopoligonowego, ale głęboka modyfikacja oraz podejmowanie decyzji często zmieniających wygląd pierwotny obiektu, tak by przy najmniejszej ilości trójkątów uzyskać jak najwierniej odwzorowany kształt oryginału. Nie można też zapomnieć o tym iż musi nadal wyglądać przekonywająco i tak balansować by uzyskać efekt optymalny.

Podstawowym założeniem jest, że model nie powinien mieć zbędnych, niewidocznych dla gracza detali włączonych w geometrie. Większość obiektów jakie znajdują się w grze powinna prezentować się najlepiej z odległości około 3-5 metrów. Wszelkie detale, które zanikają, wydają się płaskie lub zlewają się z bryłą modelu należy uznać za zbędne i pozostawić je na normal mapie.

Fakt, iż gracz będzie w stanie podejść bliżej do obiektu i zobaczyć go z mniejszej niż 3m odległości nie powinno stanowić większego problemu, gdyż większą rolę odgrywają wtedy tekstury oraz dodatkowy detal zależny od materiału obiektu. To właśnie kompromis między wydajnością, a szczegółowością otoczenia.

Detal, którego nie widać z 3-5 metrów nie powinnien istnieć w geometrii modelu.
Krawędzie znajdujące się blisko siebie, które zlewają się z większej odległości należy uprościć do wspólnej płaszczyzny

Bogdan Zwei

Bogdan Zwei

Użytkownicy
Wulgarny skurwiel pierdolony.
posty1864
Propsy541
Profesjabrak
  • Użytkownicy
  • Wulgarny skurwiel pierdolony.
FF_ApplyOnceExt (Sprint, 100, -1);
Owszem. Chyba co klatkę xDD


Zawsze zapominam, ile to co klatkę, ale zdaje mi się, że powinno być 10, albo 9...
Czemu FF_ApplyOnceExt? Lepiej by chyba było po prostu
FF_Apply (Sprint);


Lehona, powiedział, że to powinienem dać. Jak się tu wypowie, to się okaże, czy dobrze, czy źle zrozumiałem.
 
:ok: zachęca do dalszej pomocy. Nie zapominaj o tym!

Prywatne wiadomości typu "Ej, pomocy" kasuję od razu. Od tego jest forum, a nie PW.

To me, defeat in anything is merely temporary, and its punishment is but an urge for me to greater effort to achieve my goal. Defeat simply tells me that something is wrong in my doing; it is a path leading to success and truth.

In order to realize our true self we must be willing to live without being dependent upon the opinion of others.

Sawik

Sawik

Moderator działu
Rebel
posty4772
Propsy3197
ProfesjaNierób
  • Moderator działu
  • Rebel
FrameFunctions jest jedynym przetłumaczonym kawałkiem dokumentacji LeGo, które jest obecnie w internecie.
Skorzystaj z tego.
 
Życzę wam seksu analnego po stronie biernej.
Dropbox +500 mb na start
LowPoly
Wykonanie modelu niskopoligonowego to sztuka kompromisu. Nie jest to jedynie uproszczenie modelu wysokopoligonowego, ale głęboka modyfikacja oraz podejmowanie decyzji często zmieniających wygląd pierwotny obiektu, tak by przy najmniejszej ilości trójkątów uzyskać jak najwierniej odwzorowany kształt oryginału. Nie można też zapomnieć o tym iż musi nadal wyglądać przekonywająco i tak balansować by uzyskać efekt optymalny.

Podstawowym założeniem jest, że model nie powinien mieć zbędnych, niewidocznych dla gracza detali włączonych w geometrie. Większość obiektów jakie znajdują się w grze powinna prezentować się najlepiej z odległości około 3-5 metrów. Wszelkie detale, które zanikają, wydają się płaskie lub zlewają się z bryłą modelu należy uznać za zbędne i pozostawić je na normal mapie.

Fakt, iż gracz będzie w stanie podejść bliżej do obiektu i zobaczyć go z mniejszej niż 3m odległości nie powinno stanowić większego problemu, gdyż większą rolę odgrywają wtedy tekstury oraz dodatkowy detal zależny od materiału obiektu. To właśnie kompromis między wydajnością, a szczegółowością otoczenia.

Detal, którego nie widać z 3-5 metrów nie powinnien istnieć w geometrii modelu.
Krawędzie znajdujące się blisko siebie, które zlewają się z większej odległości należy uprościć do wspólnej płaszczyzny

Bogdan Zwei

Bogdan Zwei

Użytkownicy
Wulgarny skurwiel pierdolony.
posty1864
Propsy541
Profesjabrak
  • Użytkownicy
  • Wulgarny skurwiel pierdolony.
Czytałem...
 
:ok: zachęca do dalszej pomocy. Nie zapominaj o tym!

Prywatne wiadomości typu "Ej, pomocy" kasuję od razu. Od tego jest forum, a nie PW.

To me, defeat in anything is merely temporary, and its punishment is but an urge for me to greater effort to achieve my goal. Defeat simply tells me that something is wrong in my doing; it is a path leading to success and truth.

In order to realize our true self we must be willing to live without being dependent upon the opinion of others.

Bogdan Zwei

Bogdan Zwei

Użytkownicy
Wulgarny skurwiel pierdolony.
posty1864
Propsy541
Profesjabrak
  • Użytkownicy
  • Wulgarny skurwiel pierdolony.
Dobra, już działa. Musiałem zrobić nową funkcję. Temat można zamknąć.
 
:ok: zachęca do dalszej pomocy. Nie zapominaj o tym!

Prywatne wiadomości typu "Ej, pomocy" kasuję od razu. Od tego jest forum, a nie PW.

To me, defeat in anything is merely temporary, and its punishment is but an urge for me to greater effort to achieve my goal. Defeat simply tells me that something is wrong in my doing; it is a path leading to success and truth.

In order to realize our true self we must be willing to live without being dependent upon the opinion of others.


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