Forum NWN World in the Shadow Strona Główna NWN World in the Shadow
Forum serwera World in the Shadow
 
 FAQFAQ   SzukajSzukaj   UżytkownicyUżytkownicy   GrupyGrupy   GalerieGalerie   RejestracjaRejestracja 
 ProfilProfil   Zaloguj się, by sprawdzić wiadomościZaloguj się, by sprawdzić wiadomości   ZalogujZaloguj 

PW- małe pytanko

 
To forum jest zablokowane, nie możesz pisać dodawać ani zmieniać na nim czegokolwiek   Ten temat jest zablokowany bez możliwości zmiany postów lub pisania odpowiedzi    Forum NWN World in the Shadow Strona Główna -> Pytania o zasady
Zobacz poprzedni temat :: Zobacz następny temat  
Autor Wiadomość
witia1
Pogromca Drako



Dołączył: 02 Maj 2006
Posty: 539
Przeczytał: 0 tematów

Pomógł: 5 razy
Ostrzeżeń: 0/5
Skąd: Z drugiej strony monitora :D

PostWysłany: Pon 20:26, 12 Lis 2007    Temat postu: PW- małe pytanko

Jeśli ktoś mógł by mnie naprowadzić na właściwe tory co trzeba zmienić by czar Prawdziwego Widzenia zamiast standardowego efektu dawał premię do spostrzegawczości i efekt widzenia niewidzialnych był bym niezmiernie dźwięczny.

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



Dołączył: 30 Kwi 2006
Posty: 563
Przeczytał: 0 tematów

Pomógł: 19 razy
Ostrzeżeń: 0/5
Skąd: Warszawa

PostWysłany: Pon 20:51, 12 Lis 2007    Temat postu: Re: PW- małe pytanko

witia1 napisał:
Jeśli ktoś mógł by mnie naprowadzić na właściwe tory co trzeba zmienić by czar Prawdziwego Widzenia zamiast standardowego efektu dawał premię do spostrzegawczości i efekt widzenia niewidzialnych był bym niezmiernie dźwięczny.


A na cóż Ci to, że tak zapytam? Razz
Trzeba edytować skrypt czaru nw_s0_trueseeing albo czesc tego bo pewnie cala nazwa skryptu jest za dluga. Tam musisz odnaleźć efekt TRUE_SEEING ktory jest przypisywany do gracza. I w jego miejse wstawic efekt widzenia niewidzialnych i premie do spota.

Czyli musisz umiec pisac skrypty Razz Chcesz gotowy skrypt?


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



Dołączył: 02 Maj 2006
Posty: 539
Przeczytał: 0 tematów

Pomógł: 5 razy
Ostrzeżeń: 0/5
Skąd: Z drugiej strony monitora :D

PostWysłany: Pon 22:39, 12 Lis 2007    Temat postu:

Kombinuje nieco, szukam jakieś równowagi w pw. Jeśli masz coś gotowego to nie wzgardzę, choć sam pewnie i tak spróbuję postanowiłem nadrobić niedostatki wiedzy xD

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



Dołączył: 30 Kwi 2006
Posty: 563
Przeczytał: 0 tematów

Pomógł: 19 razy
Ostrzeżeń: 0/5
Skąd: Warszawa

PostWysłany: Wto 12:41, 13 Lis 2007    Temat postu:

witia1 napisał:
Kombinuje nieco, szukam jakieś równowagi w pw. Jeśli masz coś gotowego to nie wzgardzę, choć sam pewnie i tak spróbuję postanowiłem nadrobić niedostatki wiedzy xD


Proste Razz

Kod:

#include "x2_inc_spellhook"

void main()
{

/*
  Spellcast Hook Code
  Added 2003-06-23 by GeorgZ
  If you want to make changes to all spells,
  check x2_inc_spellhook.nss to find out more

*/

    if (!X2PreSpellCastCode())
    {
    // If code within the PreSpellCastHook (i.e. UMD) reports FALSE, do not run this spell
        return;
    }

// End of Spell Cast Hook


    //Declare major variables
    object oTarget = GetSpellTargetObject();
    effect eVis = EffectVisualEffect(VFX_DUR_MAGICAL_SIGHT);
    effect eDur = EffectVisualEffect(VFX_DUR_CESSATE_POSITIVE);
    effect eSight = EffectTrueSeeing();  // <-- O TA LINIJKA NAS INTERESUJE
    effect eLink = EffectLinkEffects(eVis, eSight);
    eLink = EffectLinkEffects(eLink, eDur);
    //Fire cast spell at event for the specified target
    SignalEvent(oTarget, EventSpellCastAt(OBJECT_SELF, SPELL_TRUE_SEEING, FALSE));
    int nDuration = GetCasterLevel(OBJECT_SELF);
    int nMetaMagic = GetMetaMagicFeat();
    //Enter Metamagic conditions
    if (nMetaMagic == METAMAGIC_EXTEND)
    {
        nDuration = nDuration *2; //Duration is +100%
    }
    //Apply the VFX impact and effects
    ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLink, oTarget, TurnsToSeconds(nDuration));
}


