Pokaż wiadomości

Ta sekcja pozwala Ci zobaczyć wszystkie wiadomości wysłane przez tego użytkownika. Zwróć uwagę, że możesz widzieć tylko wiadomości wysłane w działach do których masz aktualnie dostęp.


Pokaż wątki - starcd78

Strony: [1] 2
1
Pytania i problemy / Skyrim nie widzi zapisów
« dnia: 2016-12-03, 10:13 »
Tak jak w temacie Skyrim nie widzi zapisów pomimo tego, że znajdują się w folderze MyGames/Skyrim/Saves, wcześniej normalnie wczytywał, a teraz nie, pomimo że nikt nic do tego nie dodawał ani usuwał. Co robić?

2
Nie wiem czy dobry dział, ale zrobiłem moda paczka jest cacy, oprócz jednej rzeczy. Muzyka w Khorinis się odtwarza i wszystkie inne, oprócz mojej format .sgt jest zachowany, muzyka jest wzięta z G2 tylko ją skopiowałem i zmieniłem nazwę w musicinst wszystko zrobione, normalnie jak robiłem tego moda, to wszystko się odtwarzało, po zrobieniu paczki ta moja tylko nie. Czy mogłem coś źle spakować? Spakowałem do paczki music.dat, oraz tą muzykę z formatem .sgt i oczywiście ten świat z tą muzyką.

3
Spacer / Spacer ładuje tylko część dialogów
« dnia: 2016-10-17, 23:18 »
Witam, chciałem w końcu ukończyć modyfikacje i utworzyć dialogi pomiędzy pistaciami w czasie gry, włączam spacera klikam na ikonkę z listą następnie upload i w międzyczasie usuwam pliki ou i csl, po reuploadzie lista pokazuje zaledwie 4 postacie z zaladowanymi dialogami, powinno być conajmniej 20... Refresh i powtórny reupload nic nie daje. Jakieś pomysły?

4
Pytania i problemy / Dokładna i idealna paczka z modem
« dnia: 2016-09-25, 13:26 »
Witam chcę zrobić paczkę z modem wiem, że się ją buduje gothic vdfsem, a w build volume dodajemy dialogi cutscene i gothic src jesli dobrze pamietam z tutka, a co z np. Animacjami, zenami, teksturami i innymi? Mam dodawac wszystkie dodane przeze mnie pliki, a moze caly folder np. Anims? Dodam ze mod jaki planuje zrobic dodaje pare rzeczy do Gothica.

zły dział. g1210.  :|

5
Spacer / Spacer usunął wszystkie itemy
« dnia: 2016-09-01, 22:15 »
Tak jak w temacie spacer usunął wszystkie itemy nie wiem jak i czemu, zostały same te kwadraciki i pisze nazwa itemu, voby, waypointy i inne są na miejscu... Czy da się to przywrócić? Czy muszę wszystko na nowo? :/

6
Skrypty / Funkcja dla NPC
« dnia: 2016-08-26, 13:45 »
Mam taki problem jeśli chodzi o pewną funkcję dla NPC...
Oto co mu dodałem w jego skrypcie pod daily_routine:

Spoiler
// ------ TA anmelden ------
   daily_routine    = Rtn_Start_5099;

        start_aistate            = ZS_MM_RTN_TPOR;

A to skrypt rutyny jaką powinien wykonywać:

Spoiler
var int TELE_Func_01_FUNC_OneTime;                                             
func void ZS_MM_RTN_TPOR()
{
   if (Hlp_GetInstanceID(nazwanpca))
        && (TELE_Func_01_FUNC_OneTime == FALSE)
        && (self.attribute[ATR_HITPOINTS] < 800)
        && (self.attribute[ATR_HITPOINTS] > 600)
   {
   
   Wld_PlayEffect("spellFX_Teleport_RING",  nazwanpca  , nazwanpca    , 0, 0, 0, FALSE );
        Snd_Play ("MFX_TELEPORT_CAST");
        AI_Teleport (nazwanpca, "waypointx");
   TELE_Func_01_FUNC_OneTime = TRUE;

   };
};
var int TELE_Func_02_FUNC_OneTime;                                             
func int ZS_MM_RTN_TPOR_Loop ()
{
   if (Hlp_GetInstanceID(nazwanpca))
        && (TELE_Func_02_FUNC_OneTime == FALSE)
        && (self.attribute[ATR_HITPOINTS] < 500)
        && (self.attribute[ATR_HITPOINTS] > 300)
   {
   
   Wld_PlayEffect("spellFX_Teleport_RING",  nazwanpca  , nazwanpca    , 0, 0, 0, FALSE );
        Snd_Play ("MFX_TELEPORT_CAST");
        AI_Teleport (nazwanpca, "waypointy");
   TELE_Func_02_FUNC_OneTime = TRUE;

   };
};
var int TELE_Func_03_FUNC_OneTime;                                             
func int ZS_MM_RTN_TPOR_Next ()
{
   if (Hlp_GetInstanceID(nazwanpca))
        && (TELE_Func_03_FUNC_OneTime == FALSE)
        && (self.attribute[ATR_HITPOINTS] < 200)
        && (self.attribute[ATR_HITPOINTS] > 1)
   {
   
   Wld_PlayEffect("spellFX_Teleport_RING",  nazwanpca  , nazwanpca    , 0, 0, 0, FALSE );
        Snd_Play ("MFX_TELEPORT_CAST");
        AI_Teleport (nazwanpca, "waypointz");
   TELE_Func_03_FUNC_OneTime = TRUE;

   };
};



No i po prostu nic sie nie dzieje po mimo tego, ze po kolei prawie zeruje jego hp :/
Co na to zaradzić?

7
1. Witam chciałbym, aby po wejściu w inny zen bohater musiał spożywać dany item w danym czasie, co 3 godziny, jeżeli w ciągu 3 godzin nie spożyje tego jego życie zacznie spadać o 1 (podobnie jak w regeneracji), zapewne trzeba będzie użyc Tick-Tocku, jednak nigdy się w niego nie bawiłem a samouczek o nim jest niekompletny (obrazka nie ma), nie chciałbym także pobierać Ikarusa i Lego, chyba że nie ma innego sposobu. Ktoś naprowadzi?

2. Co zrobić, aby szkielet miał "otwarty" ekwipunek czyli wyciągał i chował broń kiedy chce (bez zmiany jego gildii)?


8
1.Otóż mam problem zrobiłem nowego potwora na podstawie wilka jedynie co mu zmieniłem to jego wygląd .asc, a w jego mdsie zastąpiłem nowym dźwiękiem (rozszerzenie typu .wav), dźwięki zwierzaka wrzuciłem do folderu sound/SFX, spacer odtwarza dźwięk, jednak kiedy przywołuje bestie w grze nic nie odtwarza. W SFXInst także wszystko zrobiłem. Umieszczam jeszcze dla pewności czy dobrze.

Skrypt dźwięku zwierzaka w SFXInst

