Player Resource Consortium

 

Author Topic: Compiling Scripts  (Read 4482 times)

0 Members and 4 Guests are viewing this topic.

February 18, 2012, 12:31:24 AM

maybe i'm doing something basically wrong, I don't quite follow this error.  Was trying to track down why claws were duplicating and unequip/reequip when players rest.


Code: [Select]

C:\NeverwinterNights\NWN\utils>nwnnsscomp.exe -o -g -i c:\prc_include prc_dradis
.nss
NeverWinter Nights Script Compiler/Decompiler
Copyright 2002-2003, Edward T. Smith
Copyright 2003, The Open Knights Consortium

Compiling: prc_dradis.nss
prc_inc_combat.nss(2017): Error: Undeclared identifier "GetArmorType"
prc_inc_combat.nss(2031): Error: Undeclared identifier "GetArmorType"
prc_inc_combat.nss(3051): Error: Undeclared identifier "GetArmorType"
prc_inc_combat.nss(3071): Error: Undeclared identifier "GetArmorType"
Compilation aborted with errors
Errors occurred in compiling "prc_dradis.nss"


There is no function for GetArmorType in prc_inc_combat.nss.  There are no includes in that file, am I doing something wrong with my compiling?  I have the includes.


February 18, 2012, 01:50:22 AM
Reply #1
  • Hero Member
  • *****
  • Posts: 1439
  • Karma: +27/-0
  • Gender: Male
    • View Profile

GetArmorType() function is located in inc_utility.nss file. Have you extracted all files from prc_include.hak to c:\prc_include? Removed any includes from prc_dradis?


February 18, 2012, 01:58:19 AM
Reply #2

No, I will look in the include hak again and double check through.  And yes I have all the files in the include directory.

Why would you remove includes from inside the script itself? or it just attaches as necessary from all the include directory if functions don't exist?

Code: [Select]
//::///////////////////////////////////////////////
//:: Dragon Disciple Immunities
//:: prc_dradis.nss
//::///////////////////////////////////////////////
/*
    Applies a variety of immunities to the multiple dragon disciple types.
*/
//:://////////////////////////////////////////////
//:: Created By: Silver
//:: Created On: Apr 27, 2005
//:://////////////////////////////////////////////

#include "prc_inc_natweap"
#include "prc_ip_srcost"
#include "pnp_shft_poly"
#include "prc_compan_inc"

//Adds total elemental immunity for the majority of dragon types.
void ElImmune(object oPC ,object oSkin ,int bResisEle ,int iType)
{
    DelayCommand(0.1, AddItemProperty(DURATION_TYPE_PERMANENT,ItemPropertyDamageImmunity(iType,bResisEle),oSkin));
}

//Adds poison immunity for certain dragon types.
//also adds immunity to level drain for shadow dragons.
void PoisImmu(object oPC ,object oSkin ,int bResisEle ,int pImmune)
{
    DelayCommand(0.1, AddItemProperty(DURATION_TYPE_PERMANENT,ItemPropertyImmunityMisc(pImmune),oSkin));
}

//Adds disease immunity for certain dragon types.
void DisImmu(object oPC ,object oSkin ,int bResisEle ,int dImmune)
{
    DelayCommand(0.1, AddItemProperty(DURATION_TYPE_PERMANENT,ItemPropertyImmunityMisc(dImmune),oSkin));
}

//Adds specific spell immunities for certain dragon types.
void SpellImmu(object oPC ,object oSkin ,int bResisEle ,int iSpell)
{
    DelayCommand(0.1, AddItemProperty(DURATION_TYPE_PERMANENT,ItemPropertySpellImmunitySpecific(iSpell),oSkin));
}

//Adds more spell immunities for certain dragon types.
void SpellImmu2(object oPC ,object oSkin ,int bResisEle ,int iSpel2)
{
    DelayCommand(0.1, AddItemProperty(DURATION_TYPE_PERMANENT,ItemPropertySpellImmunitySpecific(iSpel2),oSkin));
}