Tutaj widać pikny skrypcik, oryginalny. Tam widzimy EffectTrueSeeing(). To jest nazwa efektu jaki przypiszemy, no to my go sobie myk podmienimy na EffectSeeInvisible().

Pod nim dodamy kolejny efekt, analogicznie do tego wyższego, zmieniajac tylko EffectSeeInvisble() na EffectSkillIncrease(SKILL_SPOT,20). W EffectSkillIncrease musimy podac 2 informacje w nawiasach, bo o ile TrueSeeing albo SeeInvisble są okreslone dokladnie, wiadomo co dają, to przy podniesieniu skilla potrzeba podac jakiego podnosimy i o ile Smile

Na końcu musimy zlinkować pierwszy efekt (SeeInvisb) z efektem wizualnym, a potem efekt zlinkowany z efektem SkillIncrease. To nam zapewni to, że efekty te spadną w tym samym momencie, no i przy rozproszeniu beda traktowane jako 1 a nie 3 oddzielne.
W efekcie skrypt wygląda tak:

Kod:

/*
  Spellcast Hook Code
  Added 2003-06-23 by GeorgZ
  If you want to make changes to all spells,
  check x2_inc_spellhook.nss to find out more

*/

    if (!X2PreSpellCastCode())
    {
    // If code within the PreSpellCastHook (i.e. UMD) reports FALSE, do not run this spell
        return;
    }

// End of Spell Cast Hook


    //Declare major variables
    object oTarget = GetSpellTargetObject();
    effect eVis = EffectVisualEffect(VFX_DUR_MAGICAL_SIGHT);
    effect eDur = EffectVisualEffect(VFX_DUR_CESSATE_POSITIVE);
    effect eSeeInv = EffectSeeInvisible();   //tu zmienilismy
    effect eSkillInc = EffectSkillIncrease(SKILL_SPOT,20); // tu dodalismy
    effect eLink = EffectLinkEffects(eVis, eSeeInv);         // tutaj linkujemy zobaczenie niewidzialnego z wizualnym
    eLink=EffectLinkEffects(eLink,eSkillInc); // tutaj linkujemy poprzedni z podniesiem spota
    eLink = EffectLinkEffects(eLink, eDur);
    //Fire cast spell at event for the specified target
    SignalEvent(oTarget, EventSpellCastAt(OBJECT_SELF, SPELL_TRUE_SEEING, FALSE));
    int nDuration = GetCasterLevel(OBJECT_SELF);
    int nMetaMagic = GetMetaMagicFeat();
    //Enter Metamagic conditions
    if (nMetaMagic == METAMAGIC_EXTEND)
    {
        nDuration = nDuration *2; //Duration is +100%
    }
    //Apply the VFX impact and effects
    ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLink, oTarget, TurnsToSeconds(nDuration));
}


Easy Wink

Przydałoby się kolorowanie składni -.-


Post został pochwalony 1 raz
Powrót do góry
Zobacz profil autora
Zobacz poprzedni temat :: Zobacz następny temat  
Autor Wiadomość
witia1
Pogromca Drako



Dołączył: 02 Maj 2006
Posty: 539
Przeczytał: 0 tematów

Pomógł: 5 razy
Ostrzeżeń: 0/5
Skąd: Z drugiej strony monitora :D

PostWysłany: Wto 13:43, 13 Lis 2007    Temat postu:

Dzięki wielkie xD Gotowiec sporo mi ułatwił.

Post został pochwalony 0 razy
Powrót do góry
Zobacz profil autora
Wyświetl posty z ostatnich:   
To forum jest zablokowane, nie możesz pisać dodawać ani zmieniać na nim czegokolwiek   Ten temat jest zablokowany bez możliwości zmiany postów lub pisania odpowiedzi    Forum NWN World in the Shadow Strona Główna -> Pytania o zasady Wszystkie czasy w strefie CET (Europa)
Strona 1 z 1

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

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