Przenoszenie Pfx 5912 17

O temacie

Autor MajkeI

Zaczęty 30.01.2014 roku

Wyświetleń 5912

Odpowiedzi 17

MajkeI

MajkeI

Użytkownicy
Front End Developer
posty698
Propsy169
Profesjabrak
  • Użytkownicy
  • Front End Developer
Znalazłem ten temat w spisie tutoriali http://themodders.org/index.php?topic=91 jednak, jakby tu rzec - jest chyba coś w nim nie tak :)
Czy jest ktoś na forum, kto by się tą wiedzą podzielił? Dokładnie chodzi mi o przeniesienie pfx'ów z Gothica II do Gothic I. Z góry dzięki
EDIT: Hmm... 'Skleiłem' to:
Cytuj
Na początku w skrypcie PfxInst.d (Gothic II\_Work\Data\Scripts\system\PFX) szukamy skryptu naszego efektu (np LIGHTCONE_PARTICLES) potem w tym skrypcie szukamy następującej linii (...) teraz ten CAŁY skrypt wklejamy do GI (ta sama ścieżka a nazwa pliku Pfx.d i wklejamy gdzieś). Odpalamy GoMana, plik textures.vdf z GII szukamy interesującego nas pliku (tu, HEAVENLIGHT.TGA, może być *.tex) eksportujemy ją. Teraz Gothic VDFSem wypakowujemy wszystkie tekstury z GI, do folderu z teksturami wrzucamy tą teksturę, którą wyciągnęliśmy, i z powrotem zapisujemy do textures.vdf w GI. Odpalamy Gothica z reparse scripts files i działa. 
Czy to jest wszystko?
 

Bogdan Zwei

Bogdan Zwei

Użytkownicy
Wulgarny skurwiel pierdolony.
posty1864
Propsy541
Profesjabrak
  • Użytkownicy
  • Wulgarny skurwiel pierdolony.
1. Kopiujesz czar PFX i VFX z Gothic 2.
2. Wklejasz PFX i VFX do Gothic 1.
2.5. Możesz, ale nie musisz przenosić SFX tego czaru (dźwięk).
3. Jeśli dane tekstury nie są w G1, przenosisz je.
4. Bawisz się w jakikolwiek sposób przeniesionym efektem.

Skrypty reparsuj oczywiście, to podstawa.
 
: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.

MajkeI

MajkeI

Użytkownicy
Front End Developer
posty698
Propsy169
Profesjabrak
  • Użytkownicy
  • Front End Developer
czym jest vfx?
 

Bogdan Zwei

Bogdan Zwei

Użytkownicy
Wulgarny skurwiel pierdolony.
posty1864
Propsy541
Profesjabrak
  • Użytkownicy
  • Wulgarny skurwiel pierdolony.
PFX - Particle (Partykuła)
VFX - Visual (wizualne)
SFX - Sound (dźwięk)

Jeśli nic nie wiesz o PFX, VFX i SFX, nie zabieraj się za to. Najpierw naucz się robić nowy czar na podstawie gotowych Gothic'owych, potem naucz się skryptów PFX i VFX, dopiero potem przenoś czar.
 
: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.

MajkeI

MajkeI

Użytkownicy
Front End Developer
posty698
Propsy169
Profesjabrak
  • Użytkownicy
  • Front End Developer