Spoiler
/* Hyena                                                                                                                     
            INSTANCE HIE_Ambient                (C_SFX_DEF) {file= "HIE_Ambient01.wav";            vol = 80;         };
            INSTANCE HIE_Ambient_A1             (C_SFX_DEF) {file= "HIE_Ambient02.wav";            vol = 80;         };
            INSTANCE HIE_Ambient_A2             (C_SFX_DEF) {file= "nosound.wav";               vol = 0;         };
            INSTANCE HIE_Ambient_A3               (C_SFX_DEF) {file= "nosound.wav";               vol = 0;         };
            INSTANCE HIE_Ambient_A4               (C_SFX_DEF) {file= "nosound.wav";               vol = 0;         };
            INSTANCE HIE_Ambient_Short             (C_SFX_DEF) {file= "HIE_Ambient_Short01.wav";      vol = 45;         };
            INSTANCE HIE_Ambient_Short_A1          (C_SFX_DEF) {file= "HIE_Ambient_Short02.wav";      vol = 45;         };
            INSTANCE HIE_Ambient_Short_A2          (C_SFX_DEF) {file= "HIE_Ambient_Short03.wav";      vol = 45;         };
            INSTANCE HIE_Ambient_Short_A3          (C_SFX_DEF) {file= "HIE_Ambient_Short04.wav";      vol = 45;         };
            INSTANCE HIE_Ambient_Short_A4          (C_SFX_DEF) {file= "nosound.wav";               vol = 0;         };
            INSTANCE HIE_Ambient_Short_A5          (C_SFX_DEF) {file= "nosound.wav";               vol = 0;         };
            INSTANCE HIE_Ambient_Short_A6          (C_SFX_DEF) {file= "nosound.wav";               vol = 0;         };
            INSTANCE HIE_Ambient_Short_A7          (C_SFX_DEF) {file= "nosound.wav";               vol = 0;         };
            INSTANCE HIE_Attack                (C_SFX_DEF) {file= "HIE_Attack01.wav";            vol = 112;         };
            INSTANCE HIE_Attack_A1                (C_SFX_DEF) {file= "HIE_Attack02.wav";            vol = 112;         };
            INSTANCE HIE_Die                   (C_SFX_DEF) {file= "HIE_Die01.wav";               vol = 120;         };
            INSTANCE HIE_Growl                   (C_SFX_DEF) {file= "HIE_Growl01.wav";            vol = 95;         };
            INSTANCE HIE_Hurt                   (C_SFX_DEF) {file= "HIE_Hurt01.wav";            vol = 55;         };
            INSTANCE HIE_Hurt_A1               (C_SFX_DEF) {file= "HIE_Hurt02.wav";            vol = 55;         };
            INSTANCE HIE_Hurt_A2               (C_SFX_DEF) {file= "HIE_Hurt03.wav";            vol = 55;         };
            INSTANCE HIE_Warn                   (C_SFX_DEF) {file= "HIE_Warn01.wav";            vol = 85;         };
   

Skrypt potwora:

Spoiler
//********************
//   Hyena Prototype                                          
//********************

PROTOTYPE Mst_Default_Hyena(C_Npc)         
{
   //----- Monster ----
   name                     =   "Hiena";
   guild                     =   GIL_WOLF;
   aivar[AIV_MM_REAL_ID]         =    ID_HYENA;
   level                     =   10;
   
   //----- Attribute ----
   attribute   [ATR_STRENGTH]      =   55;
   attribute   [ATR_DEXTERITY]      =   30;
   attribute   [ATR_HITPOINTS_MAX]   =   120;
   attribute   [ATR_HITPOINTS]      =   120;
   attribute   [ATR_MANA_MAX]       =   0;
   attribute   [ATR_MANA]          =   0;
   
   //----- Protections ----
   protection   [PROT_BLUNT]      =   55;
   protection   [PROT_EDGE]         =   55;
   protection   [PROT_POINT]      =   10;
   protection   [PROT_FIRE]         =   55;
   protection   [PROT_FLY]         =   55;
   protection   [PROT_MAGIC]      =   10;

   //---- Damage Types ----
   damagetype                   =   DAM_EDGE;
//   damage      [DAM_INDEX_BLUNT]   =   0;
//   damage      [DAM_INDEX_EDGE]   =   0;
//   damage      [DAM_INDEX_POINT]   =   0;
//   damage      [DAM_INDEX_FIRE]   =   0;
//   damage      [DAM_INDEX_FLY]      =   0;
//   damage      [DAM_INDEX_MAGIC]   =   0;

   //----- Kampf Taktik ----
   fight_tactic   =   FAI_WOLF;
   
   //----- Senses & Ranges ----
   senses         =    SENSE_HEAR | SENSE_SEE | SENSE_SMELL;
   senses_range   =   PERC_DIST_MONSTER_ACTIVE_MAX;
   
   aivar[AIV_MM_ThreatenBeforeAttack] = TRUE;
   aivar[AIV_MM_FollowTime]   = FOLLOWTIME_LONG;
   aivar[AIV_MM_FollowInWater] = TRUE;
   aivar[AIV_MM_Packhunter]   = TRUE;

   //----- Daily Routine ----
   start_aistate            = ZS_MM_AllScheduler;

   aivar[AIV_MM_RoamStart]    = OnlyRoutine;   
};


//************
//   Visuals
//************


func void B_SetVisuals_Hyena()
{
   Mdl_SetVisual         (self,"HIEN.mds");
   //                        Body-Mesh      Body-Tex   Skin-Color   Head-MMS   Head-Tex   Teeth-Tex   ARMOR
   Mdl_SetVisualBody      (self,   "hien_body",      DEFAULT,   DEFAULT,   "",         DEFAULT,     DEFAULT,   -1);
};


//************
//   Hyena       
//************

INSTANCE Hyena   (Mst_Default_Hyena)
{
   B_SetVisuals_Hyena();
   Npc_SetToFistMode(self);
   CreateInvItems (self, ItFoMuttonRaw, 1);
};


Plik MDS:

Spoiler
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// Last Changes:
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Model ("Hyena")
{
   meshAndTree ("hien_body.ASC" DONT_USE_MESH)
   registerMesh ("hien_body.ASC")

   aniEnum
   {
      modelTag ("DEF_HIT_LIMB"               "Bip01 Ponytail1")                                                                                   
      ani      ("S_FISTRUN"                  1                  "S_FISTRUN"           0.0 0.0  M. "HIE_AMBIENT_KS01.ASC"         F  1  49)         
      {
         *eventSFX (2 "HIE_AMBIENT" EMPTY_SLOT)
      }
      ani      ("T_FISTRUN_2_FISTRUNL"       1                  "S_FISTRUNL"          0.0 0.0  M. "HIE_RUNLOOP_JUE04_FR9_23.ASC" F  1  8)         
      ani      ("S_FISTRUNL"                 1                  "S_FISTRUNL"          0.0 0.0  M. "HIE_RUNLOOP_JUE04_FR9_23.ASC" F  9  23)         
      {
         *eventSFX     (10 "HIE_AMBIENT_SHORT" EMPTY_SLOT)
         *eventSFXGrnd (11 "RUN")                         
         *eventSFXGrnd (13 "RUN")                         
         *eventSFXGrnd (16 "RUN")                         
         *eventSFXGrnd (18 "RUN")                         
      }
      ani      ("T_FISTRUNL_2_FISTRUN"       1                  "S_FISTRUN"           0.0 0.0  M. "HIE_RUNLOOP_JUE04_FR9_23.ASC" F  24 42)         
      {
         *eventSFXGrnd (28 "RUN")
         *eventSFXGrnd (34 "RUN")
      }
      aniBlend ("T_FISTRUNR_2_FISTRUN"                          "S_FISTRUN"           0.0 0.0)                                                     
      aniAlias ("T_FISTJUMPB"                1                  "S_FISTRUN"           0.0 0.0  M. "T_STUMBLEB"                   )                 
      ani      ("T_FISTRUNTURNL"             20                 "T_FISTRUNTURNL"      0.8 0.8  M. "HIE_TURNL_M01.ASC"            F  1  24)         
      {
         *eventSFXGrnd (6  "TURN")
         *eventSFXGrnd (18 "TURN")
      }
      ani      ("T_FISTRUNTURNR"             20                 "T_FISTRUNTURNR"      0.8 0.8  M. "HIE_TURNR_M01.ASC"            F  1  24)         
      {
         *eventSFXGrnd (6  "TURN")
         *eventSFXGrnd (18 "TURN")
      }
      ani      ("S_FISTWALK"                 1                  "S_FISTWALK"          0.0 0.0  M. "HIE_WALKAMBIENT_A01.ASC"      F  1  49)         
      {
         *eventSFX (2 "HIE_AMBIENT" EMPTY_SLOT)
      }
      ani      ("T_FISTWALK_2_FISTWALKL"     1                  "S_FISTWALKL"         0.0 0.0  M. "HIE_WALK_V01.ASC"             F  1  6)         
      ani      ("S_FISTWALKL"                1                  "S_FISTWALKL"         0.0 0.0  M. "HIE_WALK_V01.ASC"             F  7  36)         
      {
         *eventSFX     (8  "HIE_AMBIENT" EMPTY_SLOT)
         *eventSFXGrnd (14 "SNEAK")                 
         *eventSFXGrnd (22 "SNEAK")                 
         *eventSFXGrnd (30 "SNEAK")                 
         *eventSFXGrnd (35 "SNEAK")                 
      }
      ani      ("T_FISTWALKL_2_FISTWALK"     1                  "S_FISTWALK"          0.0 0.0  M. "HIE_WALK_V01.ASC"             F  37 51)         
      {
         *eventSFXGrnd (44 "RUN")
         *eventSFXGrnd (50 "RUN")
      }
      aniBlend ("T_FISTWALKR_2_FISTWALK"                        "S_FISTWALK"          0.5 0.5)                                                     
      aniAlias ("T_FISTWALK_2_FISTWALKBL"    1                  "S_FISTWALKBL"        0.0 0.0  M. "T_FISTWALKL_2_FISTWALK"       R)               
      aniAlias ("S_FISTWALKBL"               1                  "S_FISTWALKBL"        0.0 0.0  M. "S_FISTWALKL"                  R)               
      aniAlias ("T_FISTWALKBL_2_FISTWALK"    1                  "S_FISTWALK"          0.0 0.0  M. "T_FISTWALK_2_FISTWALKL"       R)               
      aniBlend ("T_FISTWALKBR_2_FISTWALK"                       "S_FISTWALK"          0.2 0.2)                                                     
      aniAlias ("T_FISTWALKTURNL"            20                 "T_FISTWALKTURNL"     0.8 0.8  M. "T_FISTRUNTURNL"               F)               
      aniAlias ("T_FISTWALKTURNR"            20                 "T_FISTWALKTURNR"     0.8 0.8  M. "T_FISTRUNTURNR"               F)               
      aniBlend ("T_FISTRUN_2_FISTWALK"                          "S_FISTWALK"          0.2 0.2)                                                     
      aniBlend ("T_FISTWALK_2_FISTRUN"                          "S_FISTRUN"           0.2 0.2)                                                     
      aniBlend ("T_FISTWALKL_2_FISTRUNL"                        "S_FISTRUNL"          0.1 0.1)                                                     
      aniBlend ("T_FISTRUNL_2_FISTWALKL"                        "S_FISTWALKL"         0.1 0.1)                                                     
      ani      ("T_FISTRUNL_2_JUMP"          1                  "S_JUMP"              0.1 0.1  M. "HIE_JUMP_JUE01.ASC"           F  7  13)         
      {
         *eventSFX (9 "HIE_AMBIENT_SHORT" EMPTY_SLOT)
      }
      aniAlias ("T_FISTRUNR_2_JUMP"          1                  "S_JUMP"              0.1 0.0  M. "T_FISTRUNL_2_JUMP"            F)               
      ani      ("T_STAND_2_JUMP"             1                  "S_JUMP"              0.0 0.0  M. "HIE_JUMP_JUE01.ASC"           F  1  13)         
      {
         *eventSFX (2 "HIE_AMBIENT_SHORT" EMPTY_SLOT)
      }
      ani      ("S_JUMP"                     1                  "S_JUMP"              0.0 0.0  MF "HIE_JUMP_JUE01.ASC"           F  14 14)         
      ani      ("T_JUMP_2_STAND"             1                  ""                    0.0 0.1  M. "HIE_JUMP_JUE01.ASC"           F  15 22)         
      {
         *eventSFXGrnd (20 "RUN")
      }
      ani      ("T_STAND_2_JUMPUPLOW"        1                  "S_JUMPUPLOW"         0.0 0.0  M. "HIE_JUMPUPLOW_KS01.ASC"       F  1  21)         
      ani      ("S_JUMPUPLOW"                1                  "T_JUMPUPLOW_2_STAND" 0.0 0.0  MF "HIE_JUMPUPLOW_KS01.ASC"       F  21 31)         
      ani      ("T_JUMPUPLOW_2_STAND"        1                  ""                    0.0 0.0  MF "HIE_JUMPUPLOW_KS01.ASC"       F  31 45)         
      {
         *eventSFX (32 "HIE_AMBIENT_SHORT" EMPTY_SLOT)
      }
      ani      ("T_FISTRUNSTRAFEL"           1                  "T_FISTRUNSTRAFEL"    0.1 0.1  M. "HIE_JUMP_M01.ASC"             F  61 77)         
      {
         *eventSFX     (62 "HIE_AMBIENT_SHORT" EMPTY_SLOT)
         *eventSFXGrnd (72 "TURN")                       
      }
      ani      ("T_FISTRUNSTRAFER"           1                  "T_FISTRUNSTRAFER"    0.1 0.1  M. "HIE_JUMP_M01.ASC"             F  81 97)         
      {
         *eventSFX     (82 "HIE_AMBIENT_SHORT" EMPTY_SLOT)
         *eventSFXGrnd (96 "TURN")                       
      }
      aniAlias ("T_FISTWALKSTRAFEL"          1                  "T_FISTWALKSTRAFEL"   0.1 0.1  M. "T_FISTRUNSTRAFEL"             F)               
      aniAlias ("T_FISTWALKSTRAFER"          1                  "T_FISTWALKSTRAFER"   0.1 0.1  M. "T_FISTRUNSTRAFER"             F)               
      aniBlend ("T_JUMP_2_FISTRUNL"                             "S_FISTRUNL"          0.1 0.1)                                                     
      ani      ("T_STUMBLEB"                 1                  ""                    0.1 0.1  M. "HIE_STUMBLE_BACK_JUE01.ASC"   F  8  22)         
      {
         *eventSFX (8 "HIE_HURT" EMPTY_SLOT)
      }
      ani      ("T_STUMBLE"                  1                  ""                    0.1 0.1  M. "HIE_STUMBLE_FORWRD_JUE01.ASC" F  0  20)         
      {
         *eventSFX (1 "HIE_HURT" EMPTY_SLOT)
      }
      ani      ("S_FALLDN"                   1                  "S_FALLDN"            0.0 0.0  MF "HIE_FALLDN_M01.ASC"           F  19 19)         
      ani      ("T_FALLDN_2_STAND"           1                  ""                    0.1 0.2  M. "HIE_FALLDN_M01.ASC"           F  20 44)         
      {
         *eventSFX     (20 "HIE_AMBIENT_SHORT" EMPTY_SLOT)
         *eventSFXGrnd (22 "RUN")                         
         *eventSFXGrnd (25 "RUN")                         
      }
      aniBlend ("T_JUMPUP_2_FALLDN"                             "S_FALLDN"            0.2 0.2)                                                     
      aniBlend ("T_JUMP_2_FALLDN"                               "S_FALLDN"            0.2 0.2)                                                     
      aniBlend ("T_FALLDN_2_FALL"                               "S_FALL"              0.1 0.2)                                                     
      aniBlend ("T_FALLDN_2_FALLB"                              "S_FALLB"             0.1 0.2)                                                     
      aniAlias ("S_FALL"                     1                  "S_FALL"              0.1 0.0  MF "S_FALLDN"                     F)               
      ani      ("T_FALL_2_FALLEN"            1                  "S_FALLEN"            0.0 0.0  M. "HIE_FALLEN_M01.ASC"           F  1  17)         
      {
         *eventSFX (1  "HIE_HURT"     EMPTY_SLOT)
         *eventSFX (11 "M_FALL_SMALL" EMPTY_SLOT)
      }
      ani      ("S_FALLEN"                   1                  "S_FALLEN"            0.0 0.0  M. "HIE_FALLEN_M01.ASC"           F  18 18)         
      ani      ("T_FALLEN_2_STAND"           1                  ""                    0.0 0.2  M. "HIE_FALLEN_M01.ASC"           F  19 56)         
      aniAlias ("S_FALLB"                    1                  "S_FALLB"             0.1 0.0  MF "S_FALLDN"                     F)               
      aniAlias ("T_FALLB_2_FALLENB"          1                  "S_FALLENB"           0.0 0.0  M. "T_FALL_2_FALLEN"              F)               
      aniAlias ("S_FALLENB"                  1                  "S_FALLENB"           0.0 0.0  M. "S_FALLEN"                     F)               
      aniAlias ("T_FALLENB_2_STAND"          1                  ""                    0.0 0.2  M. "T_FALLEN_2_STAND"             F)               
      aniAlias ("T_WALK_2_WALKWL"            1                  "S_WALKWL"            0.1 0.0  M. "T_FISTWALK_2_FISTWALKL"       F)               
      aniAlias ("S_WALKWL"                   1                  "S_WALKWL"            0.0 0.0  M. "S_FISTWALKL"                  F)               
      aniAlias ("T_WALKWL_2_WALK"            1                  "S_FISTWALK"          0.0 0.0  M. "T_FISTWALKL_2_FISTWALK"       F)               
      aniBlend ("T_WALKWR_2_WALK"                               "S_FISTWALK"          0.1 0.1)                                                     
      aniAlias ("T_WALK_2_WALKWBL"           1                  "S_WALKWBL"           0.0 0.0  M. "T_FISTWALKL_2_FISTWALK"       R)               
      aniAlias ("S_WALKWBL"                  1                  "S_WALKWBL"           0.0 0.0  M. "S_FISTWALKL"                  R)               
      aniAlias ("T_WALKWBL_2_WALK"           1                  "S_FISTWALK"          0.0 0.0  M. "T_FISTWALK_2_FISTWALKL"       R)               
      aniBlend ("T_WALKWBR_2_WALK"                              "S_FISTWALK"          0.1 0.1)                                                     
      aniAlias ("T_WALKWL_2_RUNL"            1                  ""                    0.0 0.1  M. "S_FISTWALKL"                  F)               
      ani      ("T_WALKWL_2_SWIMF"           1                  "S_SWIMF"             0.1 0.1  MF "HIE_WALK2SWIM_M01.ASC"        F  1  4)         
      ani      ("T_SWIMF_2_WALKWL"           1                  "S_WALKWL"            0.1 0.1  MF "HIE_WALK2SWIM_M01.ASC"        F  6  9)         
      ani      ("S_SWIM"                     1                  "S_SWIM"              0.0 0.1  M. "HIE_SWIMMAMBIENT_KS01.ASC"    F  0  49)         
      ani      ("T_SWIM_2_SWIMF"             1                  "S_SWIMF"             0.1 0.2  M. "HIE_SWIMM_KS01.ASC"           F  1  19)         
      ani      ("S_SWIMF"                    1                  "S_SWIMF"             0.0 0.0  M. "HIE_SWIMM_KS01.ASC"           F  21 39)         
      ani      ("T_SWIMF_2_SWIM"             1                  "S_SWIM"              0.2 0.1  M. "HIE_SWIMM_KS01.ASC"           F  40 64)         
      ani      ("T_SWIMTURNL"                20                 "T_SWIMTURNL"         0.1 0.1  M. "HIE_SWIMTURNL_KS01.ASC"       F  1  29)         
      ani      ("T_SWIMTURNR"                20                 "T_SWIMTURNR"         0.1 0.1  M. "HIE_SWIMTURNR_KS01.ASC"       F  1  29)         
      aniBlend ("T_SWIM_2_DIVE"                                 "S_DIVE"              0.1 0.1)                                                     
      aniBlend ("T_SWIMF_2_DIVE"                                "S_DIVE"              0.1 0.1)                                                     
      ani      ("T_FALLDN_2_DIVE"            1                  "S_DIVE"              0.3 0.0  MF "HIE_F2DIVE_M01.ASC"           F  1  9)         
      ani      ("S_DIVE"                     1                  "S_DIVE"              0.0 0.1  MF "HIE_F2DIVE_M01.ASC"           F  10 10)         
      aniBlend ("T_DIVE_2_DIVEF"                                "S_DIVEF"             0.1 0.1)                                                     
      ani      ("S_DIVEF"                    1                  "S_DIVEF"             0.0 0.1  MF "HIE_F2DIVE_M01.ASC"           F  11 19)         
      aniBlend ("T_DIVEF_2_DIVE"                                "S_DIVE"              0.1 0.1)                                                     
      aniBlend ("T_DIVEF_2_SWIM"                                "S_SWIM"              0.1 0.1)                                                     
      ani      ("T_DIVE_2_DROWNED"           1                  "S_DROWNED"           0.2 0.0  M. "HIE_DROWN_M01.ASC"            F  1  19)         
      ani      ("S_DROWNED"                  1                  "S_DROWNED"           0.0 0.0  M. "HIE_DROWN_M01.ASC"            F  20 20)         
      ani      ("T_DEAD"                     1                  "S_DEAD"              0.4 0.0  M. "HIE_DEADB_KS01.ASC"           F  1  22)         
      {
         *eventSFX (1  "HIE_DIE"      EMPTY_SLOT)
         *eventSFX (10 "M_FALL_SMALL" EMPTY_SLOT)
      }
      ani      ("S_DEAD"                     1                  "S_DEAD"              0.0 0.0  M. "HIE_DEADB_KS01.ASC"           F  23 23)         
      ani      ("T_DEADB"                    1                  "S_DEADB"             0.4 0.0  M. "HIE_DEAD_JUE01.ASC"           F  1  38)         
      {
         *eventSFX (5  "HIE_DIE"      EMPTY_SLOT)
         *eventSFX (22 "M_FALL_SMALL" EMPTY_SLOT)
      }
      ani      ("S_DEADB"                    1                  "S_DEADB"             0.0 0.0  M. "HIE_DEAD_JUE01.ASC"           F  40 40)         
      ani      ("C_LOOK_1"                   9                  ""                    0.0 0.0  .  "HIE_LOOK_KS01.ASC"            F  0  0)         
      ani      ("C_LOOK_2"                   9                  ""                    0.0 0.0  .  "HIE_LOOK_KS01.ASC"            F  1  1)         
      ani      ("C_LOOK_3"                   9                  ""                    0.0 0.0  .  "HIE_LOOK_KS01.ASC"            F  2  2)         
      ani      ("C_LOOK_4"                   9                  ""                    0.0 0.0  .  "HIE_LOOK_KS01.ASC"            F  3  3)         
      ani      ("C_LOOK_5"                   9                  ""                    0.0 0.0  .  "HIE_LOOK_KS01.ASC"            F  4  4)         
      ani      ("C_LOOK_6"                   9                  ""                    0.0 0.0  .  "HIE_LOOK_KS01.ASC"            F  5  5)         
      ani      ("C_LOOK_7"                   9                  ""                    0.0 0.0  .  "HIE_LOOK_KS01.ASC"            F  6  6)         
      ani      ("C_LOOK_8"                   9                  ""                    0.0 0.0  .  "HIE_LOOK_KS01.ASC"            F  7  7)         
      ani      ("C_LOOK_9"                   9                  ""                    0.0 0.0  .  "HIE_LOOK_KS01.ASC"            F  8  8)         
      aniComb  ("T_LOOK"                     9                  "T_LOOK"              0.3 0.3  M. "C_LOOK_"                      9)               
      ani      ("T_SURPRISE_CCW"             1                  "S_SURPRISE"          0.0 0.0  M. "HIE_WHIRLAROUNDL_KS01.ASC"    R  1  19)         
      ani      ("T_SURPRISE_CW"              1                  "S_SURPRISE"          0.0 0.0  M. "HIE_WHIRLAROUNDL_KS01.ASC"    F  1  19)         
      ani      ("S_SURPRISE"                 1                  "S_SURPRISE"          0.0 0.0  M. "HIE_WHIRLAROUNDL_KS01.ASC"    F  20 20)         
      ani      ("S_FISTATTACK"               1                  ""                    0.1 0.1  M. "HIE_ATTACK_JUE00.ASC"         F  1  20)         
      {
         *eventTag (0 "DEF_OPT_FRAME" "9")       
         *eventTag (0 "DEF_HIT_END"   "20")     
         *eventTag (0 "DEF_WINDOW"    "9   20")   
         *eventSFX (2 "HIE_ATTACK"    EMPTY_SLOT)
      }
      ani      ("T_FISTATTACKMOVE"           2                  ""                    0.3 0.5  M. "HIE_SPECATTACK1_KS01.ASC"     F  7  24)         
      {
         *eventTag (0  "DEF_HIT_LIMB"  "Bip01 Head")
         *eventTag (0  "DEF_OPT_FRAME" "10")       
         *eventSFX (13 "HIE_ATTACK"    EMPTY_SLOT) 
      }
      aniAlias ("T_FISTPARADEJUMPB"          1                  ""                    0.0 0.0  M. "T_STUMBLEB"                   F)               
      aniAlias ("T_FISTPARADE_0"             1                  ""                    0.0 0.0  M. "T_STUMBLEB"                   F)               
      ani      ("T_PERCEPTION"               2                  ""                    0.0 0.0  M. "HIE_WITTERN_A01.ASC"          F  0  40)         
      ani      ("T_WARN"                     1                  ""                    0.0 0.0  M. "HIE_BARK_KS01.ASC"            F  0  42)         
      {
         *eventSFX (2 "HIE_WARN" EMPTY_SLOT)
      }
      ani      ("T_STAND_2_SIT"              1                  "S_SIT"               0.1 0.0  M. "HIE_SITDOWN_JUE00.ASC"        F  1  34   FPS:15)
      ani      ("S_SIT"                      1                  "S_SIT"               0.0 0.0  M. "HIE_SITDOWN_JUE00.ASC"        F  35 74   FPS:15)
      ani      ("T_SIT_2_STAND"              1                  ""                    0.0 0.2  M. "HIE_SITDOWN_JUE00.ASC"        F  75 109  FPS:15)
      ani      ("T_STAND_2_SLEEP"            1                  "S_SLEEP"             0.1 0.0  M. "HIE_SLEEP_M01.ASC"            F  1  59   FPS:15)
      ani      ("S_SLEEP"                    1                  "S_SLEEP"             0.0 0.0  M. "HIE_SLEEP_M01.ASC"            F  60 60)         
      aniAlias ("T_SLEEP_2_STAND"            1                  ""                    0.0 0.2  M. "T_STAND_2_SLEEP"              R)               
      ani      ("T_STAND_2_EAT"              1                  "S_EAT"               0.1 0.0  M. "HIE_EATPREY_KS01.ASC"         F  1  9)         
      ani      ("S_EAT"                      1                  "S_EAT"               0.0 0.0  M. "HIE_EATPREY_KS01.ASC"         F  10 59   FPS:15)
      ani      ("T_EAT_2_STAND"              1                  ""                    0.0 0.2  M. "HIE_EATPREY_KS01.ASC"         F  60 69)         
      ani      ("R_GROWL"                    2                  ""                    0.0 0.0  M. "HIE_GROWL_KS01.ASC"           F  0  50)         
      {
         *eventSFX (1 "HIE_GROWL" EMPTY_SLOT)
      }
      ani      ("R_SCRATCH"                  2                  ""                    0.0 0.0  M. "HIE_SCRATCH_KS01.ASC"         F  0  70)         
      {
         *eventSFX (1  "HIE_AMBIENT"   EMPTY_SLOT)
         *eventSFX (21 "SCRATCH_SMALL" EMPTY_SLOT)
         *eventSFX (36 "SCRATCH_SMALL" EMPTY_SLOT)
         *eventSFX (54 "SCRATCH_SMALL" EMPTY_SLOT)
      }
      ani      ("R_PEE"                      2                  ""                    0.0 0.0  M. "HIE_PEE_KS01.ASC"             F  0  70)         
      ani      ("R_HOWL"                     2                  ""                    0.2 0.2  M. "HIE_HOWL_KS01.ASC"            F  35 84   FPS:15)
      aniAlias ("R_ROAM1"                    2                  ""                    0.0 0.0  M. "R_SCRATCH"                    F)               
      ani      ("R_ROAM2"                    2                  ""                    0.0 0.0  M. "HIE_EATPREY_KS01.ASC"         F  0  70)         
      ani      ("R_ROAM3"                    2                  ""                    0.0 0.0  M. "HIE_ZECKEZWICK_A01.ASC"       F  0  120)       
      aniAlias ("S_FIRE_VICTIM"              1                  "S_FIRE_VICTIM"       0.0 0.0  M. "S_LIGHTNING_VICTIM"           F)               
      ani      ("T_STAND_2_LIGHTNING_VICTIM" 1                  "S_LIGHTNING_VICTIM"  0.0 0.0  M. "HIE_VICLIGHTNING_M01.ASC"     F  0  5)         
      ani      ("S_LIGHTNING_VICTIM"         1                  "S_LIGHTNING_VICTIM"  0.0 0.0  M. "HIE_VICLIGHTNING_M01.ASC"     F  5  42)         
      ani      ("T_STAND_2_FREEZE_VICTIM"    1                  "S_FREEZE_VICTIM"     0.0 0.0  M. "HIE_STUMBLE_BACK_JUE01.ASC"   F  8  10)         
      ani      ("S_FREEZE_VICTIM"            1                  "S_FREEZE_VICTIM"     0.0 0.0  M. "HIE_STUMBLE_BACK_JUE01.ASC"   F  11 11)         
      aniAlias ("T_STAND_2_VICTIM_SLE"       1                  "S_VICTIM_SLE"        0.1 0.0  M. "T_STAND_2_SLEEP"              F)               
      aniAlias ("S_VICTIM_SLE"               1                  "S_VICTIM_SLE"        0.0 0.0  M. "S_SLEEP"                      F)               
      aniAlias ("T_VICTIM_SLE_2_STAND"       1                  ""                    0.0 0.2  M. "T_STAND_2_SLEEP"              R)               
      aniAlias ("T_STAND_2_WHIRLWIND_VICTIM" 1                  "S_WHIRLWIND_VICTIM"  0.1 0.0  M. "T_STAND_2_FREEZE_VICTIM"      F)               
      aniAlias ("S_WHIRLWIND_VICTIM"         1                  "S_WHIRLWIND_VICTIM"  0.0 0.0  M. "S_FREEZE_VICTIM"              F)               
   }
}


2.Mam jeszcze jedno pytanie a mianowicie czy można edytować .ZEN, jego modele bez naruszania VOB'ów? Jeśli tak to czy blender się do tego nada i czy trzeba dodatkowe opcje. Za samą chęć pomocy poleci propsik  :lol2:

9
Skrypty / Nowe czary z WOG I problem
« dnia: 2016-06-19, 11:49 »
http://www.worldofgothic.de/?go=moddb&action=view&fileID=1304&cat=0&page=0&order=0

Czy ktoś z was już testował te czary? Bo mi niektóre nie chcą działać, np takie spell_Elevator, spacer wykrywa w nim masę błędów od jakiegoś MEM_ALLOC do CALL__thiscall i wiele więcej... Ktoś pomoże? :hmmm:

10
Gdzie znajde model szkieletu.asc? Probowalem go znalezc sourcerem znalazlem jedynie humans.skeleton w nim jest model czlowieka i tylko animacje szkieletu jak zdycha. Chce sam model szkieletu pomozecie?

11
Tak jak w temacie potrzebuję pewnego świata z moda, zrobiłem niegdyś sam bardzo podobny, oteksturowany z vobami npcami, ale ktoś bez mojej wiedzy sformatował komputer... Liczę na waszą pomoc ;(

12
Skrypty / 1. Mobilny łucznik 2. Ekran menu
« dnia: 2015-08-29, 19:25 »
1. Witam, chciałbym zrobić bitwę, problem w tym że łucznicy szybko wyciągają broń i zeskakują z muru wprost w armię przeciwnika... Macie jakiś pomysł co zrobić żeby tylko strzelali z łuku?

2. Jak zmienić obrazek menu gry? próbowałem zastąpić jego obrazek .tga ale to nic nie dało, a i nie chcę używać GoMana.

13
Skrypty / Potrzebny polski dubbing i cutscenki
« dnia: 2015-08-03, 23:28 »
Witam, mam mały problem posiadam Gothica2 NK ale po angielsku skrypty to nie problem tak jak w temacie chodzi o polską mowę dialogów i cutscenek. Nie wiem czy to dobry dział na ten temat ale liczę na waszą pomoc, tak jak w temacie jeśli możecie spakujcie dla mnie poszczególne rzeczy mój mail :


elojokom@op.pl

14
MDS i animacje / Hełm do orka
« dnia: 2015-07-13, 14:31 »
Gdzie znajdę głowę orka, chcę do niej przypiąć hełm, ponieważ kiedy chciałem przypiąć go do tułowia dziwnie mi znikał a w blenderze animacja działała jak powinna.

15
MDS i animacje / Nowy potwór i kości
« dnia: 2015-01-31, 13:56 »
Mam zrobionego potwora 3d w blenderze wszystko jest już cacy, tylko że chce dodać mu kości. No i mianowicie zrobiłem tak, że usunąłem model orka zostawiając tylko kości. W pose mode zeskalowałem i dopasowałem kości do mojego potwora wciskam ctrl + P 3 opcja od góry (sugerowałem się tu kościami z pancerzem). No i nic wymachuje kośćmi i tylko one się ruszają, proszę o pomoc  :hmmm:

16
MDS i animacje / Animacja natychmiastowego zabójstwa
« dnia: 2015-01-30, 21:05 »
Witam mam swoją animację blenderze zabójstwa. Wygląda to tak, że bohater wykonuje jeden cios który automatycznie ma zabić, wiecie jak to może zrobić w skryptach itd.? Chciałbym też dodać, że ta animacja ma być przypisana do określonej broni  :) Proszę o naprowadzenie mnie  :D

17
MDS i animacje / Wyeksportowanie animacji walki
« dnia: 2014-12-23, 18:43 »
Witam zrobiłem sobie animacje walki, jednak gdy ją importuje do formatu .asc i otwieram znowu programem (blender) to postać stoi w miejscu w 1 klatce, jednak gdy chce puścić dalej ona ciągle stoi tak samo. Animacje zrobiłem następująco : zdekompilowałem pliki, w blednerze otworzyłem model czlowieka, a następnie edytowałem animacje walki w bok mieczem jednoręcznym poziom mistrz, na swoją animacje walki w bok. No i po eksportowaniu to co napisałem na początku  :hmmm:

18
Skrypty / NPC nie może wypuścic czaru
« dnia: 2014-12-04, 23:25 »
Sorry, że znowu ja, ale to mi nie daje spokoju, mam zrobiony nowy czar bojowy, wszystko jest okej tylko, że npc nie chce/nie może rzucić moją kulą ognia  :hmmm:  :/  tu WSZYSTKIE skrypty dot. spella :
plik constants jakby co numer spella to 91



////////////////////////////////////////////////////////////////////////////////
//
// Spells: ID-Konstanten
//

// Paladin-Runen
const int SPL_PalLight = 0;
const int SPL_PalLightHeal = 1;
const int SPL_PalHolyBolt = 2;
const int SPL_PalMediumHeal = 3;
const int SPL_PalRepelEvil = 4;
const int SPL_PalFullHeal = 5;
const int SPL_PalDestroyEvil = 6;

// Teleport-Runen
const int SPL_PalTeleportSecret = 7;
const int SPL_TeleportSeaport = 8;
const int SPL_TeleportMonastery = 9;
const int SPL_TeleportFarm = 10;
const int SPL_TeleportXardas = 11;
const int SPL_TeleportPassNW = 12;
const int SPL_TeleportPassOW = 13;
const int SPL_TeleportOC = 14;
const int SPL_TeleportOWDemonTower = 15;
const int SPL_TeleportTaverne = 16;
const int SPL_Teleport_3 = 17;

// Kreis 1
const int SPL_Light = 18;
const int SPL_Firebolt = 19;

// Kreis 2
const int SPL_Icebolt = 20;

// Kreis 1
const int SPL_LightHeal = 21; // SPL_Heal Instant!
const int SPL_SummonGoblinSkeleton = 22;

// Kreis 2
const int SPL_InstantFireball = 23;

// Kreis 1
const int SPL_Zap = 24; // ###UNCONSCIOUS###

// Kreis 2
const int SPL_SummonWolf = 25;
const int SPL_WindFist = 26; // ###UNCONSCIOUS###
const int SPL_Sleep = 27;

// Kreis 3
const int SPL_MediumHeal = 28;
const int SPL_LightningFlash = 29;
const int SPL_ChargeFireball = 30;
const int SPL_SummonSkeleton = 31;
const int SPL_Fear = 32;
const int SPL_IceCube = 33;

// Kreis 4
const int SPL_ChargeZap = 34;
const int SPL_SummonGolem = 35;
const int SPL_DestroyUndead = 36;
const int SPL_Pyrokinesis = 37;

// Kreis 5
const int SPL_Firestorm = 38;
const int SPL_IceWave = 39;
const int SPL_SummonDemon = 40;
const int SPL_FullHeal = 41;

// Kreis 6
const int SPL_Firerain = 42;
const int SPL_BreathOfDeath = 43;
const int SPL_MassDeath = 44;
const int SPL_ArmyOfDarkness = 45;
const int SPL_Shrink = 46;

// Scrolls
const int SPL_TrfSheep = 47;
const int SPL_TrfScavenger = 48;
const int SPL_TrfGiantRat = 49;
const int SPL_TrfGiantBug = 50;
const int SPL_TrfWolf = 51;
const int SPL_TrfWaran = 52;
const int SPL_TrfSnapper = 53;
const int SPL_TrfWarg = 54;
const int SPL_TrfFireWaran = 55;
const int SPL_TrfLurker = 56;
const int SPL_TrfShadowbeast = 57;
const int SPL_TrfDragonSnapper = 58;
const int SPL_Charm = 59; // MAX_SPELL (Gothic)

// Kreis 5
const int SPL_MasterOfDisaster = 60;

// ???
const int SPL_Deathbolt = 61;
const int SPL_Deathball = 62;
const int SPL_ConcussionBolt = 63;
const int SPL_Reserved_64 = 64; // SPL_E
const int SPL_Reserved_65     = 65; // SPL_F
const int SPL_Reserved_66         = 66; // SPL_G
const int SPL_Reserved_67         = 67; // SPL_H
const int SPL_Reserved_68 = 68; // MAX_SPELL (Gothic2)
const int SPL_Reserved_69 = 69;

// Magick (Wasser)
const int SPL_Thunderstorm = 70;
const int SPL_Whirlwind = 71;
const int SPL_WaterFist = 72;
const int SPL_IceLance = 73;
const int SPL_Inflate = 74;
const int SPL_Geyser = 75;
const int SPL_Waterwall = 76;
const int SPL_Reserved_77 = 77;
const int SPL_Reserved_78 = 78;
const int SPL_Reserved_79 = 79;

// Magick (Maya)
const int SPL_Plague = 80;
const int SPL_Swarm = 81;
const int SPL_GreenTentacle = 82;
const int SPL_Earthquake = 83;
const int SPL_SummonGuardian = 84;
const int SPL_Energyball = 85;
const int SPL_SuckEnergy = 86;
const int SPL_Skull = 87;
const int SPL_SummonZombie = 88;
const int SPL_SummonMud = 89;

// ...
const int SPL_GreenFlame = 90;
const int SPL_ChargeWhite = 91;           ///RUNA O KTÓREJ MOWA!
const int SPL_Reserved_92 = 92;
const int SPL_Reserved_93 = 93;
const int SPL_Reserved_94 = 94;
const int SPL_Reserved_95 = 95;
const int SPL_Reserved_96 = 96;
const int SPL_Reserved_97 = 97;
const int SPL_TeleportBrothel         = 98;
const int SPL_Reserved_99 = 99;

const int MAX_SPELL = 100;   // 59 (Gothic), 68 (Gothic2), 100 (G2Addon)


////////////////////////////////////////////////////////////////////////////////
//
// Spells: Fx-/Spell-Klassennamen (Array)
//

const string spellFxInstanceNames[MAX_SPELL] =
{
// Paladin-Runen
"PalLight", // 0 SPL_PalLight
"PalHeal",  // 1 SPL_PalLightHeal
"PalHolyBolt",  // 2 SPL_PalHolyBolt
"PalHeal",  // 3 SPL_PalMediumHeal
"PalRepelEvil", // 4 SPL_PalRepelEvil
"PalHeal",  // 5 SPL_PalFullHeal
"PalDestroyEvil",  // 6 SPL_PalDestroyEvil

// Teleport-Runen
"Teleport",  // 7 SPL_PalTeleportSecret
"Teleport",  // 8 SPL_TeleportSeaport
"Teleport",  // 9 SPL_TeleportMonastery
"Teleport",  // 10 SPL_TeleportFarm
"Teleport",  // 11 SPL_TeleportXardas
"Teleport",  // 12 SPL_TeleportPassNW
"Teleport",  // 13 SPL_TeleportPassOW
"Teleport",  // 14 SPL_TeleportOC
"Teleport",  // 15 SPL_TeleportOWDemonTower
"Teleport",  // 16 SPL_TeleportTaverne
"Teleport",  // 17 SPL_Teleport_3

// Kreis 1
"Light", // 18 SPL_Light
"Firebolt", // 19 SPL_Firebolt

// Kreis 2
"Icebolt", // 20 SPL_Icebolt

// Kreis 1
"Heal",  // 21 SPL_LightHeal
"SummonGoblinSkeleton", // 22 SPL_SummonGoblinSkeleton

// Kreis 2
"InstantFireball",  // 23 SPL_InstantFireball

// Kreis 1
"Zap", // 24 SPL_Zap

// Kreis 2
"SummonWolf",  // 25 SPL_SummonWolf
"WindFist",  // 26 SPL_WindFist
"Sleep",  // 27 SPL_Sleep

// Kreis 3
"Heal",  // 28 SPL_MediumHeal
"LightningFlash", // 29 SPL_LightningFlash
"ChargeFireball",  // 30 SPL_ChargeFireball
"SummonSkeleton",  // 31 SPL_SummonSkeleton
"Fear",  // 32 SPL_Fear
"Icecube",  // 33 SPL_IceCube

// Kreis 4
"ChargeZap",  // 34 SPL_ChargeZap
"SummonGolem",  // 53 SPL_SummonGolem
"DestroyUndead",  // 36 SPL_DestroyUndead
"Pyrokinesis",  // 37 SPL_Pyrokinesis

// Kreis 5
"Firestorm", // 38 SPL_Firestorm
"Icewave",  // 39 SPL_IceWave
"SummonDemon",  // 40 SPL_SummonDemon
"Heal",  // 41 SPL_FullHeal

// Kreis 6
"Firerain",  // 42 SPL_Firerain
"BreathOfDeath",  // 43 SPL_BreathOfDeath
"MassDeath",  // 44 SPL_MassDeath
"ArmyOfDarkness", // 45 SPL_ArmyOfDarkness
"Shrink",  // 46 SPL_Shrink

// Scrolls
"Transform",  // 47 SPL_TrfSheep
"Transform",  // 48 SPL_TrfScavenger
"Transform",  // 49 SPL_TrfGiantRat
"Transform",  // 50 SPL_TrfGiantBug
"Transform",  // 51 SPL_TrfWolf
"Transform",  // 52 SPL_TrfWaran
"Transform",  // 53 SPL_TrfSnapper
"Transform",  // 54 SPL_TrfWarg
"Transform",  // 55 SPL_TrfFireWaran
"Transform",  // 56 SPL_TrfLurker
"Transform",  // 57 SPL_TrfShadowbeast
"Transform",  // 58 SPL_TrfDragonSnapper
"Charm", // 59 SPL_Charm

// Kreis 5
"MasterOfDisaster", // 60 SPL_MasterOfDisaster

// ???
"Deathbolt",  // 61 SPL_Deathbolt
"Deathball", // 62 SPL_Deathball
"Concussionbolt", // 63 SPL_Concussionbolt
"Light",  // 64 SPL_Reserved_64
"Light",  // 65 SPL_Reserved_65
"Light",  // 66 SPL_Reserved_66
"Light", // 67 SPL_Reserved_67
"Light", // 68 SPL_Reserved_68
"Light", // 69 SPL_Reserved_69

// Magick (Wasser)
    "Thunderstorm", // 70 SPL_Thunderstorm
"Whirlwind", // 71 SPL_Whirlwind
"Waterfist", // 72 SPL_WaterFist
"IceLance", // 73 SPL_IceLance
"Sleep", // 74 SPL_Inflate
"Geyser", // 75 SPL_Geyser
"Firerain", // 76 SPL_Waterwall
"Light", // 77 SPL_Reserved_77
"Light", // 78 SPL_Reserved_78
"Light", // 79 SPL_Reserved_79

// Magick (Maya)
"Fear", // 80 SPL_Plague
"Swarm", // 81 SPL_Swarm
"Greententacle", // 82 SPL_GreenTentacle
"Firerain", // 83 SPL_Earthquake
"SummonGuardian", // 84 SPL_SummonGuardian
"Energyball", // 85 SPL_Energyball
"SuckEnergy", // 86 SPL_SuckEnergy
"Skull", // 87 SPL_Skull
"SummonZombie", // 88 SPL_SummonZombie
"SummonMud", // 89 SPL_SummonMud

// ...
"GreenFlame", // 90 SPL_GreenFlame
"ChargeWhite", // 91 SPL_ChargeWhite
"Light", // 92 SPL_Reserved_92
"Light", // 93 SPL_Reserved_93
"Light", // 94 SPL_Reserved_94
"Light", // 95 SPL_Reserved_95
"Light", // 96 SPL_Reserved_96
"Light", // 97 SPL_Reserved_97
"Teleport", // 98 SPL_TeleportBrothel
"Teleport" // 99 SPL_Reserved_99
};


////////////////////////////////////////////////////////////////////////////////
//
// Spells: Animationskürzel (Array)
//

const string spellFxAniLetters[MAX_SPELL] =
{
// Paladin-Runen
"SLE", // 0 SPL_PalLight
"HEA",  // 1 SPL_PalLightHeal
"FBT",  // 2 SPL_PalHolyBolt
"HEA",  // 3 SPL_PalMediumHeal
"FBT", // 4 SPL_PalRepelEvil
"HEA",  // 5 SPL_PalFullHeal
"FIB",  // 6 SPL_PalDestroyEvil

// Teleport-Runen
"HEA",  // 7 SPL_PalTeleportSecret
"HEA",  // 8 SPL_TeleportSeaport
"HEA",  // 9 SPL_TeleportMonastery
"HEA",  // 10 SPL_TeleportFarm
"HEA",  // 11 SPL_TeleportXardas
"HEA",  // 12 SPL_TeleportPassNW
"HEA",  // 13 SPL_TeleportPassOW
"HEA",  // 14 SPL_TeleportOC
"HEA",  // 15 SPL_TeleportOWDemonTower
"HEA",  // 16 SPL_TeleportTaverne
"HEA",  // 17 SPL_Teleport_3

// Kreis 1
"SLE", // 18 SPL_Light
"FBT", // 19 SPL_Firebolt

// Kreis 2
"FBT", // 20 SPL_Icebolt

// Kreis 1
"HEA",  // 21 SPL_LightHeal
"SUM",  // 22 SPL_SummonGoblinSkeleton

// Kreis 2
"FBT",  // 23 SPL_InstantFireball

// Kreis 1
"FBT", // 24 SPL_Zap

// Kreis 2
"SUM",  // 25 SPL_SummonWolf
"WND",  // 26 SPL_WindFist
"SLE",  // 27 SPL_Sleep

// Kreis 3
"HEA",  // 28 SPL_MediumHeal
"WND",  // 29 SPL_LightningFlash
"FIB",  // 30 SPL_ChargeFireball
"SUM",  // 31 SPL_SummonSkeleton
"FEA",  // 32 SPL_Fear
"FRZ",  // 33 SPL_IceCube
"FIB",  // 34 SPL_ChargeZap

// Kreis 4
"SUM",  // 35 SPL_SummonGolem
"FIB",  // 36 SPL_DestroyUndead
"FIB",  // 37 SPL_Pyrokinesis

// Kreis 5
"FIB",  // 38 SPL_Firestorm
"FEA",  // 39 SPL_IceWave
"SUM",  // 40 SPL_SummonDemon
"HEA",  // 41 SPL_FullHeal

// Kreis 6
"FEA",  // 42 SPL_Firerain
"FIB",  // 43 SPL_BreathOfDeath
"MSD",  // 44 SPL_MassDeath
"SUM",  // 45 SPL_ArmyOfDarkness
"SLE",  // 46 SPL_Shrink

// Scrolls
"TRF",  // 47 SPL_TrfSheep
"TRF",  // 48 SPL_TrfScavenger
"TRF",  // 49 SPL_TrfGiantRat
"TRF",  // 50 SPL_TrfGiantBug
"TRF",  // 51 SPL_TrfWolf
"TRF",  // 52 SPL_TrfWaran
"TRF",  // 53 SPL_TrfSnapper
"TRF",  // 54 SPL_TrfWarg
"TRF",  // 55 SPL_TrfFireWaran
"TRF",  // 56 SPL_TrfLurker
"TRF",  // 57 SPL_TrfShadowbeast
"TRF",  // 58 SPL_TrfDragonSnapper
"FIB", // 59 SPL_Charm

// Kreis 5
"FIB",  // 60 SPL_MasterOfDisaster

// ???
"FBT",  // 61 SPL_Deathbolt
"FBT",  // 62 SPL_Deathball
"FBT",  // 63 SPL_Concussionbolt
"XXX",  // 64 SPL_Reserved_64
"XXX",  // 65 SPL_Reserved_65
"XXX",  // 66 SPL_Reserved_66
"XXX", // 67 SPL_Reserved_67
  "XXX", // 68 SPL_Reserved_68
"XXX", // 69 SPL_Reserved_69

// Magick (Wasser)
"STM",  // 70 SPL_Thunderstorm
"WHI",  // 71 SPL_Whirlwind
"WND",  // 72 SPL_WaterFist
"FBT",  // 73 SPL_IceLance
"SLE",  // 74 SPL_Inflate
"WND",  // 75 SPL_Geyser
"FEA",  // 76 SPL_Waterwall
"XXX", // 77 SPL_Reserved_77
"XXX", // 78 SPL_Reserved_78
"XXX", // 79 SPL_Reserved_79

// Magick (Maya)
"FBT",  // 80 SPL_Plague
"FBT",  // 81 SPL_Swarm
"FRZ",  // 82 SPL_GreenTentacle
"FEA",  // 83 SPL_Earthquake
"SUM",  // 84 SPL_SummonGuardian
"WND",  // 85 SPL_Energyball
"WND",  // 86 SPL_SuckEnergy
"WND", // 87 SPL_Skull
"SUM", // 88 SPL_SummonZombie
"SUM", // 89 SPL_SummonMud

// ...
"FBT",  // 90 SPL_GreenFlame
"FIB",  // 91 SPL_ChargeWhite      ///RUNA O KTOREJ MOWA!
"XXX",  // 92 SPL_Reserved_92
"XXX",  // 93 SPL_Reserved_93
"XXX",  // 94 SPL_Reserved_94
"XXX",  // 95 SPL_Reserved_95
"XXX",  // 96 SPL_Reserved_96
"XXX", // 97 SPL_Reserved_97
"HEA", // 98 SPL_Reserved_98
"XXX" // 99 SPL_Reserved_99
};


// *******
// Talente
// *******

const int NPC_TALENT_UNKNOWN = 0;

// Skilled Talents
const int NPC_TALENT_1H = 1;
const int NPC_TALENT_2H = 2;
const int NPC_TALENT_BOW = 3;
const int NPC_TALENT_CROSSBOW = 4;

const int NPC_TALENT_PICKLOCK = 5; //wird jetzt per DEX geregelt
//const int NPC_TALENT_PICKPOCKET = 6; //altes Pickpocket aus Gothic 1 - NICHT benutzen! Bleibt als Relikt im Code

// Magiekreis
const int NPC_TALENT_MAGE = 7;

// Special-Talents
const int NPC_TALENT_SNEAK = 8;
const int NPC_TALENT_REGENERATE = 9; //??? was ist davon drin?
const int NPC_TALENT_FIREMASTER = 10; //??? was ist davon drin?
const int NPC_TALENT_ACROBAT = 11; //--> Anis ändern!

// NEW Talents //werden komplett auf Scriptebene umgesetzt - Programm braucht sie nur für Ausgabe im Characterscreen
const int NPC_TALENT_PICKPOCKET = 12;
const int NPC_TALENT_SMITH = 13;
const int NPC_TALENT_RUNES = 14;
const int NPC_TALENT_ALCHEMY = 15;
const int NPC_TALENT_TAKEANIMALTROPHY = 16;

const int NPC_TALENT_FOREIGNLANGUAGE = 17;
const int NPC_TALENT_WISPDETECTOR = 18;
const int NPC_TALENT_C = 19;
const int NPC_TALENT_D = 20;
const int NPC_TALENT_E = 21;

const int NPC_TALENT_MAX = 22; //ehem. 12


// *************
// Runen-Talente
// *************

var int PLAYER_TALENT_RUNES[MAX_SPELL]; //Die SPL_ Konstanten werden hierfür als Kennung verwendet

// *************
// ForeignLanguage-TalentStufen
// *************

const int LANGUAGE_1 = 0;
const int LANGUAGE_2 = 1;
const int LANGUAGE_3 = 2;

const int MAX_LANGUAGE = 3;

var int PLAYER_TALENT_FOREIGNLANGUAGE[MAX_LANGUAGE];

// *************
// WispDetector-Talente
// *************

const int WISPSKILL_NF = 0;
const int WISPSKILL_FF = 1;
const int WISPSKILL_NONE = 2;
const int WISPSKILL_RUNE = 3;
const int WISPSKILL_MAGIC    = 4;
const int WISPSKILL_FOOD = 5;
const int WISPSKILL_POTIONS    = 6;

const int MAX_WISPSKILL = 7;

var int PLAYER_TALENT_WISPDETECTOR [MAX_WISPSKILL];

VAR int WispSearching;
const int WispSearch_Follow = 1;
const int WispSearch_ALL = 2;
const int WispSearch_POTIONS = 3;
const int WispSearch_MAGIC = 4;
const int WispSearch_FOOD = 5;
const int WispSearch_NF = 6;
const int WispSearch_FF = 7;
const int WispSearch_NONE = 8;
const int WispSearch_RUNE = 9;

// ****************
// Alchemie-Talente
// ****************

const int POTION_Health_01   = 0;
const int POTION_Health_02  = 1;
const int POTION_Health_03  = 2;
const int POTION_Mana_01  = 3;
const int POTION_Mana_02  = 4;
const int POTION_Mana_03 = 5;
const int POTION_Speed  = 6;
const int POTION_Perm_STR  = 7;
const int POTION_Perm_DEX  = 8;
const int POTION_Perm_Mana  = 9;
const int POTION_Perm_Health = 10;
const int POTION_MegaDrink = 11;
const int CHARGE_Innoseye = 12;
const int POTION_Mana_04 = 13;
const int POTION_Health_04 = 14;

const int MAX_POTION = 15;

var int PLAYER_TALENT_ALCHEMY[MAX_POTION];


// ***************
// Schmied-Talente
// ***************

const int WEAPON_Common = 0;

const int WEAPON_1H_Special_01 = 1;
const int WEAPON_2H_Special_01 = 2;
const int WEAPON_1H_Special_02 = 3;
const int WEAPON_2H_Special_02 = 4;
const int WEAPON_1H_Special_03 = 5;
const int WEAPON_2H_Special_03 = 6;
const int WEAPON_1H_Special_04 = 7;
const int WEAPON_2H_Special_04 = 8;

const int WEAPON_1H_Harad_01 = 9;
const int WEAPON_1H_Harad_02 = 10;
const int WEAPON_1H_Harad_03 = 11;
const int WEAPON_1H_Harad_04 = 12;

const int MAX_WEAPONS = 13;

var int PLAYER_TALENT_SMITH[MAX_WEAPONS];


// ********************
// AnimalTrophy-Talente
// ********************

const int TROPHY_Teeth = 0;
const int TROPHY_Claws = 1;
const int TROPHY_Fur = 2;
const int TROPHY_Heart = 3;
const int TROPHY_ShadowHorn = 4;
const int TROPHY_FireTongue = 5;
const int TROPHY_BFWing = 6;
const int TROPHY_BFSting = 7;
const int TROPHY_Mandibles = 8;
const int TROPHY_CrawlerPlate = 9;
const int TROPHY_DrgSnapperHorn = 10;
const int TROPHY_DragonScale = 11;
const int TROPHY_DragonBlood = 12;
const int TROPHY_ReptileSkin = 13;

const int MAX_TROPHIES = 14;

var int PLAYER_TALENT_TAKEANIMALTROPHY[MAX_TROPHIES];


// ****************************************
// Font-Konstanten der Engine (ausgelagert)
// ****************************************

const string TEXT_FONT_20 = "Font_old_20_white.tga";
const string TEXT_FONT_10 = "Font_old_10_white.tga";
const string TEXT_FONT_DEFAULT = "Font_old_10_white.tga";
const string TEXT_FONT_Inventory = "Font_old_10_white.tga";


// ****************************************
// wie lange bklleibt ein TExt (OU) stehen,
// wenn kein wav da ist (msec/character)
// ****************************************

const float VIEW_TIME_PER_CHAR = 550;

// ****************************************
// LevelZen-Abfrage im B_Kapitelwechsel
// ****************************************

const int NEWWORLD_ZEN = 1;
const int OLDWORLD_ZEN = 2;
const int DRAGONISLAND_ZEN = 3;
const int ADDONWORLD_ZEN = 4;


// ****************************************
// Kamera für Inventory-Items
// ****************************************

const int INVCAM_ENTF_RING_STANDARD = 400;
const int INVCAM_ENTF_AMULETTE_STANDARD = 150;
const int INVCAM_ENTF_MISC_STANDARD = 200;
const int INVCAM_ENTF_MISC2_STANDARD = 250;
const int INVCAM_ENTF_MISC3_STANDARD = 500;
const int INVCAM_ENTF_MISC4_STANDARD = 650;
const int INVCAM_ENTF_MISC5_STANDARD = 850;
const int INVCAM_X_RING_STANDARD = 25;
const int INVCAM_Z_RING_STANDARD = 45;

/*
const int INVCAM_ENTF_MISC_STANDARD = 150;
const int INVCAM_X_MISC_STANDARD = 0;
const int INVCAM_Y_MISC_STANDARD = 0;
const int INVCAM_Z_MISC_STANDARD = 0;
*/




























