Forum www.l2walkerpolska.fora.pl Strona Główna www.l2walkerpolska.fora.pl
L2Walker, Lineage II, L2.Net, L2Divine, L2Superman,
 
 FAQFAQ   SzukajSzukaj   UżytkownicyUżytkownicy   GrupyGrupy   GalerieGalerie   RejestracjaRejestracja 
 ProfilProfil   Zaloguj się, by sprawdzić wiadomościZaloguj się, by sprawdzić wiadomości   ZalogujZaloguj 

Odczyt bufow i debufow summona i party.

 
Napisz nowy temat   Odpowiedz do tematu    Forum www.l2walkerpolska.fora.pl Strona Główna -> L2.Net Scenariusze (scrypting)
Zobacz poprzedni temat :: Zobacz następny temat  
Autor Wiadomość
wielebny




Dołączył: 20 Cze 2011
Posty: 4
Przeczytał: 0 tematów

Ostrzeżeń: 0/5

PostWysłany: Sob 8:55, 25 Cze 2011    Temat postu: Odczyt bufow i debufow summona i party.

Witam,
chce uzyc biblioteki DLIB: ReadPartySpelled.l2s do odczytu bufow i debufow summona.
GET_EFFECTS wymaga dotacji wiec postanowilem uzyc funkcji z DLIB.
Nie bardzo kumam jak tam wyglada struktura tej ARRAYLISTy, ktora zwraca funkcja DLIB::Packets::ReadPartySpelled.
Nie bardzo kumam kiedy stosowac <dana>, a kiedy #$...
Może mi to ktos wyjasnic?


Kod:
INCLUDE "STDLIB\Player.l2c"
INCLUDE DLIB\Packets\Classes\PartySpelled.l2c

Summon::GlobalVariables VOID 0

PRINT_TEXT "Servitor config"

THREAD Unpack::Pipeline::ReadPetBuffs


WHILE ONE == ONE

  SLEEP 60000
 
WEND

END_SCRIPT


FUNCTION Summon::GlobalVariables

  DEFINE_GLOBAL QUEUE Pipeline::ReadPetBuffs

  DEFINE_GLOBAL SORTEDLIST ReadPetBuffs_SL

  DEFINE_GLOBAL INT PET1 1128

  DEFINE_GLOBAL INT CURE_POISON 1018
  DEFINE_GLOBAL INT CURE_BLEED 1018
  DEFINE_GLOBAL INT SUMMON_HEAL 1127
  DEFINE_GLOBAL INT SUMMON_PDEF 1140
  DEFINE_GLOBAL INT SUMMON_MDEF 1139
  DEFINE_GLOBAL INT SUMMON_PATACK 1146
  DEFINE_GLOBAL INT SUMMON_HASTE 1141
  DEFINE_GLOBAL INT SUMMON_SS 1547

  DEFINE_GLOBAL INT TIME_SKILL_CAST_DELAY 2000

  Summon::Init::Events VOID 0
 
RETURN VOID


FUNCTION Summon::Init::Events

SET_EVENT "<SCRIPTEVENT_SERVERPACKET>" "<SYSTEM_CURRENTFILE>" Packet::PetBuffs 244

 
RETURN VOID


FUNCTION Packet::PetBuffs

  Pipeline::ReadPetBuffs.ADD PACKET 
 
RETURN VOID




FUNCTION Unpack::Pipeline::ReadPetBuffs

  DEFINE BYTEBUFFER ReadPetBuffs_BB
 
  WHILE ONE == ONE

    IF Pipeline::ReadPetBuffs.COUNT > 0

      ReadPetBuffs_BB = Pipeline::ReadPetBuffs.POP

      CALL_EXTERN "DLIB\Packets\ReadPartySpelled.l2s" DLIB::Packets::ReadPartySpelled ReadPetBuffs_SL 1  ReadPetBuffs_BB


      PRINT_TEXT "Incoming update to ReadPetBuffs"

      PRINT_TEXT "OBJECT_ID: <ReadPetBuffs_SL>"

//HOW write EFFECTS in PRINT_TEXT ???????????????????????????????

    ENDIF

    SLEEP 100
  WEND   
RETURN VOID


pozdrawiam


Post został pochwalony 0 razy
Powrót do góry
Zobacz profil autora
Zobacz poprzedni temat :: Zobacz następny temat  
Autor Wiadomość
FX
Moderator



Dołączył: 28 Sty 2010
Posty: 682
Przeczytał: 0 tematów

Pomógł: 17 razy
Ostrzeżeń: 0/5

PostWysłany: Sob 16:20, 25 Cze 2011    Temat postu:

wklej jeszcze fukcje
DLIB::Packets::ReadPartySpelled
z pliku
DLIB\Packets\ReadPartySpelled.l2s

mozliwe ze zwykle inty beda w tablicy ale niemam pewnosci czy to niesa jakeis objekty jakiejs klasy
dlatego przydalo by sie znac tamta funkcje


Post został pochwalony 0 razy
Powrót do góry
Zobacz profil autora
Zobacz poprzedni temat :: Zobacz następny temat  
Autor Wiadomość
wielebny




Dołączył: 20 Cze 2011
Posty: 4
Przeczytał: 0 tematów

Ostrzeżeń: 0/5

PostWysłany: Sob 23:36, 25 Cze 2011    Temat postu:

Juz na forum L2net dostalem podpowiedz. Na koncu powinno mniej wiecej wygladac tak:

Kod:

      PRINT_TEXT "Incoming update to ReadPetBuffs"

      PRINT_TEXT "OBJECT_ID: <ReadPetBuffs_SL>"
      PRINT_TEXT "COUNT: <ReadPetBuffs_SL>"

      FOR Z 0 "<ReadPetBuffs_SL>" 1
          PRINT_TEXT "<ReadPetBuffs_SL>"
      NEXT

      IF "ReadPetBuffs_SL.#$EFFECTS.CONTAINS_KEY 1547" == TRUE
         PRINT_TEXT "Spirit"
      ENDIF
      IF "ReadPetBuffs_SL.#$EFFECTS.CONTAINS_KEY 1146" == TRUE
         PRINT_TEXT "Might"
      ENDIF


Teraz tylko umiejetnie to wykozystac Wink...
Oczywiscie ta sama funkcje mozna wykozystac do skanowania calego PT.... bufy i debufy. VFX_ABNORMAL to tylko znacznik dla wizualizacji debufow w kliencie.


Post został pochwalony 0 razy
Powrót do góry
Zobacz profil autora
Wyświetl posty z ostatnich:   
Napisz nowy temat   Odpowiedz do tematu    Forum www.l2walkerpolska.fora.pl Strona Główna -> L2.Net Scenariusze (scrypting) Wszystkie czasy w strefie EET (Europa)
Strona 1 z 1

 
Skocz do:  
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach

fora.pl - załóż własne forum dyskusyjne za darmo
Powered by phpBB © 2001, 2005 phpBB Group
Regulamin