Może i masz racje... Ale jestem ambitny :D
Nie chce zakładać nowego tematu (a widzę że Bogdan Zwei jest w tym dobry) więc próbuję przenieść z G2 do G1 runę (magię)
Nie wiem co oprócz tych rzeczy muszę skopiować ani gdzie jest napisane jakiego pfxa to używa (znalazłem kilka Thunderstormów ale jest ich kilka i nie wiem który to ten właściwy):
//////////////////
IT_Addon_Runes.d : sam skrypt runy
//////////////////INSTANCE ItRu_Thunderstorm (C_Item)
{
   name             =   NAME_Rune;
   mainflag          =   ITEM_KAT_RUNE;
   flags             =   0;
   value             =   Value_Ru_Thunderstorm;
   visual            =   "ItRu_Water05.3DS";
   material         =   MAT_STONE;
   spell            =    SPL_Thunderstorm;
   mag_circle         =   3;
   wear            =    WEAR_EFFECT;
   effect            =   "SPELLFX_WEAKGLIMMER_BLUE";
   description         =   NAME_SPL_Thunderstorm;
   TEXT   [0]         =   NAME_Mag_Circle;         COUNT   [0]         =   mag_circle;
   TEXT   [1]         =   NAME_Manakosten;            COUNT   [1]         =   SPL_Cost_Thunderstorm;
   TEXT   [2]         =   NAME_Damage;               COUNT   [2]         =   SPL_DAMAGE_Thunderstorm;
   TEXT   [5]         =   NAME_Value;                  COUNT   [5]         =   value;
};
//////////////////
Spell_Thunderstorm.d: Czar
//////////////////
const int SPL_Cost_Thunderstorm    = 100;
const int SPL_Damage_Thunderstorm    = 250;
INSTANCE Spell_Thunderstorm  (C_Spell_Proto)
{
   time_per_mana         = 0;
   damage_per_level      = SPL_Damage_Thunderstorm;                     
   damageType            = DAM_MAGIC;                             
   targetCollectAlgo      = TARGET_COLLECT_NONE;
};
func int Spell_Logic_Thunderstorm   (var int manaInvested)
{
   if (Npc_GetActiveSpellIsScroll(self) && (self.attribute[ATR_MANA] >= SPL_Cost_Scroll))
   {
      return SPL_SENDCAST;
   }
   else if (self.attribute[ATR_MANA] >= SPL_Cost_Thunderstorm)
   {     
      return SPL_SENDCAST;
   }
   else //nicht genug Mana
   {
      return SPL_SENDSTOP;
   };
};
func void Spell_Cast_Thunderstorm()
{
   if (Npc_GetActiveSpellIsScroll(self))
   {
      self.attribute[ATR_MANA] = self.attribute[ATR_MANA] - SPL_Cost_Scroll;
   }
   else
   {
      self.attribute[ATR_MANA] = self.attribute[ATR_MANA] - SPL_Cost_Thunderstorm;
   };
   self.aivar[AIV_SelectSpell] += 1;
};
 


MajkeI

MajkeI

Użytkownicy
Front End Developer
posty698
Propsy169
Profesjabrak
  • Użytkownicy
  • Front End Developer

MajkeI

Przenoszenie Pfx
#6 2014-01-30, 12:49(Ostatnia zmiana: 2014-01-30, 12:55)
Rozumiem. Może wiesz jaki pfx jest do tego ItRu_Thunderstorm ?
SPELLFX_WEAKGLIMMER_BLUE nigdzie nie moge znaleźć
EDIT: Dobra, jestem ślepy, zgadza się
////////////////////
VisualFxInst.d :
////////////////////
INSTANCE SPELLFX_WEAKGLIMMER_BLUE (CFX_BASE_PROTO)
{
visname_s = "WEAK_GLIMMER_BLUE";
visalpha = 1;
visalphablendfunc_s = "ADD";
emtrjmode_s = "FIXED";
emtrjloopmode_s = "NONE";
emtrjeasefunc_s = "LINEAR";
emtrjdynupdatedelay = 2000000;
emfxlifespan = -1;
emselfrotvel_s = "0 0 0";
secsperdamage = -1;
emAdjustShpToOrigin = 1;
};

Ale co dalej?
 

Bogdan Zwei

Bogdan Zwei

Użytkownicy
Wulgarny skurwiel pierdolony.
posty1864
Propsy541
Profesjabrak
  • Użytkownicy
  • Wulgarny skurwiel pierdolony.
Nie mam zamiaru prowadzić nikogo za rączkę.
Użyj Notepad ++ i poszukaj "Thunderstorm" i popatrz jak co jest zrobione. Potem zrób wszystko jak to, oczywiście własne nazwy.