PFXINSTMAGIC

PROTOTYPE MFX_CHARGEWHITE (C_PARTICLEFX)
{
     ppsvalue = 50;
     ppsscalekeys_s = "1";
     ppsislooping = 1;
     ppsissmooth = 1;
     ppsfps = 2;
     shptype_s = "POINT";
     shpfor_s = "object";
     shpoffsetvec_s = "0 0 0";
     shpdistribtype_s = "RAND";
     shpisvolume = 1;
     shpdim_s = "30";
     shpscalekeys_s = "1";
     shpscaleislooping = 1;
     shpscaleissmooth = 1;
     shpscalefps = 2;
     dirmode_s = "RAND";
     dirfor_s = "world";
     dirmodetargetfor_s = "OBJECT";
     dirmodetargetpos_s = "0 0 0";
     dirangleheadvar = 180;
     dirangleelevvar = 180;
     velavg = 9.99999975e-006;
     lsppartavg = 500;
     flygravity_s = "0 0 0";
     visname_s = "MFX_WHITEBALL.TGA";
     visorientation_s = "VELO";
     vistexisquadpoly = 1;
     vistexanifps = 18;
     vistexaniislooping = 1;
     vistexcolorstart_s = "200 200 255";
     vistexcolorend_s = "200 200 255";
     vissizestart_s = "15 15";
     vissizeendscale = 5;
     visalphafunc_s = "ADD";
     visalphastart = 255;
     //useemittersfor = 1;
};