//Adds resistance 10 to cold and fire damage.
void SmallResist(object oPC ,object oSkin ,int bResisEle ,int sResis)
{
    DelayCommand(0.1, AddItemProperty(DURATION_TYPE_PERMANENT,ItemPropertyDamageResistance(IP_CONST_DAMAGETYPE_FIRE,sResis),oSkin));
    DelayCommand(0.1, AddItemProperty(DURATION_TYPE_PERMANENT,ItemPropertyDamageResistance(IP_CONST_DAMAGETYPE_COLD,sResis),oSkin));
}

//Adds immunity 50% to sonic and fire damage.
void LargeResist(object oPC ,object oSkin ,int bResisEle ,int lResis)
{
    DelayCommand(0.1, AddItemProperty(DURATION_TYPE_PERMANENT,ItemPropertyDamageImmunity(IP_CONST_DAMAGETYPE_FIRE,lResis),oSkin));
    DelayCommand(0.1, AddItemProperty(DURATION_TYPE_PERMANENT,ItemPropertyDamageImmunity(IP_CONST_DAMAGETYPE_SONIC,lResis),oSkin));
}

//Adds Spell Resistance of 20+Level to all Dragon Disciples at level 18.
void SpellResis(object oPC ,object oSkin ,int nLevel)
{
    int nSR = 20+nLevel;
    nSR = GetSRByValue(nSR);
    DelayCommand(0.1, AddItemProperty(DURATION_TYPE_PERMANENT,ItemPropertyBonusSpellResistance(nSR),oSkin));
}

//Adds True Seeing to all Dragon Disciples at level 20.
void SeeTrue(object oPC ,object oSkin ,int nLevel)
{
    if(GetPRCSwitch(PRC_PNP_TRUESEEING))
    {
        effect eSight = EffectSeeInvisible();
        int nSpot = GetPRCSwitch(PRC_PNP_TRUESEEING_SPOT_BONUS);
        if(nSpot == 0)
            nSpot = 15;
        effect eSpot = EffectSkillIncrease(SKILL_SPOT, nSpot);
        effect eUltra = EffectUltravision();
        eSight = EffectLinkEffects(eSight, eSpot);
        eSight = EffectLinkEffects(eSight, eUltra);
        eSight = SupernaturalEffect(eSight);
        ApplyEffectToObject(DURATION_TYPE_PERMANENT, eSight, oPC);
    }
    else
        DelayCommand(0.1, AddItemProperty(DURATION_TYPE_PERMANENT,ItemPropertyTrueSeeing(),oSkin));
}