Cytat: Avallach
CytujPFX - Particle (Partykuła)Lol. To oznacza "cząsteczkę". Efekty cząsteczkowe. Bo składają się zwykle z mnóstwa drobnych cząsteczek o podobnym zachowaniu.
Ja przetłumaczyłem na szybko. Jeśli ktoś nie rozumie słowa "partykuła" może zapytać translatora o to, co znaczy "Particle". Po co mam wszystko tłumaczyć od A do Z, jeśli przez to i tak nie uczynię z siebie czy kogoś innego mistrza...? W każdym razie, partykuła to też cząsteczka. Nie wiem w czym tutaj widać problem.

A tak w ogóle to człowiek się uczy na błędach, sam robiłem dużo rzeczy w Gothic. Te rzeczy, które pytałem na forum to była dla mnie kiedyś czarna magia. Teraz Czarną magią jest dla mnie LeGo i Ikarus, których muszę się nauczyć, a reszta to starczy tylko dobrze pomyśleć, co czasami niektórym marnie wychodzi (nie mam na myśli nikogo obrazić).
 
: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.

MajkeI

MajkeI

Użytkownicy
Front End Developer
posty698
Propsy169
Profesjabrak
  • Użytkownicy
  • Front End Developer

MajkeI

Przenoszenie Pfx
#8 2014-01-30, 14:39(Ostatnia zmiana: 2014-01-30, 14:44)
Bardzo dobrze, że mnie za rączkę nie prowadzisz ale pomóc chyba już możesz.
Tu są WSZYSTKIE (chyba) skrypty w poszczególnych plikach:
Oczywiście brakujące tekstury i 3ds uzupełniłem
//////////////////
IT_Addon_Runes.d :
//////////////////
INSTANCE ItRu_Thunderstorm (C_Item)
{
   name             =   NAME_Rune;
   mainflag          =   ITEM_KAT_RUNE;
   flags             =   0;
   value             =   Value_Ru_Thunderstorm;
   visual            =   "ItRu_Water05.3DS";
   material         =   MAT_STONE;
   spell            =    SPL_Thunderstorm;
   mag_circle         =   3;
   wear            =    WEAR_EFFECT;
   effect            =   "SPELLFX_WEAKGLIMMER_BLUE";
   description         =   NAME_SPL_Thunderstorm;
   TEXT   [0]         =   NAME_Mag_Circle;         COUNT   [0]         =   mag_circle;
   TEXT   [1]         =   NAME_Manakosten;            COUNT   [1]         =   SPL_Cost_Thunderstorm;
   TEXT   [2]         =   NAME_Damage;               COUNT   [2]         =   SPL_DAMAGE_Thunderstorm;
   TEXT   [5]         =   NAME_Value;                  COUNT   [5]         =   value;
};
//////////////////
Spell_Thunderstorm.d:
//////////////////
const int SPL_Cost_Thunderstorm    = 100;
const int SPL_Damage_Thunderstorm    = 250;
INSTANCE Spell_Thunderstorm  (C_Spell_Proto)
{
   time_per_mana         = 0;
   damage_per_level      = SPL_Damage_Thunderstorm;                     
   damageType            = DAM_MAGIC;                             
   targetCollectAlgo      = TARGET_COLLECT_NONE;
};
func int Spell_Logic_Thunderstorm   (var int manaInvested)
{
   if (Npc_GetActiveSpellIsScroll(self) && (self.attribute[ATR_MANA] >= SPL_Cost_Scroll))
   {
      return SPL_SENDCAST;
   }
   else if (self.attribute[ATR_MANA] >= SPL_Cost_Thunderstorm)
   {     
      return SPL_SENDCAST;
   }
   else
   {
      return SPL_SENDSTOP;
   };
};
func void Spell_Cast_Thunderstorm()
{
   if (Npc_GetActiveSpellIsScroll(self))
   {
      self.attribute[ATR_MANA] = self.attribute[ATR_MANA] - SPL_Cost_Scroll;
   }
   else
   {
      self.attribute[ATR_MANA] = self.attribute[ATR_MANA] - SPL_Cost_Thunderstorm;
   };
   self.aivar[AIV_SelectSpell] += 1;
};
//////////////
VisualFxInst.d
//////////////
INSTANCE spellFX_Thunderstorm(CFx_Base_Proto)
{
    visname_S             = "MFX_Thunderstorm_INIT";
    emtrjmode_s          = "FIXED";
      emTrjOriginNode       = "ZS_RIGHTHAND";
    emtrjloopmode_s       = "NONE";
    emFXInvestOrigin_S       = "FX_EarthQuake";  // "spellFX_Thunderstorm_INVESTGLOW";
};
INSTANCE spellFX_Thunderstorm_KEY_CAST   (C_ParticleFXEmitKey)
{
      emCreateFXID      = "spellFX_Thunderstorm_RAIN";
      pfx_ppsIsLoopingChg = 1;
};
INSTANCE spellFX_Thunderstorm_RAIN      (CFx_Base_Proto)
{
      visname_S             = "MFX_Thunderstorm_Rain";
      emtrjmode_s          = "FIXED";
      emTrjOriginNode       = "ZS_RIGHTHAND";
      emActionCollDyn_S      = "CREATEONCE";
      emFXCollDynAlign_S      = "COLLISIONNORMAL";
    emCheckCollision      = 1;
     LightPresetName       = "CATACLYSM";
    emFXCreatedOwnTrj       = 1;
    emFXCreate_S         = "spellFX_ThunderStorm_Flash";
    sfxid               = "MFX_Thunderstorm_IceRain";
    sfxisambient         = 1;
};
INSTANCE SPELLFX_WEAKGLIMMER_BLUE (CFX_BASE_PROTO)
{
   visname_s         = "WEAK_GLIMMER_BLUE";
   visalpha         = 1;
   visalphablendfunc_s      = "ADD";
   emtrjmode_s         = "FIXED";
   emtrjloopmode_s         = "NONE";
   emtrjeasefunc_s         = "LINEAR";
   emtrjdynupdatedelay      = 2000000;
   emfxlifespan         = -1;
   emselfrotvel_s         = "0 0 0";
   secsperdamage         = -1;
   emAdjustShpToOrigin      = 1;
};
//////////////
SfxInst.d
//////////////
INSTANCE MFX_Thunderstorm_Thunder   (C_SFX_DEF)
{
  file= "nearthunder.wav";
  vol = 127;
};     
INSTANCE MFX_Thunderstorm_IceRain      (C_SFX_DEF)
{
  file= "MFX_Thunderstorm_Icerain.wav";
  vol = 60;
};
//////////////
PfxInstMagic.d
//////////////
INSTANCE MFX_THUNDERSTORM_INIT (C_PARTICLEFX)
{
     ppsvalue = 50.000000000;
     ppsscalekeys_s = "1";
     ppsislooping = 1;
     ppsissmooth = 1;
     ppsfps = 1.000000000;
     shptype_s = "SPHERE";
     shpfor_s = "OBJECT";
     shpoffsetvec_s = "0 20 0";
     shpdistribtype_s = "RAND";
     shpdim_s = "5";
     shpscalekeys_s = "1";
     shpscaleislooping = 1;
     shpscaleissmooth = 1;
     shpscalefps = 2.000000000;
     dirmode_s = "DIR";
     dirfor_s = "object";
     dirmodetargetfor_s = "OBJECT";
     dirmodetargetpos_s = "0 0 0";
     dirangleheadvar = 40.000000000;
     dirangleelev = -89.000000000;
     velavg = 0.000100000;
     lsppartavg = 100.000000000;
     lsppartvar = 0.000000000;
     flygravity_s = "0 -0.003 0";
     visname_s = "STORM_ICE.TGA";
     visorientation_s = "VELO3D";
     vistexisquadpoly = 1;
     vistexanifps = 18.000000000;
     vistexaniislooping = 1;
     vistexcolorstart_s = "255 255 255";
     vistexcolorend_s = "255 255 255";
     vissizestart_s = "5 8";
     vissizeendscale = 1.000000000;
     visalphafunc_s = "BLEND";
     visalphastart = 255.000000000;
     visalphaend = 255.000000000;
};
INSTANCE MFX_THUNDERSTORM_INVESTGLOW (C_PARTICLEFX)
{
     ppsvalue = 100;
     ppsscalekeys_s = "1";
     ppsislooping = 1;
     ppsissmooth = 1;
     ppsfps = 1;
     shptype_s = "BOX";
     shpfor_s = "WORLD";
     shpoffsetvec_s = "100 0 0";
     shpdistribtype_s = "RAND";
     shpisvolume = 1;
     shpdim_s = "10 1000 10";
     shpscalekeys_s = "1";
     shpscaleislooping = 1;
     shpscaleissmooth = 1;
     shpscalefps = 2;
     dirmode_s = "DIR";
     dirfor_s = "object";
     dirmodetargetfor_s = "OBJECT";
     dirmodetargetpos_s = "0 0 0";
     dirangleelev = -89;
     velavg = 0.00100000005;
     lsppartavg = 800;
     lsppartvar = 100;
     flygravity_s = "0 0.001 0";
     visname_s = "BELIARSRAGE_CLOUD.TGA";
     visorientation_s = "VELO";
     vistexisquadpoly = 1;
     vistexanifps = 18;
     vistexaniislooping = 1;
     vistexcolorstart_s = "255 255 255";
     vistexcolorend_s = "255 0 0";
     vissizestart_s = "5 50";
     vissizeendscale = 10;
     visalphafunc_s = "BLEND";
     visalphastart = 255;
};
INSTANCE MFX_THUNDERSTORM_RAIN (C_PARTICLEFX)
{
     ppsvalue = 1500;
     ppsscalekeys_s = "1 1 1 1 1 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1";
     ppsfps = 1;
     ppscreateem_s = "MFX_THUNDERSTORM_ICE";
     shptype_s = "BOX";
     shpfor_s = "WORLD";
     shpoffsetvec_s = "0 500 0";
     shpdistribtype_s = "RAND";
     shpisvolume = 1;
     shpdim_s = "1000 10 1000";
     shpscalekeys_s = "1";
     shpscaleislooping = 1;
     shpscalefps = 15;
     dirmode_s = "DIR";
     dirfor_s = "WORLD";
     diranglehead = 10;
     dirangleheadvar = 5;
     dirangleelev = -90;
     dirangleelevvar = 5;
     velavg = 1;
     velvar = 0.300000012;
     lsppartavg = 600;
     flygravity_s = "0 0 0";
     visname_s = "SKYRAIN.TGA";
     visorientation_s = "NONE";
     vistexanifps = 10;
     vistexaniislooping = 1;
     vistexcolorstart_s = "255 255 255";
     vistexcolorend_s = "255 255 255";
     vissizestart_s = "20 50";
     vissizeendscale = 1;
     visalphafunc_s = "BLEND";
     visalphastart = 255;
     visalphaend = 100;
     trltexture_s = "SIMPLEGLOW.TGA";
     flockmode = "WIND";
};
INSTANCE MFX_THUNDERSTORM_ICE (C_PARTICLEFX)
{
     ppsvalue = 100;
     ppsscalekeys_s = "1 1 1 1 1 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1";
     ppsfps = 1;
     shptype_s = "BOX";
     shpfor_s = "WORLD";
     shpoffsetvec_s = "0 1400 0";
     shpdistribtype_s = "RAND";
     shpisvolume = 1;
     shpdim_s = "2000 10 2000";
     shpscalekeys_s = "1";
     shpscaleislooping = 1;
     shpscalefps = 15;
     dirmode_s = "DIR";
     dirfor_s = "WORLD";
     diranglehead = 10;
     dirangleheadvar = 5;
     dirangleelev = -90;
     dirangleelevvar = 5;
     velvar = 1;
     lsppartavg = 2000;
     flygravity_s = "0 -0.01 0";
     flycolldet_b = 3;
     visname_s = "STORM_ICE.TGA";
     visorientation_s = "NONE";
     vistexanifps = 10;
     vistexaniislooping = 1;
     vistexcolorstart_s = "255 255 255";
     vistexcolorend_s = "255 255 255";
     vissizestart_s = "10 18";
     vissizeendscale = 10;
     visalphafunc_s = "BLEND";
     visalphastart = 255;
     visalphaend = 255;
     trlfadespeed = 0.00999999978;
     trltexture_s = "WHITECLOUD.TGA";
     flockmode = "WIND";
};
INSTANCE MFX_THUNDERSTORM_FLASHES (C_PARTICLEFX)
{
     ppsvalue = 12;
     ppsscalekeys_s = "1 1 1 1 1 1 1 1 1 1";
     ppsissmooth = 1;
     ppsfps = 1;
     shptype_s = "BOX";
     shpfor_s = "OBJECT";
     shpoffsetvec_s = "0 3000 0";
     shpdistribtype_s = "RAND";
     shpdim_s = "2000 10 2000";
     shpscalekeys_s = "1";
     shpscaleislooping = 1;
     shpscaleissmooth = 1;
     shpscalefps = 5;
     dirmode_s = "DIR";
     dirfor_s = "WORLD";
     dirmodetargetfor_s = "OBJECT";
     dirmodetargetpos_s = "0 0 0";
     dirangleheadvar = 20;
     dirangleelev = -90;
     dirangleelevvar = 30;
     velavg = 5;
     velvar = 2;
     lsppartavg = 400;
     flygravity_s = "0 -0.0000001 0";
     visname_s = "THUNDERSTORM_LIGHTNING.TGA";
     visorientation_s = "VELO3D";
     vistexisquadpoly = 1;
     vistexanifps = 20;
     vistexaniislooping = 1;
     vistexcolorstart_s = "255 255 255";
     vistexcolorend_s = "255 255 255";
     vissizestart_s = "120 180";
     vissizeendscale = 20;
     visalphafunc_s = "ADD";
     visalphastart = 255;
     visalphaend = 255;
};
INSTANCE MFX_THUNDERSTORM_DOME (C_PARTICLEFX)
{
     ppsvalue = 200;
     ppsscalekeys_s = "1 1 1 1 1 1 1 1 1 1";
     ppsissmooth = 1;
     ppsfps = 1;
     shptype_s = "MESH";
     shpfor_s = "WORLD";
     shpoffsetvec_s = "0 0 0";
     shpdistribtype_s = "RAND";
     shpdistribwalkspeed = 0.000300000014;
     shpisvolume = 1;
     shpdim_s = "1";
     shpmesh_s = "THUNDERSTORM_DOME.3DS";
     shpmeshrender_b = 1;
     shpscalekeys_s = "1";
     shpscalefps = 5;
     dirmode_s = "DIR";
     dirfor_s = "WORLD";
     lsppartavg = 300;
     lsppartvar = 100;
     visname_s = "MFX_SLEEP_STAR.TGA";
     vistexisquadpoly = 1;
     vistexcolorstart_s = "255 255 255";
     vistexcolorend_s = "255 255 255";
     vissizestart_s = "30 30";
     vissizeendscale = 0.100000001;
     visalphafunc_s = "ADD";
     visalphastart = 255;
     visalphaend = 255;
};
Przy parsowaniu wywala błąd - nie zna EFFECT (pierwszy skrypt) i teraz nie wiem czy to jest zwykła zmienna czy co. Wie ktoś?
 