INSTANCE MFX_CHARGEWHITE_CAST   (MFX_CHARGEWHITE)
{
vissizestart_s = "10 10";
visalphastart = 180;
};

INSTANCE MFX_CHARGEWHITE_CAST_L2   (MFX_CHARGEWHITE)
{
vissizestart_s = "15 15";
visalphastart = 210;
};

INSTANCE MFX_CHARGEWHITE_CAST_L3   (MFX_CHARGEWHITE)
{
vissizestart_s = "20 20";
visalphastart = 230;
};

INSTANCE MFX_CHARGEWHITE_CAST_L4   (MFX_CHARGEWHITE)
{
vissizestart_s = "25 25";
visalphastart = 255;
};

INSTANCE MFX_CHARGEWHITE_CAST_L5   (MFX_CHARGEWHITE)
{
vissizestart_s = "30 30";
visalphastart = 255;
};


INSTANCE MFX_CHARGEWHITE_INVEST (C_PARTICLEFX)
{
     ppsvalue = 20;
     ppsscalekeys_s = "5";
     ppsislooping = 1;
     ppsissmooth = 1;
     ppsfps = 2;
     shptype_s = "SPHERE";
     shpfor_s = "object";
     shpoffsetvec_s = "0 0 0";
     shpdistribtype_s = "RAND";
     shpdim_s = "100";
     shpscalekeys_s = "1";
     shpscaleislooping = 1;
     shpscaleissmooth = 1;
     shpscalefps = 2;
     dirmode_s = "TARGET";
     dirfor_s = "OBJECT";
     dirmodetargetfor_s = "OBJECT";
     dirmodetargetpos_s = "0 0 0";
     dirangleheadvar = 180;
     dirangleelevvar = 180;
     velavg = 0.0500000007;
     velvar = 0.0299999993;
     lsppartavg = 2000;
     flygravity_s = "0 0 0";
     visname_s = "MFX_WHITEBALL.TGA";
     visorientation_s = "VELO";
     vistexisquadpoly = 1;
     vistexanifps = 18;
     vistexaniislooping = 2;
     vistexcolorstart_s = "255 200 200";
     vistexcolorend_s = "200 150 0";
     vissizestart_s = "50 50";
     vissizeendscale = 0.00100000005;
     visalphafunc_s = "ADD";
     visalphastart = 255;
};