void main()
{

    //Declare main variables.
    object oPC = OBJECT_SELF;
    object oSkin = GetPCSkin(oPC);

    //Elemental Immunities for various dragon types.
    int iType = GetHasFeat(FEAT_BLACK_DRAGON, oPC)     ? IP_CONST_DAMAGETYPE_ACID :
                GetHasFeat(FEAT_BROWN_DRAGON, oPC)     ? IP_CONST_DAMAGETYPE_ACID :
                GetHasFeat(FEAT_COPPER_DRAGON, oPC)    ? IP_CONST_DAMAGETYPE_ACID :
                GetHasFeat(FEAT_GREEN_DRAGON, oPC)     ? IP_CONST_DAMAGETYPE_ACID :
                GetHasFeat(FEAT_BRASS_DRAGON, oPC)     ? IP_CONST_DAMAGETYPE_FIRE :
                GetHasFeat(FEAT_GOLD_DRAGON, oPC)      ? IP_CONST_DAMAGETYPE_FIRE :
                GetHasFeat(FEAT_RED_DRAGON, oPC)       ? IP_CONST_DAMAGETYPE_FIRE :
                GetHasFeat(FEAT_LUNG_WANG_DRAGON, oPC) ? IP_CONST_DAMAGETYPE_FIRE :
                GetHasFeat(FEAT_BATTLE_DRAGON, oPC)    ? IP_CONST_DAMAGETYPE_SONIC :
                GetHasFeat(FEAT_EMERALD_DRAGON, oPC)   ? IP_CONST_DAMAGETYPE_SONIC :
                GetHasFeat(FEAT_HOWLING_DRAGON, oPC)   ? IP_CONST_DAMAGETYPE_SONIC :
                GetHasFeat(FEAT_BLUE_DRAGON, oPC)      ? IP_CONST_DAMAGETYPE_ELECTRICAL :
                GetHasFeat(FEAT_BRONZE_DRAGON, oPC)    ? IP_CONST_DAMAGETYPE_ELECTRICAL :
                GetHasFeat(FEAT_OCEANUS_DRAGON, oPC)   ? IP_CONST_DAMAGETYPE_ELECTRICAL :
                GetHasFeat(FEAT_SAPPHIRE_DRAGON, oPC)  ? IP_CONST_DAMAGETYPE_ELECTRICAL :
                GetHasFeat(FEAT_SONG_DRAGON, oPC)      ? IP_CONST_DAMAGETYPE_ELECTRICAL :
                GetHasFeat(FEAT_SHEN_LUNG_DRAGON, oPC) ? IP_CONST_DAMAGETYPE_ELECTRICAL :
                GetHasFeat(FEAT_CRYSTAL_DRAGON, oPC)   ? IP_CONST_DAMAGETYPE_COLD :
                GetHasFeat(FEAT_TOPAZ_DRAGON, oPC)     ? IP_CONST_DAMAGETYPE_COLD :
                GetHasFeat(FEAT_SILVER_DRAGON, oPC)    ? IP_CONST_DAMAGETYPE_COLD :
                GetHasFeat(FEAT_WHITE_DRAGON, oPC)     ? IP_CONST_DAMAGETYPE_COLD :
                -1; // If none match, make the itemproperty invalid

    int lResis = GetHasFeat(FEAT_PYROCLASTIC_DRAGON, oPC) ? IP_CONST_DAMAGEIMMUNITY_50_PERCENT :
                -1; // If none match, make the itemproperty invalid

    //Random Immunities for various Dragon types.
    int pImmune = GetHasFeat(FEAT_AMETHYST_DRAGON, oPC)   ? IP_CONST_IMMUNITYMISC_POISON :
                  GetHasFeat(FEAT_SONG_DRAGON, oPC)       ? IP_CONST_IMMUNITYMISC_POISON :
                  GetHasFeat(FEAT_STYX_DRAGON, oPC)       ? IP_CONST_IMMUNITYMISC_POISON :
                  GetHasFeat(FEAT_SHEN_LUNG_DRAGON, oPC)  ? IP_CONST_IMMUNITYMISC_POISON :
                  GetHasFeat(FEAT_SHADOW_DRAGON, oPC)     ? IP_CONST_IMMUNITYMISC_LEVEL_ABIL_DRAIN :
                   -1; // If none match, make the itemproperty invalid

    int dImmune = GetHasFeat(FEAT_STYX_DRAGON, oPC)       ? IP_CONST_IMMUNITYMISC_DISEASE :
                   -1; // If none match, make the itemproperty invalid

    int iSpell = GetHasFeat(FEAT_DEEP_DRAGON, oPC)        ? IP_CONST_IMMUNITYSPELL_CHARM_PERSON_OR_ANIMAL :
                 GetHasFeat(FEAT_CHAOS_DRAGON, oPC)       ? IP_CONST_IMMUNITYSPELL_CONFUSION :
                 GetHasFeat(FEAT_TIEN_LUNG_DRAGON, oPC)   ? SPELL_DROWN :
                 GetHasFeat(FEAT_LUNG_WANG_DRAGON, oPC)   ? SPELL_DROWN :
                 GetHasFeat(FEAT_CHIANG_LUNG_DRAGON, oPC) ? SPELL_DROWN :
                 GetHasFeat(FEAT_PAN_LUNG_DRAGON, oPC)    ? SPELL_DROWN :
                 GetHasFeat(FEAT_SHEN_LUNG_DRAGON, oPC)   ? SPELL_DROWN :
                 GetHasFeat(FEAT_TUN_MI_LUNG_DRAGON, oPC) ? SPELL_DROWN :
                 GetHasFeat(FEAT_YU_LUNG_DRAGON, oPC)     ? SPELL_DROWN :
                  -1; // If none match, make the itemproperty invalid

    int iSpel2 = GetHasFeat(FEAT_TIEN_LUNG_DRAGON, oPC)   ? SPELL_MASS_DROWN :
                 GetHasFeat(FEAT_LUNG_WANG_DRAGON, oPC)   ? SPELL_MASS_DROWN :
                 GetHasFeat(FEAT_CHIANG_LUNG_DRAGON, oPC) ? SPELL_MASS_DROWN :
                 GetHasFeat(FEAT_PAN_LUNG_DRAGON, oPC)    ? SPELL_MASS_DROWN :
                 GetHasFeat(FEAT_SHEN_LUNG_DRAGON, oPC)   ? SPELL_MASS_DROWN :
                 GetHasFeat(FEAT_TUN_MI_LUNG_DRAGON, oPC) ? SPELL_MASS_DROWN :
                 GetHasFeat(FEAT_YU_LUNG_DRAGON, oPC)     ? SPELL_MASS_DROWN :
                  -1; // If none match, make the itemproperty invalid

    int sResis = GetHasFeat(FEAT_DEEP_DRAGON, oPC)        ? IP_CONST_DAMAGERESIST_10 :
                  -1; // If none match, make the itemproperty invalid

    int sCale1 = GetHasFeat(FAST_HEALING_1,oPC);
    int sCale2 = GetHasFeat(FAST_HEALING_2,oPC);

    int nWingType = GetHasFeat(FEAT_BLACK_DRAGON, oPC)      ? PRC_WING_TYPE_DRAGON_BLACK :
                    GetHasFeat(FEAT_BLUE_DRAGON, oPC)       ? PRC_WING_TYPE_DRAGON_BLUE :
                    GetHasFeat(FEAT_AMETHYST_DRAGON, oPC)   ? PRC_WING_TYPE_DRAGON_BLUE :
                    GetHasFeat(FEAT_SAPPHIRE_DRAGON, oPC)   ? PRC_WING_TYPE_DRAGON_BLUE :
                    GetHasFeat(FEAT_TOPAZ_DRAGON, oPC)      ? PRC_WING_TYPE_DRAGON_BLUE :
                    GetHasFeat(FEAT_BRASS_DRAGON, oPC)      ? PRC_WING_TYPE_DRAGON_BRASS :
                    GetHasFeat(FEAT_BRONZE_DRAGON, oPC)     ? PRC_WING_TYPE_DRAGON_BRONZE :
                    GetHasFeat(FEAT_COPPER_DRAGON, oPC)     ? PRC_WING_TYPE_DRAGON_COPPER :
                    GetHasFeat(FEAT_GOLD_DRAGON, oPC)       ? PRC_WING_TYPE_DRAGON_GOLD :
                    GetHasFeat(FEAT_GREEN_DRAGON, oPC)      ? PRC_WING_TYPE_DRAGON_GREEN :
                    GetHasFeat(FEAT_EMERALD_DRAGON, oPC)    ? PRC_WING_TYPE_DRAGON_GREEN :
                    GetHasFeat(FEAT_SILVER_DRAGON, oPC)     ? PRC_WING_TYPE_DRAGON_SILVER :
                    GetHasFeat(FEAT_CRYSTAL_DRAGON, oPC)    ? PRC_WING_TYPE_DRAGON_SILVER :
                    GetHasFeat(FEAT_WHITE_DRAGON, oPC)      ? PRC_WING_TYPE_DRAGON_WHITE :
                    GetHasFeat(FEAT_RED_DRAGON, oPC)        ? PRC_WING_TYPE_DRAGON_RED :
                    GetHasFeat(FEAT_BATTLE_DRAGON, oPC)     ? PRC_WING_TYPE_DRAGON_COPPER2 :
                    GetHasFeat(FEAT_CHAOS_DRAGON, oPC)      ? PRC_WING_TYPE_DRAGON_COPPER2 :
                    GetHasFeat(FEAT_FANG_DRAGON, oPC)       ? PRC_WING_TYPE_DRAGON_COPPER2 :
                    GetHasFeat(FEAT_HOWLING_DRAGON, oPC)    ? PRC_WING_TYPE_DRAGON_COPPER2 :
                    GetHasFeat(FEAT_BROWN_DRAGON, oPC)      ? PRC_WING_TYPE_DRAGON_BRONZE2 :
                    GetHasFeat(FEAT_DEEP_DRAGON, oPC)       ? PRC_WING_TYPE_DRAGON_BRONZE2 :
                    GetHasFeat(FEAT_RUST_DRAGON, oPC)       ? PRC_WING_TYPE_DRAGON_BRONZE2 :
                    GetHasFeat(FEAT_ETHEREAL_DRAGON, oPC)   ? PRC_WING_TYPE_DRAGON_WHITE2 :
                    GetHasFeat(FEAT_OCEANUS_DRAGON, oPC)    ? PRC_WING_TYPE_DRAGON_BLUE2 :
                    GetHasFeat(FEAT_SONG_DRAGON, oPC)       ? PRC_WING_TYPE_DRAGON_BLUE2 :
                    GetHasFeat(FEAT_PYROCLASTIC_DRAGON, oPC) ? PRC_WING_TYPE_DRAGON_RED2 :
                    GetHasFeat(FEAT_RADIANT_DRAGON, oPC)    ? PRC_WING_TYPE_DRAGON_GOLD2 :
                    GetHasFeat(FEAT_SHADOW_DRAGON, oPC)     ? PRC_WING_TYPE_DRAGON_BLACK2 :
                    GetHasFeat(FEAT_STYX_DRAGON, oPC)       ? PRC_WING_TYPE_DRAGON_GREEN2 :
                    GetHasFeat(FEAT_TARTIAN_DRAGON, oPC)    ? PRC_WING_TYPE_DRAGON_SILVER2 :
                    PRC_WING_TYPE_DRAGON_RED;


    int nTailType = GetHasFeat(FEAT_BLACK_DRAGON, oPC)     ? PRC_TAIL_TYPE_DRAGON_BLACK :
                    GetHasFeat(FEAT_SHADOW_DRAGON, oPC)    ? PRC_TAIL_TYPE_DRAGON_BLACK :
                    GetHasFeat(FEAT_BLUE_DRAGON, oPC)      ? PRC_TAIL_TYPE_DRAGON_BLUE :
                    GetHasFeat(FEAT_AMETHYST_DRAGON, oPC)  ? PRC_TAIL_TYPE_DRAGON_BLUE :
                    GetHasFeat(FEAT_SAPPHIRE_DRAGON, oPC)  ? PRC_TAIL_TYPE_DRAGON_BLUE :
                    GetHasFeat(FEAT_TOPAZ_DRAGON, oPC)     ? PRC_TAIL_TYPE_DRAGON_BLUE :
                    GetHasFeat(FEAT_OCEANUS_DRAGON, oPC)   ? PRC_TAIL_TYPE_DRAGON_BLUE :
                    GetHasFeat(FEAT_SONG_DRAGON, oPC)      ? PRC_TAIL_TYPE_DRAGON_BLUE :
                    GetHasFeat(FEAT_BRASS_DRAGON, oPC)     ? PRC_TAIL_TYPE_DRAGON_BRASS :
                    GetHasFeat(FEAT_BRONZE_DRAGON, oPC)    ? PRC_TAIL_TYPE_DRAGON_BRONZE :
                    GetHasFeat(FEAT_BROWN_DRAGON, oPC)     ? PRC_TAIL_TYPE_DRAGON_BRONZE :
                    GetHasFeat(FEAT_DEEP_DRAGON, oPC)      ? PRC_TAIL_TYPE_DRAGON_BRONZE :
                    GetHasFeat(FEAT_RUST_DRAGON, oPC)      ? PRC_TAIL_TYPE_DRAGON_BRONZE :
                    GetHasFeat(FEAT_COPPER_DRAGON, oPC)    ? PRC_TAIL_TYPE_DRAGON_COPPER :
                    GetHasFeat(FEAT_BATTLE_DRAGON, oPC)    ? PRC_TAIL_TYPE_DRAGON_COPPER :
                    GetHasFeat(FEAT_CHAOS_DRAGON, oPC)     ? PRC_TAIL_TYPE_DRAGON_COPPER :
                    GetHasFeat(FEAT_FANG_DRAGON, oPC)      ? PRC_TAIL_TYPE_DRAGON_COPPER :
                    GetHasFeat(FEAT_HOWLING_DRAGON, oPC)   ? PRC_TAIL_TYPE_DRAGON_COPPER :
                    GetHasFeat(FEAT_GOLD_DRAGON, oPC)      ? PRC_TAIL_TYPE_DRAGON_GOLD :
                    GetHasFeat(FEAT_RADIANT_DRAGON, oPC)   ? PRC_TAIL_TYPE_DRAGON_GOLD :
                    GetHasFeat(FEAT_GREEN_DRAGON, oPC)     ? PRC_TAIL_TYPE_DRAGON_GREEN :
                    GetHasFeat(FEAT_EMERALD_DRAGON, oPC)   ? PRC_TAIL_TYPE_DRAGON_GREEN :
                    GetHasFeat(FEAT_STYX_DRAGON, oPC)      ? PRC_TAIL_TYPE_DRAGON_GREEN :
                    GetHasFeat(FEAT_SILVER_DRAGON, oPC)    ? PRC_TAIL_TYPE_DRAGON_SILVER :
                    GetHasFeat(FEAT_CRYSTAL_DRAGON, oPC)   ? PRC_TAIL_TYPE_DRAGON_SILVER :
                    GetHasFeat(FEAT_TARTIAN_DRAGON, oPC)   ? PRC_TAIL_TYPE_DRAGON_SILVER :
                    GetHasFeat(FEAT_WHITE_DRAGON, oPC)     ? PRC_TAIL_TYPE_DRAGON_WHITE :
                    GetHasFeat(FEAT_ETHEREAL_DRAGON, oPC)  ? PRC_TAIL_TYPE_DRAGON_WHITE :
                    PRC_TAIL_TYPE_DRAGON_RED;

    int nLevel = GetLevelByClass(CLASS_TYPE_DRAGON_DISCIPLE,oPC);

    //natural weapons
    //bite at level 2
    //2 claws at level 2
    //2 wing slam at level 12
    //tail slam at level 17
    if(nLevel >= 2)
    {
        int nSize = PRCGetCreatureSize(oPC);
        if(GetHasFeat(DRACONIC_BITE, oPC))
        {
            string sResRef = "prc_rdd_bite_";
            sResRef += GetAffixForSize(nSize);
            AddNaturalSecondaryWeapon(oPC, sResRef);
            //claw here
            sResRef = "prc_claw_1d6l_";
            sResRef += GetAffixForSize(nSize);
            AddNaturalPrimaryWeapon(oPC, sResRef, 2);
        }
        if(GetHasFeat(DRACONIC_WINGSLAMS, oPC))
        {
            string sResRef = "prc_rdd_wing_";
            sResRef += GetAffixForSize(nSize);
            if(nSize >= CREATURE_SIZE_MEDIUM)
                AddNaturalSecondaryWeapon(oPC, sResRef, 2);
        }
        if(GetHasFeat(DRACONIC_TAILSLAP, oPC))
        {
            string sResRef = "prc_rdd_tail_";
            sResRef += GetAffixForSize(nSize);
            if(nSize >= CREATURE_SIZE_LARGE)
                AddNaturalSecondaryWeapon(oPC, sResRef);
        }
    }
   
    int thickScale = -1;
    if(GetHasFeat(DRACONIC_ARMOR_AUG_2,oPC))
        thickScale = 2;
    else if(GetHasFeat(DRACONIC_ARMOR_AUG_1,oPC))
        thickScale = 1;

    SetCompositeBonus(oSkin, "ScaleThicken", thickScale, ITEM_PROPERTY_AC_BONUS);

    int bResisEle = GetHasFeat(FEAT_DRACONIC_IMMUNITY, oPC) ? IP_CONST_DAMAGEIMMUNITY_100_PERCENT : 0;

    if (bResisEle>0) ElImmune(oPC,oSkin,bResisEle,iType);
    if (bResisEle>0) PoisImmu(oPC,oSkin,bResisEle,pImmune);
    if (bResisEle>0) DisImmu(oPC,oSkin,bResisEle,dImmune);
    if (bResisEle>0) SpellImmu(oPC,oSkin,bResisEle,iSpell);
    if (bResisEle>0) SpellImmu2(oPC,oSkin,bResisEle,iSpel2);
    if (bResisEle>0) SmallResist(oPC,oSkin,bResisEle,sResis);
    if (bResisEle>0) LargeResist(oPC,oSkin,bResisEle,lResis);
    if (nLevel>17) SpellResis(oPC,oSkin,nLevel);
    if (nLevel>16 && GetPersistantLocalInt(oPC, "DragonDiscipleTailApplied") == 0)
    {
        SetPersistantLocalInt(oPC, "DragonDiscipleTailApplied", 1);
        SetCreatureTailType(nTailType, oPC);
    }
      //if (nLevel>8) DelayCommand(1.0f, SetCreatureWingType(nWingType, oPC));
    if (nLevel>8)
    {
        //we don't use default RDD wings to make sure this will work
        if(GetCreatureWingType(oPC) == CREATURE_WING_TYPE_DRAGON)
            SetCreatureWingType(nWingType, oPC);
    }
    if (nLevel>19) SeeTrue(oPC,oSkin,nLevel);
    //dragon disciple lichs get (almost) draco-lich wings and bony tail at lich 4 ;)
    if(nLevel>8 && GetLevelByClass(CLASS_TYPE_LICH, oPC) >= 4) SetCreatureWingType(PRC_WING_TYPE_DRAGON_BRONZE2, oPC);
    if(nLevel>16 && GetLevelByClass(CLASS_TYPE_LICH, oPC) >= 4) SetCreatureTailType(CREATURE_TAIL_TYPE_BONE, oPC);
}