Bogdan Zwei

Bogdan Zwei

Użytkownicy
Wulgarny skurwiel pierdolony.
posty1864
Propsy541
Profesjabrak
  • Użytkownicy
  • Wulgarny skurwiel pierdolony.
Cytuj
Przy parsowaniu wywala błąd - nie zna EFFECT (pierwszy skrypt) i teraz nie wiem czy to jest zwykła zmienna czy co. Wie ktoś?
Nie wiesz, co to jest effect?
Daj spokój... Poważnie, jak nie wiesz, co to jest effect to ani nie wiesz jak zrobić nową broń czy głupi miecz runiczny...
 
: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.


MajkeI

MajkeI

Użytkownicy
Front End Developer
posty698
Propsy169
Profesjabrak
  • Użytkownicy
  • Front End Developer
Avallach - próbowałem bo zdawało mi się że to pole w skrypcie itemu odpowiada za efekt czaru. Ale myliłem się, bo to tylko sam fakt świecenia się runy. Jak to wywaliłem to pojawił się kolejny błąd - mianowicie Npc_GetActiveSpellIsScroll, którego także nie ma w g1.
Właśnie wtedy zrezygnowałem. :facepalm: Także dzięki panom ale to za wysokie progi jak dla mnie.

A tak btw to nie czasami C_Item ? :D
 