INSTANCE MFX_CHARGEWHITE_INVESTBLAST (C_PARTICLEFX)
{
     ppsvalue = 10;
     ppsscalekeys_s = "2";
     ppsissmooth = 1;
     ppsfps = 2;
     shptype_s = "POINT";
     shpfor_s = "object";
     shpoffsetvec_s = "0 0 0";
     shpdistribtype_s = "RAND";
     shpdim_s = "100";
     shpscalekeys_s = "1";
     shpscaleislooping = 1;
     shpscaleissmooth = 1;
     shpscalefps = 2;
     dirmode_s = "RAND";
     dirfor_s = "OBJECT";
     dirmodetargetfor_s = "OBJECT";
     dirmodetargetpos_s = "0 0 0";
     dirangleheadvar = 180;
     dirangleelevvar = 180;
     velavg = 9.99999975e-005;
     lsppartavg = 1000;
     flygravity_s = "0 0 0";
     visname_s = "MFX_WHITEBALL2.TGA";
     visorientation_s = "VELO";
     vistexisquadpoly = 1;
     vistexanifps = 18;
     vistexaniislooping = 1;
     vistexcolorstart_s = "255 200 200";
     vistexcolorend_s = "200 150 0";
     vissizestart_s = "10 10";
     vissizeendscale = 6;
     visalphafunc_s = "ADD";
     visalphastart = 255;
};