File as extracted from PRC_scripts.

« Last Edit: February 18, 2012, 02:00:57 AM by Calvinthesneak »


February 18, 2012, 02:00:55 AM
Reply #3
  • Hero Member
  • *****
  • Posts: 1439
  • Karma: +27/-0
  • Gender: Male
    • View Profile

I've edited and compiled prc_dradis.nss - natural weapons will be disabled/cleared so no more claws in the inventory.

Edit: Hmm, disabling natural weapon check only for OnPlayerRest event should also be possible....
Edit2: modified the script to skip on rest check
« Last Edit: February 18, 2012, 02:06:41 AM by xwarren »


February 18, 2012, 02:13:44 AM
Reply #4

Thanks a bunch Alex, I'll let you know how it works out.

Why was the script I am using not compiling?
« Last Edit: February 18, 2012, 02:15:51 AM by Calvinthesneak »


February 19, 2012, 05:18:28 PM
Reply #5

Thanks Alex, the remove onRest check script did the trick for me.


February 20, 2012, 03:15:05 AM
Reply #6
  • Hero Member
  • *****
  • Posts: 1439
  • Karma: +27/-0
  • Gender: Male
    • View Profile

Why was the script I am using not compiling?

Sorry I didn't noticed that earlier.
If you had all scripts from prc_include extracted to c:\prc_include and you haven't changed them (removed/added includes) than I can't answers this question - it *should* compile.