Hejka. Próbuję przenieść pewien efekt wizualny z Gothic 2 do Gothic 1. Efekt ten ma być związany z rutyną danej postaci - przenoszę z Gothica 2 rutynę "zs_circle", czyli tę rutynę ktorą wykonują poszukiwacze nad okiem Innosa w kamiennym kręgu. Rutyna działa tylko mam problem, że nie działa ten efekt wizualny z czarem.
Poniżej opiszę co dokładnie zrobiłem.
1. Wkleiłem do Visualfxinst.d w Gothic\_work\DATA\scripts\system\VISUALFX to:
/// XXXXXXXXXXXXXXXXXXXXXXXXXXX
/// XX I N V O C A T I O N XX
/// XXXXXXXXXXXXXXXXXXXXXXXXXXX
INSTANCE spellFX_INCOVATION_RED (CFx_Base_Proto)
{
visname_S = "INVOCATION_RED";
emtrjmode_s = "FIXED";
emTrjOriginNode = "BIP01";
lightpresetname = "REDAMBIENCE";
sfxid = "SFX_Circle";
sfxisambient = 1;
};
INSTANCE spellFX_INCOVATION_GREEN (CFx_Base_Proto)
{
visname_S = "INVOCATION_GREEN";
emtrjmode_s = "FIXED";
emTrjOriginNode = "BIP01";
lightpresetname = "POISON";
sfxid = "SFX_Circle";
sfxisambient = 1;
};
INSTANCE spellFX_INCOVATION_BLUE (CFx_Base_Proto)
{
visname_S = "INVOCATION_BLUE";
emtrjmode_s = "FIXED";
emTrjOriginNode = "BIP01";
lightpresetname = "REDAMBIENCE";
sfxid = "SFX_Circle";
sfxisambient = 1;
};
INSTANCE spellFX_INCOVATION_VIOLET (CFx_Base_Proto)
{
visname_S = "INVOCATION_VIOLET";
emtrjmode_s = "FIXED";
emTrjOriginNode = "BIP01";
lightpresetname = "CATACLYSM";
sfxid = "SFX_Circle";
sfxisambient = 1;
};
INSTANCE spellFX_INCOVATION_WHITE (CFx_Base_Proto)
{
visname_S = "INVOCATION_WHITE";
emtrjmode_s = "FIXED";
emTrjOriginNode = "BIP01";
lightpresetname = "WHITEBLEND";
sfxid = "SFX_Circle";
sfxisambient = 1;
};
2. Wkleiłem w PFXMagic.d w Gothic\_work\DATA\scripts\system\PFX to:
PROTOTYPE INVOCATION (C_PARTICLEFX)
{
ppsvalue = 30;
ppsscalekeys_s = "1 1 2 2 2 3 3 4 4 5";
ppsissmooth = 1;
ppsfps = 3;
shptype_s = "CIRCLE";
shpfor_s = "WORLD";
shpoffsetvec_s = "0 0 0";
shpdistribtype_s = "RAND";
shpdim_s = "120";
shpscalekeys_s = "1 2 3 4 5 6 7 8 9 10";
shpscaleissmooth = 1;
shpscalefps = 3;
dirmode_s = "RAND";
dirfor_s = "object";
diranglehead = 90;
dirangleheadvar = 45;
dirangleelev = 90;
dirangleelevvar = 45;
velavg = 0.100000001;
lsppartavg = 1500;
lsppartvar = 300;
flygravity_s = "0 0.00008 0";
visname_s = "MFX_MAGICCLOUD.TGA";
visorientation_s = "VELO";
vistexisquadpoly = 1;
vistexanifps = 25;
vistexaniislooping = 2;
vistexcolorstart_s = "255 0 0";
vistexcolorend_s = "255 0 0";
vissizestart_s = "20 20";
vissizeendscale = 20;
visalphafunc_s = "ADD";
visalphastart = 255;
trltexture_s = "LIGHTNING_BIG_A0.TGA";
};
INSTANCE INVOCATION_RED (INVOCATION)
{
vistexcolorstart_s = "255 0 0";
vistexcolorend_s = "255 0 0";
};
INSTANCE INVOCATION_WHITE (INVOCATION)
{
vistexcolorstart_s = "255 255 255";
vistexcolorend_s = "255 255 255";
};
INSTANCE INVOCATION_BLUE (INVOCATION)
{
vistexcolorstart_s = "0 0 255";
vistexcolorend_s = "0 0 255";
};
INSTANCE INVOCATION_GREEN (INVOCATION)
{
vistexcolorstart_s = "0 200 200";
vistexcolorend_s = "0 200 200";
};
INSTANCE INVOCATION_VIOLET (INVOCATION)
{
vistexcolorstart_s = "200 0 255";
vistexcolorend_s = "255 0 200";
};
3. Pliki z teksturami MFX_MAGICCLOUD.TGA, LIGHTNING_BIG_A0.TGA, MFX_MAGICCLOUD-C.TEX i LIGHTNING_BIG_A0-C.TEX znajdują się na właściwym miejscu
4. Wstawiłem też rutynę. Rutyna ładnie działa z małym acz znaczącym zastrzeżeniem...
// ************************************
// ZS_Circle für Auge Innos Beschwörung
// ************************************
func void ZS_Circle ()
{
B_SetPerception(self);
// ------ PercTime überschreiben ------
Npc_SetPercTime (self, 0.3);
AI_StandUp (self);
AI_SetWalkmode (self,NPC_WALK); // Walkmode für den Zustand
AI_GotoWP (self, self.wp); // Gehe zum Tagesablaufstart
AI_AlignToWP (self);
};
func int ZS_Circle_Loop ()
{
var int randy;
if (self.guild == GIL_DEMON)
{
randy = Hlp_Random (1000);
if (Npc_GetStateTime(self) > randy)
{
Wld_PlayEffect("FX_EarthQuake", self, self, 0, 0, 0, FALSE );
Npc_SetStateTime (self, 0);
Wld_PlayEffect("spellFX_INCOVATION_RED", self, self, 0, 0, 0, FALSE );
AI_PlayAni (self,"T_PRACTICEMAGIC5");
};
};
return LOOP_CONTINUE;
};
func void ZS_Circle_End ()
{
};
5. I teraz przechodzimy do sedna: NPC, któremu przypisano rutynę wykonuje magiczny gest ciałem, efekt trzęsienia ziemi występuje też ładnie ale... no właśnie. Nie ma tego czerwonego efektu od czaru. i w tym właśnie tkwi problem.
Oczywiście zreparsowałem plik Gothic.src.
Bardzo prosiłbym o jakieś wskazówki jak rozwiązać ten problem.