INSTANCE MFX_CHARGEWHITE_COLLIDE (C_PARTICLEFX)
{
     ppsvalue = 40;
     ppsscalekeys_s = "1";
     ppsfps = 10;
     //ppscreateem_s = "MFX_CHARGEWHITE_COLLIDE_WALLGLOW";
     shptype_s = "SPHERE";
     shpfor_s = "object";
     shpoffsetvec_s = "0 0 0";
     shpdistribtype_s = "RAND";
     shpisvolume = 1;
     shpdim_s = "8";
     shpscalekeys_s = "1";
     shpscaleislooping = 1;
     shpscaleissmooth = 1;
     shpscalefps = 2;
     dirmode_s = "TARGET";
     dirfor_s = "object";
     dirmodetargetfor_s = "OBJECT";
     dirmodetargetpos_s = "0 0 0";
     dirangleheadvar = 180;
     dirangleelevvar = 180;
     velavg = 0.0799999982;
     velvar = 0.0199999996;
     lsppartavg = 600;
     lsppartvar = 200;
     flygravity_s = "0 0.0001 0";
     flycolldet_b = 1;
     visname_s = "MFX_WHITEBALL.TGA";
     visorientation_s = "NONE";
     vistexisquadpoly = 1;
     vistexanifps = 18;
     vistexaniislooping = 1;
     vistexcolorstart_s = "255 220 220";
     vistexcolorend_s = "255 220 220";
     vissizestart_s = "20 20";
     vissizeendscale = 4;
     visalphafunc_s = "ADD";
     visalphastart = 255;
};