Splash

Splash

Moderator
posty4209
Propsy3412
ProfesjaNierób
  • Moderator
W obu klasach jest :D
 
Nie zajmuję się multiplayerami do Gothica. Przestańcie zawracać mi tym głowę...
Ps. Siemekk ma downa i śpi w pufie

MajkeI

MajkeI

Użytkownicy
Front End Developer
posty698
Propsy169
Profesjabrak
  • Użytkownicy
  • Front End Developer
No dobra - gdzie ukrywa się funkcja Npc_GetActiveSpellIsScroll?? Nie mogłem nigdzie w g2 znaleźć. Wie ktoś?
 


MajkeI

MajkeI

Użytkownicy
Front End Developer
posty698
Propsy169
Profesjabrak
  • Użytkownicy
  • Front End Developer
No więc nie mam pojęcia co to za funkcja ani co robi, ale była tutaj:func int Spell_Logic_Thunderstorm   (var int manaInvested)
{
   if (Npc_GetActiveSpellIsScroll(self) && (self.attribute[ATR_MANA] >= SPL_Cost_Scroll))
   {
      return SPL_SENDCAST;
   }
   else if (self.attribute[ATR_MANA] >= SPL_Cost_Thunderstorm)
   {     
      return SPL_SENDCAST;
   }
   else
   {
      return SPL_SENDSTOP;
   };
};
Myślę, że lepiej nie usuwać bo coś się popsuje, ale tylko myślę.
 