VISUALFXINST

////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////

INSTANCE spellFX_CHARGEWHITE(CFx_Base_Proto)
{

      visname_S = "MFX_CHARGEWHITE_CAST";

      emtrjmode_s = "FIXED";
emTrjOriginNode = "ZS_RIGHTHAND";
      emtrjtargetnode = "BIP01 FIRE";
      emtrjloopmode_s = "NONE";
      emtrjeasefunc_s = "LINEAR";
      emActionCollStat_S = "COLLIDE CREATEONCE CREATEQUAD";
      emActionCollDyn_S = "COLLIDE CREATEONCE";
emFXCollStat_S     = "spellFX_CHARGEWHITE_COLLIDE";
emFXCollDyn_S      = "spellFX_CHARGEWHITE_COLLIDEDYNFX";
emFXCollDynPerc_S      = "vob_magicburn";
emFXCollStatAlign_S = "COLLISIONNORMAL";
emFXCreatedOwnTrj = 0;
emTrjTargetRange = 20;
emTrjTargetElev = 0;
emTrjDynUpdateDelay = 30.000;

lightPresetname    = "FIRESMALL";

};

INSTANCE spellFX_CHARGEWHITE_KEY_OPEN (C_ParticleFXEmitKey)
{
lightrange = 0.01;
};


INSTANCE spellFX_CHARGEWHITE_KEY_INIT (C_ParticleFXEmitKey)
{
//visname_S = "MFX_CHARGEWHITE_INIT";
lightrange = 0.01;
};

INSTANCE spellFX_CHARGEWHITE_KEY_INVEST_1 (C_ParticleFXEmitKey)
{
emCreateFXID = "spellFX_CHARGEWHITE_InVEST_BLAST1";
visname_s = "MFX_CHARGEWHITE_CAST_L2";
lightrange = 150;
sfxid = "MFX_CHARGEWHITE_invest1";
sfxisambient = 1;
} ;
INSTANCE spellFX_CHARGEWHITE_KEY_INVEST_2 (C_ParticleFXEmitKey)
{
emCreateFXID = "spellFX_CHARGEWHITE_InVEST_BLAST2";
visname_s = "MFX_CHARGEWHITE_CAST_L3";
sfxid = "MFX_CHARGEWHITE_invest2";
sfxisambient = 1;
};
INSTANCE spellFX_CHARGEWHITE_KEY_INVEST_3 (C_ParticleFXEmitKey)
{
emCreateFXID = "spellFX_CHARGEWHITE_InVEST_BLAST3";
visname_s = "MFX_CHARGEWHITE_CAST_L4";
sfxid = "MFX_CHARGEWHITE_invest3";
sfxisambient = 1;
};
INSTANCE spellFX_CHARGEWHITE_KEY_INVEST_4 (C_ParticleFXEmitKey)
{
emCreateFXID = "spellFX_CHARGEWHITE_InVEST_BLAST4";
visname_s = "MFX_CHARGEWHITE_CAST_L5";
sfxid = "MFX_CHARGEWHITE_invest4";
sfxisambient = 1;
};
INSTANCE spellFX_CHARGEWHITE_KEY_CAST (C_ParticleFXEmitKey)
{
lightrange = 100;
//pfx_ppsIsLoopingChg = 1;
emtrjmode_s = "TARGET";
      emtrjeasevel = 1400.;
sfxid = "MFX_CHARGEWHITE_Cast";
sfxisambient = 1;
emCheckCollision = 1;
};
INSTANCE spellFX_CHARGEWHITE_KEY_COLLIDE (C_ParticleFXEmitKey)
{
      pfx_flygravity_s = "0 0.0002 0";
      emtrjeasevel = 0.000001;
};

instance spellFX_CHARGEWHITE_InVEST_BLAST1 (CFx_Base_Proto)
{
visname_S = "MFX_CHARGEWHITE_INVESTBLAST";
visAlpha = 1;
emtrjmode_s = "FIXED";
sfxid = "MFX_CHARGEWHITE_invest1";
sfxisambient = 1;
visAlpha = 0.3;
};

instance spellFX_CHARGEWHITE_InVEST_BLAST2 (CFx_Base_Proto)
{
visname_S = "MFX_CHARGEWHITE_INVESTBLAST";
visAlpha = 1;
emtrjmode_s = "FIXED";
sfxid = "MFX_CHARGEWHITE_invest2";
sfxisambient = 1;
visAlpha = 0.5;
};

instance spellFX_CHARGEWHITE_InVEST_BLAST3 (CFx_Base_Proto)
{
visname_S = "MFX_CHARGEWHITE_INVESTBLAST";
visAlpha = 1;
emtrjmode_s = "FIXED";
sfxid = "MFX_CHARGEWHITE_invest3";
sfxisambient = 1;
visAlpha = 0.8;
};

instance spellFX_CHARGEWHITE_InVEST_BLAST4 (CFx_Base_Proto)
{
visname_S = "MFX_CHARGEWHITE_INVESTBLAST";
visAlpha = 1;
emtrjmode_s = "FIXED";
sfxid = "MFX_CHARGEWHITE_invest4";
sfxisambient = 1;
visAlpha = 1;
};

// KOLLISION MIT STATISCHER WELT:  KEINE PERCEPTION

instance spellFX_CHARGEWHITE_COLLIDE (CFx_Base_Proto)
{
visname_S = "MFX_CHARGEWHITE_Collide";
visAlpha = 1;
emtrjmode_s = "FIXED";
emTrjOriginNode = "BIP01";
lightPresetname    = "FIRESMALL";
};

INSTANCE spellFX_CHARGEWHITE_COLLIDE_KEY_INVEST_1 (C_ParticleFXEmitKey)  { visname_S = "MFX_CHARGEWHITE_Collide"; sfxid = "MFX_CHARGEWHITE_Collide1"; };
INSTANCE spellFX_CHARGEWHITE_COLLIDE_KEY_INVEST_2 (C_ParticleFXEmitKey)  { visname_S = "MFX_CHARGEWHITE_Collide"; sfxid = "MFX_CHARGEWHITE_Collide2"; };
INSTANCE spellFX_CHARGEWHITE_COLLIDE_KEY_INVEST_3 (C_ParticleFXEmitKey)  { visname_S = "MFX_CHARGEWHITE_Collide"; sfxid = "MFX_CHARGEWHITE_Collide3"; };
INSTANCE spellFX_CHARGEWHITE_COLLIDE_KEY_INVEST_4 (C_ParticleFXEmitKey)  { visname_S = "MFX_CHARGEWHITE_Collide"; sfxid = "MFX_CHARGEWHITE_Collide4"; };

instance spellFX_CHARGEWHITE_COLLIDEDYNFX (CFx_Base_Proto)
{
visname_S = "MFX_CHARGEWHITE_Collide1";
visAlpha = 1;
emTrjOriginNode = "BIP01";
emtrjmode_s = "FIXED";
lightPresetname    = "FIRESMALL";
};

INSTANCE spellFX_CHARGEWHITE_COLLIDEDYNFX_KEY_INVEST_1 (C_ParticleFXEmitKey)  { visname_S = "MFX_CHARGEWHITE_Collide1"; sfxid = "MFX_CHARGEWHITE_Collide1"; };
INSTANCE spellFX_CHARGEWHITE_COLLIDEDYNFX_KEY_INVEST_2 (C_ParticleFXEmitKey)  { visname_S = "MFX_CHARGEWHITE_Collide2"; sfxid = "MFX_CHARGEWHITE_Collide2"; };
INSTANCE spellFX_CHARGEWHITE_COLLIDEDYNFX_KEY_INVEST_3 (C_ParticleFXEmitKey)  { visname_S = "MFX_CHARGEWHITE_Collide3"; sfxid = "MFX_CHARGEWHITE_Collide3"; };
INSTANCE spellFX_CHARGEWHITE_COLLIDEDYNFX_KEY_INVEST_4 (C_ParticleFXEmitKey)  { visname_S = "MFX_CHARGEWHITE_Collide4"; sfxid = "MFX_CHARGEWHITE_Collide4"; };


AI/Magic/Spells

// ******************
// SPL_ChargeWhite
// ******************

const int SPL_Cost_ChargeWhite = 100; //4*25
const int STEP_ChargeWhite = 40;
const int SPL_Damage_ChargeWhite = 50;

INSTANCE Spell_ChargeWhite (C_Spell_Proto)
{
time_per_mana = 25;
damage_per_level = SPL_Damage_ChargeWhite;
damageType = DAM_MAGIC;
canTurnDuringInvest     = TRUE;
};

func int Spell_Logic_ChargeWhite (var int manaInvested)
{
if (self.attribute[ATR_MANA]<STEP_ChargeWhite)
{
return SPL_DONTINVEST;
};

if (manaInvested <= STEP_ChargeWhite*1)
{
self.aivar[AIV_SpellLevel] = 1; //Start mit Level 1
return SPL_STATUS_CANINVEST_NO_MANADEC;
}
else if (manaInvested > (STEP_ChargeWhite*1))
&& (self.aivar[AIV_SpellLevel] <= 1)
{
self.attribute[ATR_MANA] = (self.attribute[ATR_MANA] - STEP_ChargeWhite);

if (self.attribute[ATR_MANA]<0)
{
    self.attribute[ATR_MANA]=0;
};

self.aivar[AIV_SpellLevel] = 2;
return SPL_NEXTLEVEL; //Lev2 erreicht
}
else if (manaInvested > (STEP_ChargeWhite*2))
&& (self.aivar[AIV_SpellLevel] <= 2)
{
self.attribute[ATR_MANA] = (self.attribute[ATR_MANA] - STEP_ChargeWhite);

if (self.attribute[ATR_MANA]<0)
{
    self.attribute[ATR_MANA]=0;
};
self.aivar[AIV_SpellLevel] = 3;
return SPL_NEXTLEVEL; //Lev3 erreicht
}
else if (manaInvested > (STEP_ChargeWhite*3))
&& (self.aivar[AIV_SpellLevel] <= 3)
{
self.attribute[ATR_MANA] = (self.attribute[ATR_MANA] - STEP_ChargeWhite);

if (self.attribute[ATR_MANA]<0)
{
    self.attribute[ATR_MANA]=0;
};
self.aivar[AIV_SpellLevel] = 4;
return SPL_NEXTLEVEL; //Lev4 erreicht
}
else if (manaInvested > (STEP_ChargeWhite*3))
&& (self.aivar[AIV_SpellLevel] == 4)
{
return SPL_DONTINVEST;
};

return SPL_STATUS_CANINVEST_NO_MANADEC;
};

func void Spell_Cast_ChargeWhite(var int spellLevel)
{
self.attribute[ATR_MANA] = (self.attribute[ATR_MANA] - STEP_ChargeWhite);

if (self.attribute[ATR_MANA]<0)
{
self.attribute[ATR_MANA]=0;
};

self.aivar[AIV_SelectSpell] += 1;
};

no i runa :

INSTANCE ItRu_ChargeWhite (C_Item)
{
name = NAME_Rune;

mainflag = ITEM_KAT_RUNE;
flags = 0;

value = Value_Ru_ChargeFireball;

visual = "ItRu_ChargeWhite.3DS";
material = MAT_STONE;

mag_circle = 2;

spell = SPL_ChargeWhite;

wear = WEAR_EFFECT;
effect = "SPELLFX_WEAKGLIMMER_BLUE";

description = NAME_SPL_ChargeWhite;


TEXT [0] = NAME_Mag_Circle;
COUNT [0] = mag_circle;

TEXT [1] = NAME_MinManakosten;
COUNT [1] = 125;

TEXT [2] = NAME_ManakostenMax;
COUNT [2] = 100;

TEXT [3] = NAME_Addon_Damage_Min;
count [3] =       50;

TEXT [4] = NAME_Damage_Max;
COUNT [4] = (SPL_Damage_ChargeWhite*4);

TEXT [5] = NAME_Value;
COUNT [5] = value;
};



Mam też oczywiście plik text.d ale myślę, że to jest nie ważne w tym przypadku  :lol2:

19
Skrypty / Tekstura po wejsćiu w inny ZEN
« dnia: 2014-12-04, 21:27 »
Witam to znowu ja...  :fuckyeah: Połączyłem światy w NeWorldzie, przejścia pięknie działają itd. Ale wchodząc w mojego zena nie ma tekstury, a pasek się ładuje. Gdzie znajdę plik/folder w którym będę mógł podstawić mój plik .tga z teksturą którą chce dodać do ekranu ładowania mojego ZENA?  :F

20
Do rzeczy w 1. Chciałbym, żeby po dialogu, np. przesunęła się ściana. Wiem jak to robić za pomocą animacji w Gothicu, ale chciałbym wiedzieć co z dialogiem.

2. Mam taki skrypt i ogólnie chciałbym dodać więcej czarów, ale gdy kombinuję wyskakują mi błędy p.s. bazowałem na innych npc'ach używających czarów  :lol2:
Co do 2. to co zrobić, aby NPC używał danego czary tylko raz?

if (Hlp_GetInstanceID(slf) == Hlp_GetInstanceID(instancemojegoNPCA))
{
if (Npc_HasItems (slf, ItRu_BeliarsRage) == 0) { CreateInvItems (slf, ItRu_BeliarsRage, 1); };
if (Npc_HasItems (slf, ItRu_FullHeal) == 0) { CreateInvItems (slf, ItRu_FullHeal, 1); };
if (Npc_HasItems (slf, ItRu_IceCube) == 0) { CreateInvItems (slf, ItRu_IceCube, 1); };
                if (Npc_HasItems (slf, ItRu_SummonZombie) == 0) {       CreateInvItems (slf, ItRu_SummonZombie, 1); };

if (self.attribute[ATR_HITPOINTS] < 900)
                {
B_ReadySpell (slf, SPL_SummonZombie, SPL_Cost_SummonZombie);
return TRUE;
               
}
if (Npc_IsInState (oth, ZS_MagicFreeze))
{
B_ReadySpell (slf, SPL_EnergyBall, SPL_Cost_EnergyBall);
return TRUE;
               
}
else
{
B_ReadySpell (slf, SPL_IceCube, SPL_Cost_IceCube);
return TRUE;
         
};
           
            };


Strony: [1] 2
Do góry