inż. Avallach

inż. Avallach

Administrator
posty7661
Propsy5239
NagrodyV
ProfesjaProgramista
  • Administrator
Ale po co usuwać czy w ogóle się tym martwić. To jest skrypt z g2nk, nie g1. Ty chcesz go tak po prostu przenieść? Przenoszenie niektórych czarów między częściami gry jest niemożliwe konwencjonalnymi sposobami. A ta funkcja na pewno nie jest tym o co powinieneś się martwić, w tej części powinieneś zamiast tego wzorować się na analogicznych funkcjach z g1. Spróbuj najpierw przenieść coś prostego - jakiś czar typu pocisk zadający obrażenia. Już to nie będzie proste. A czar z efektami atmosferycznymi typu burza już totalnie cię przerasta. 

Jak ja bym się za to zabrał - przede wszystkim rozpisz sobie wszystkie miejsca w skryptach części gry DO której coś przenosisz gdzie są dane lub funkcje związane z jakimś czarem, szukając po nazwach i podążając za wszelkimi odniesieniami. Część "magii" dzieje się w silniku i wtedy trzeba trochę zgadywać co od czego zależy. Dotąd taki tutorial chyba nie powstał i raczej nikt go nie stworzy, więc musisz sobie poradzić z tym sam. Dopiero potem zacznij brać się za przenoszenie czegokolwiek.

MajkeI

MajkeI

Użytkownicy
Front End Developer
posty698
Propsy169
Profesjabrak
  • Użytkownicy
  • Front End Developer
Ok, wielkie dzięki Avallach. Popróbuję, może kiedyś coś z tego wyjdzie. Jeśli tak - napiszę tutka :D
 


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