Système de divinités de Jaha effect + système de sous races

Répondre
Partager Rechercher
Tout d'abord bonjour a vous

Bien, je suis debutant et developpe un module par curiosité et ce forum me fut des plus utiles, mais voila quelque chose me stop dans mon "elan" et je viens querir votre sagesse .

J'ai integré dans ce module de systeme de divinité de Jaha (merci a lui pour ce travail enorme), mais j'aimerai utiliser simultanement le systeme de subraces "Toms_subrace_system". Je parviens a les faire fonctionner independament l'un de l'autre mais impossible d'utiliser les deux en meme temps. Effectivement les deux requierent des scripts necessaires differents dans le OnClientEnter et le OnPlayerLevelUp du module. J'ai essayé d'assemblé ces scripts mais sans succes (je les ai mis a la suite l'un de l'autre... je debute j'ai dit roooh ^^).

Pourriez vous m'eclairer? merci d'avance


Mastokk\ Merci de mettre un titre clair la prochaine fois.
Salut à toi et bienvenu,

Tu pourrais donner un exemple de deux scripts que tu dois mettre sur le même évènement, afin que l'on puisse t'expliquer concrètement comment tu dois faire ?
Je n'arrive pas a vous poster les scripts lorsque je les inclue au message, le message ne semble pas vouloir partir... Je fais vraiment figure de noob là lol

[Edit] Je retente:


biensur.

voici les deux scripts qui se disputent le OnClientEnter:

Celui ci est pour le système de divinité:
Code PHP:

#include "god_inc"
 
void main()
 {
 
GodClientEnter();
 } 
Celui la pour le systeme de subrace:
Code PHP:

////////////////////////////////////////////////////////////////////////////////
 //// Subrace OnStart script       //////////////////////////////////////////////
 //// Created by: harv711          //////////////////////////////////////////////
 //// Created on: October 1, 2003  //////////////////////////////////////////////
 ////////////////////////////////////////////////////////////////////////////////
 ////////////////////////////////////////////////////////////////////////////////
 
void main()
 {
 
object oPC GetEnteringObject();
 
int nLvL1 =  GetLevelByPosition(1oPC);
 
int nLvL2 =  GetLevelByPosition(2oPC);
 
int nLvL3 =  GetLevelByPosition(3oPC);
 
int iSpellResist 11 nLvL1 nLvL2 nLvL3;
 
int iGenResit + ((nLvL1 nLvL2 nLvL3)/2);
 
int iPercentVampyre 20 nLvL1 nLvL2 nLvL3;
 
////////////////////////////////////////////////////////////////////////////////
 
effect eAbilityInCHA2 ExtraordinaryEffect(EffectAbilityIncrease(ABILITY_CHARISMA2));
 
effect eAbilityInCON2 ExtraordinaryEffect(EffectAbilityIncrease(ABILITY_CONSTITUTION2));
 
effect eAbilityInDEX2 ExtraordinaryEffect(EffectAbilityIncrease(ABILITY_DEXTERITY2));
 
effect eAbilityInINT2 ExtraordinaryEffect(EffectAbilityIncrease(ABILITY_INTELLIGENCE2));
 
effect eAbilityInSTR1 ExtraordinaryEffect(EffectAbilityIncrease(ABILITY_STRENGTH1));
 
effect eAbilityInSTR2 ExtraordinaryEffect(EffectAbilityIncrease(ABILITY_STRENGTH2));
 
effect eAbilityInWIS2 ExtraordinaryEffect(EffectAbilityIncrease(ABILITY_WISDOM2));
 
////////////////////////////////////////////////////////////////////////////////
 
effect eAbilityDeCHA1 ExtraordinaryEffect(EffectAbilityDecrease(ABILITY_CHARISMA1));
 
effect eAbilityDeCHA2 ExtraordinaryEffect(EffectAbilityDecrease(ABILITY_CHARISMA2));
 
effect eAbilityDeCHA4 ExtraordinaryEffect(EffectAbilityDecrease(ABILITY_CHARISMA4));
 
effect eAbilityDeCON2 ExtraordinaryEffect(EffectAbilityDecrease(ABILITY_CONSTITUTION2));
 
effect eAbilityDeCON4 ExtraordinaryEffect(EffectAbilityDecrease(ABILITY_CONSTITUTION4));
 
effect eAbilityDeDEX2 ExtraordinaryEffect(EffectAbilityDecrease(ABILITY_DEXTERITY2));
 
effect eAbilityDeINT1 ExtraordinaryEffect(EffectAbilityDecrease(ABILITY_INTELLIGENCE1));
 
effect eAbilityDeINT2 ExtraordinaryEffect(EffectAbilityDecrease(ABILITY_INTELLIGENCE2));
 
effect eAbilityDeSTR2 ExtraordinaryEffect(EffectAbilityDecrease(ABILITY_STRENGTH2));
 
effect eAbilityDeWIS2 ExtraordinaryEffect(EffectAbilityDecrease(ABILITY_WISDOM2));
 
////////////////////////////////////////////////////////////////////////////////
 
effect eSkillInAnimal2 ExtraordinaryEffect(EffectSkillIncrease(SKILL_ANIMAL_EMPATHY2));
 
effect eSkillInAppraise2 ExtraordinaryEffect(EffectSkillIncrease(SKILL_APPRAISE2));
 
effect eSkillInHeal2 ExtraordinaryEffect(EffectSkillIncrease(SKILL_HEAL2));
 
effect eSkillInHide2 ExtraordinaryEffect(EffectSkillIncrease(SKILL_HIDE2));
 
effect eSkillInListen2 ExtraordinaryEffect(EffectSkillIncrease(SKILL_LISTEN2));
 
effect eSkillInListen1 ExtraordinaryEffect(EffectSkillIncrease(SKILL_LISTEN1));
 
effect eSkillInMoveSilent4 ExtraordinaryEffect(EffectSkillIncrease(SKILL_MOVE_SILENTLY4));
 
effect eSkillInOpenLock2 ExtraordinaryEffect(EffectSkillIncrease(SKILL_OPEN_LOCK2));
 
effect eSkillInPerform2 ExtraordinaryEffect(EffectSkillIncrease(SKILL_PERFORM2));
 
effect eSkillInSpellCraft2 ExtraordinaryEffect(EffectSkillIncrease(SKILL_SPELLCRAFT2));
 
effect eSkillInSpot2 ExtraordinaryEffect(EffectSkillIncrease(SKILL_SPOT2));
 
effect eSkillInSpot1 ExtraordinaryEffect(EffectSkillIncrease(SKILL_SPOT1));
 
effect eSkillInTumble2 ExtraordinaryEffect(EffectSkillIncrease(SKILL_TUMBLE2));
 
////////////////////////////////////////////////////////////////////////////////
 
effect eSkillDeAppraise2 ExtraordinaryEffect(EffectSkillDecrease(SKILL_APPRAISE2));
 
effect eSkillDeMoveSilent2 ExtraordinaryEffect(EffectSkillDecrease(SKILL_MOVE_SILENTLY2));
 
effect eSkillDePerform2 ExtraordinaryEffect(EffectSkillDecrease(SKILL_PERFORM2));
 
////////////////////////////////////////////////////////////////////////////////
 
effect eDarkvision EffectVisualEffect(VFX_DUR_ULTRAVISION);
 
effect eAcIncrease ExtraordinaryEffect(EffectACIncrease(1AC_DODGE_BONUSAC_VS_DAMAGE_TYPE_ALL));
 
effect eAcIncrease4 ExtraordinaryEffect(EffectACIncrease(4AC_DODGE_BONUSAC_VS_DAMAGE_TYPE_ALL));
 
effect eAttack ExtraordinaryEffect(EffectAttackIncrease(1ATTACK_BONUS_OFFHAND));
 
effect eLink1 ExtraordinaryEffect(EffectLinkEffects(eAbilityInWIS2eAbilityDeCHA2));
 
effect eLink2 ExtraordinaryEffect(EffectLinkEffects(eAbilityDeINT2eAbilityDeCHA2));
 
effect eSpellResist ExtraordinaryEffect(EffectSpellResistanceIncrease(iSpellResist));
 
effect eDrowWill ExtraordinaryEffect(EffectSavingThrowIncrease(SAVING_THROW_WILL2SAVING_THROW_TYPE_SPELL));
 
effect eResistAcis5 ExtraordinaryEffect(EffectDamageResistance(DAMAGE_TYPE_ACID50));
 
effect eResistCold5 ExtraordinaryEffect(EffectDamageResistance(DAMAGE_TYPE_COLD50));
 
effect eResistFire5 ExtraordinaryEffect(EffectDamageResistance(DAMAGE_TYPE_FIRE50));
 
effect eResistElec5 ExtraordinaryEffect(EffectDamageResistance(DAMAGE_TYPE_ELECTRICAL50));
 
effect eResistGenasiElec ExtraordinaryEffect(EffectDamageResistance(DAMAGE_TYPE_ELECTRICALiGenResit0));
 
effect eResistGenasiBlunt ExtraordinaryEffect(EffectDamageResistance(DAMAGE_TYPE_BLUDGEONINGiGenResit0));
 
effect eResistGenasiFire ExtraordinaryEffect(EffectDamageResistance(DAMAGE_TYPE_FIREiGenResit0));
 
effect eResistGenasiAcid ExtraordinaryEffect(EffectDamageResistance(DAMAGE_TYPE_ACIDiGenResit0));
 
effect eSavingThrowIn2 ExtraordinaryEffect(EffectSavingThrowIncrease(SAVING_THROW_ALL2SAVING_THROW_TYPE_ALL));
 
effect eSavingThrowDe1 ExtraordinaryEffect(EffectSavingThrowDecrease(SAVING_THROW_ALL1SAVING_THROW_TYPE_ALL));
 
effect eResistGenasiCold ExtraordinaryEffect(EffectDamageResistance(DAMAGE_TYPE_COLDiGenResit0));
 
effect eImmuneParalysis ExtraordinaryEffect(EffectImmunity(IMMUNITY_TYPE_PARALYSIS));
 
effect eImmuneSneak ExtraordinaryEffect(EffectImmunity(IMMUNITY_TYPE_SNEAK_ATTACK));
 
effect eImmuneSleep ExtraordinaryEffect(EffectImmunity(IMMUNITY_TYPE_SLEEP));
 
effect eImmuneCharm ExtraordinaryEffect(EffectImmunity(IMMUNITY_TYPE_CHARM));
 
effect eImmuneFear ExtraordinaryEffect(EffectImmunity(IMMUNITY_TYPE_FEAR));
 
effect eImmuneDominate ExtraordinaryEffect(EffectImmunity(IMMUNITY_TYPE_DOMINATE));
 
effect eImmuneSilence ExtraordinaryEffect(EffectImmunity(IMMUNITY_TYPE_SILENCE));
 
effect eSavingThrowNegative ExtraordinaryEffect(EffectSavingThrowIncrease(SAVING_THROW_ALL2SAVING_THROW_TYPE_NEGATIVE));
 
effect eSavingThrowPositive5 ExtraordinaryEffect(EffectSavingThrowDecrease(SAVING_THROW_ALL5SAVING_THROW_TYPE_POSITIVE));
 
effect eNegativeDamageIncrease ExtraordinaryEffect(EffectDamageImmunityIncrease(DAMAGE_TYPE_NEGATIVEiPercentVampyre));
 
 if(
GetLocalInt(oPC"HasSubRace") != 1)
   {
 
////////////////////////////////////////////////////////////////////////////////
 ///////////// Tom's Sub-Races //////////////////////////////////////////////////
 ////////////////////////////////////////////////////////////////////////////////
 
if(GetSubRace(oPC)== "Vampyre" && GetHasFeat(FEAT_BLOODEDoPC))
   {
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAbilityInSTR2oPC);
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAbilityInDEX2oPC);
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAbilityInCHA2oPC);
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAbilityDeCON4oPC);
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeImmuneSneakoPC);
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeImmuneSleepoPC);
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeImmuneCharmoPC);
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeImmuneDominateoPC);
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeSavingThrowNegativeoPC);
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeSavingThrowPositive5oPC);
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeNegativeDamageIncreaseoPC);
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeDarkvisionoPC);
   return;
            }
 
////////////////////////////////////////////////////////////////////////////////
 ///////////// Vistani Sub-Races ////////////////////////////////////////////////
 ////////////////////////////////////////////////////////////////////////////////
 
if(GetHasFeat(FEAT_SKILL_FOCUS_LOREoPC)   &&
    
GetSubRace(oPC)== "Half-Vistani: Canjar" &&
    
GetRacialType(oPC)== RACIAL_TYPE_HUMAN)
   {
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeLink1oPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeSkillInSpellCraft2oPC);
  return;
     }
 
////////////////////////////////////////////////////////////////////////////////
 
if(GetSubRace(oPC)== "Half-Vistani: Corvara" &&
    
GetRacialType(oPC)== RACIAL_TYPE_HUMAN    &&
    
GetHasFeat(FEAT_SKILL_FOCUS_LOREoPC))
   {
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeLink1oPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeSkillInOpenLock2oPC);
  return;
     }
 
////////////////////////////////////////////////////////////////////////////////
 
if(GetSubRace(oPC)== "Half-Vistani: Equaar" &&
    
GetRacialType(oPC)== RACIAL_TYPE_HUMAN   &&
    
GetHasFeat(FEAT_SKILL_FOCUS_LOREoPC))
   {
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeLink1oPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeSkillInAnimal2oPC);
  return;
     }
 
////////////////////////////////////////////////////////////////////////////////
 
if(GetSubRace(oPC)== "Half-Vistani: Kamii" &&
    
GetRacialType(oPC)== RACIAL_TYPE_HUMAN  &&
    
GetHasFeat(FEAT_SKILL_FOCUS_LOREoPC))
   {
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeLink1oPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeSkillInAppraise2oPC);
  return;
     }
 
////////////////////////////////////////////////////////////////////////////////
 
if(GetSubRace(oPC)== "Half-Vistani: Naiat" &&
    
GetRacialType(oPC)== RACIAL_TYPE_HUMAN  &&
    
GetHasFeat(FEAT_SKILL_FOCUS_LOREoPC))
   {
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeLink1oPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeSkillInPerform2oPC);
  return;
     }
 
////////////////////////////////////////////////////////////////////////////////
 
if(GetSubRace(oPC)== "Half-Vistani: Vatraska" &&
    
GetRacialType(oPC)== RACIAL_TYPE_HUMAN     &&
    
GetHasFeat(FEAT_SKILL_FOCUS_LOREoPC))
   {
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeLink1oPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeSkillInHeal2oPC);
  return;
     }
 
////////////////////////////////////////////////////////////////////////////////
 
if(GetSubRace(oPC)== "Half-Vistani: Zarovan" &&
    
GetRacialType(oPC)== RACIAL_TYPE_HUMAN    &&
    
GetHasFeat(FEAT_SKILL_FOCUS_LOREoPC))
   {
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeLink1oPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeSkillInTumble2oPC);
  return;
     }
 
////////////////////////////////////////////////////////////////////////////////
 ///////////// Caliban Sub-Races ////////////////////////////////////////////////
 ////////////////////////////////////////////////////////////////////////////////
 
if(GetSubRace(oPC)== "Caliban" && GetRacialType(oPC)== RACIAL_TYPE_HALFORC)
   {
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAttackoPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAcIncreaseoPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeSkillDeAppraise2oPC);
  return;
    }
 
////////////////////////////////////////////////////////////////////////////////
 
if(GetSubRace(oPC)== "Caliban" && GetRacialType(oPC)== RACIAL_TYPE_HUMAN &&
    
GetHasFeat(FEAT_SKILL_FOCUS_TAUNToPC))
   {
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAbilityInSTR2oPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeLink2oPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAttackoPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAcIncreaseoPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeSkillDeAppraise2oPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeDarkvisionoPC);
  return;
     }
 
////////////////////////////////////////////////////////////////////////////////
 ///////////// Elf Sub-Races ////////////////////////////////////////////////////
 ////////////////////////////////////////////////////////////////////////////////
 
if(GetSubRace(oPC)== "Drow" && GetRacialType(oPC)== RACIAL_TYPE_ELF)
   {
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAbilityInCHA2oPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAbilityInINT2oPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeSpellResistoPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeDrowWilloPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeDarkvisionoPC);
  return;
            }
 
////////////////////////////////////////////////////////////////////////////////
 
if(GetSubRace(oPC)== "Wild Elf" && GetRacialType(oPC)== RACIAL_TYPE_ELF)
   {
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAbilityInCON2oPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAbilityDeINT2oPC);
  return;
            }
 
////////////////////////////////////////////////////////////////////////////////
 
if(GetSubRace(oPC)== "Wood Elf" && GetRacialType(oPC)== RACIAL_TYPE_ELF)
   {
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAbilityInSTR2oPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAbilityDeCHA2oPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAbilityDeINT2oPC);
  return;
            }
 
////////////////////////////////////////////////////////////////////////////////
 
if(GetSubRace(oPC)== "Sun Elf" && GetRacialType(oPC)== RACIAL_TYPE_ELF)
   {
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAbilityInINT2oPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAbilityDeDEX2oPC);
  return;
            }
 
////////////////////////////////////////////////////////////////////////////////
 
if(GetSubRace(oPC)== "Moon Elf" && GetRacialType(oPC)== RACIAL_TYPE_ELF)
   {
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeSkillInListen2oPC);
  return;
            }
 
////////////////////////////////////////////////////////////////////////////////
 ///////////// PlaneTouched Sub-Races ///////////////////////////////////////////
 ////////////////////////////////////////////////////////////////////////////////
 
if(GetSubRace(oPC)== "Aasimar" && GetRacialType(oPC)== RACIAL_TYPE_HUMAN &&
    
GetHasFeat(FEAT_BLOODEDoPC))
   {
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAbilityInCHA2oPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAbilityInWIS2oPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeSkillInListen2oPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeSkillInSpot2oPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeResistElec5oPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeResistAcis5oPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeResistCold5oPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeDarkvisionoPC);
  return;
            }
 
////////////////////////////////////////////////////////////////////////////////
 
if(GetSubRace(oPC)== "Air Genasi" && GetRacialType(oPC)== RACIAL_TYPE_HUMAN &&
    
GetHasFeat(FEAT_BLOODEDoPC))
   {
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAbilityDeCHA2oPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAbilityDeWIS2oPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAbilityInDEX2oPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAbilityInINT2oPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeResistGenasiElecoPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeDarkvisionoPC);
  return;
            }
 
////////////////////////////////////////////////////////////////////////////////
 
if(GetSubRace(oPC)== "Earth Genasi" && GetRacialType(oPC)== RACIAL_TYPE_HUMAN &&
    
GetHasFeat(FEAT_BLOODEDoPC))
   {
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAbilityInSTR2oPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAbilityInCON2oPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAbilityDeWIS2oPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAbilityDeCHA2oPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeResistGenasiBluntoPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeDarkvisionoPC);
  return;
            }
 
////////////////////////////////////////////////////////////////////////////////
 
if(GetSubRace(oPC)== "Fire Genasi" && GetRacialType(oPC)== RACIAL_TYPE_HUMAN &&
    
GetHasFeat(FEAT_BLOODEDoPC))
   {
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAbilityInINT2oPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAbilityDeCHA2oPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeResistGenasiColdoPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeResistGenasiFireoPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeDarkvisionoPC);
  return;
            }
 
////////////////////////////////////////////////////////////////////////////////
 
if(GetSubRace(oPC)== "Water Genasi" && GetRacialType(oPC)== RACIAL_TYPE_HUMAN &&
    
GetHasFeat(FEAT_BLOODEDoPC))
   {
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAbilityInCON2oPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAbilityDeCHA2oPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeResistGenasiFireoPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeResistGenasiAcidoPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeDarkvisionoPC);
  return;
            }
 
////////////////////////////////////////////////////////////////////////////////
 
if(GetSubRace(oPC)== "Tiefling" && GetRacialType(oPC)== RACIAL_TYPE_HUMAN &&
    
GetHasFeat(FEAT_BLOODEDoPC))
   {
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAbilityInDEX2oPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAbilityInINT2oPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAbilityDeCHA2oPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeResistElec5oPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeResistCold5oPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeResistFire5oPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeSkillInHide2oPC);
  
ApplyEffectToObject(DURATION_TYPE_PERMANENTeDarkvisionoPC);
  return;
            }
 
////////////////////////////////////////////////////////////////////////////////
 ///////////// Dwarf Sub-Races //////////////////////////////////////////////////
 ////////////////////////////////////////////////////////////////////////////////
 
if(GetSubRace(oPC)== "Duergar" && GetRacialType(oPC)== RACIAL_TYPE_DWARF)
   {
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeImmuneParalysisoPC);
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAbilityDeCHA2oPC);
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeSkillInMoveSilent4oPC);
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeSkillInListen1oPC);
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeSkillInSpot1oPC);
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeDarkvisionoPC);
   return;
            }
 
////////////////////////////////////////////////////////////////////////////////
 
if(GetSubRace(oPC)== "Gray Dwarf" && GetRacialType(oPC)== RACIAL_TYPE_DWARF)
   {
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeImmuneParalysisoPC);
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAbilityDeCHA2oPC);
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeSkillInMoveSilent4oPC);
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeSkillInListen1oPC);
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeSkillInSpot1oPC);
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeDarkvisionoPC);
   return;
            }
 
////////////////////////////////////////////////////////////////////////////////
 
if(GetSubRace(oPC)== "Shield Dwarf" && GetRacialType(oPC)== RACIAL_TYPE_DWARF)
   {
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeSkillInListen1oPC);
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeSkillInSpot1oPC);
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeSkillDeMoveSilent2oPC);
   return;
           }
 
////////////////////////////////////////////////////////////////////////////////
 
if(GetSubRace(oPC)== "Gold Dwarf" && GetRacialType(oPC)== RACIAL_TYPE_DWARF)
   {
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAttackoPC);
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeSkillInSpot1oPC);
   return;
            }
 
////////////////////////////////////////////////////////////////////////////////
 ///////////// Gnome Sub-Races //////////////////////////////////////////////////
 ////////////////////////////////////////////////////////////////////////////////
 
if(GetSubRace(oPC)== "Svirfneblin" && GetRacialType(oPC)== RACIAL_TYPE_GNOME)
   {
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeDarkvisionoPC);
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeSkillInHide2oPC);
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeSavingThrowIn2oPC);
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAbilityDeCON2oPC);
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAbilityDeCHA4oPC);
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAbilityInWIS2oPC);
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAbilityInDEX2oPC);
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAcIncrease4oPC);
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeSpellResistoPC);
   return;
            }
 
////////////////////////////////////////////////////////////////////////////////
 
if(GetSubRace(oPC)== "Deep Gnome" && GetRacialType(oPC)== RACIAL_TYPE_GNOME)
   {
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeDarkvisionoPC);
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeSkillInHide2oPC);
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeSavingThrowIn2oPC);
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAbilityDeCON2oPC);
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAbilityDeCHA4oPC);
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAbilityInWIS2oPC);
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAbilityInDEX2oPC);
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAcIncrease4oPC);
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeSpellResistoPC);
   return;
            }
 
////////////////////////////////////////////////////////////////////////////////
 
if(GetSubRace(oPC)== "Rock Gnome" && GetRacialType(oPC)== RACIAL_TYPE_GNOME)
   {
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeSkillInAppraise2oPC);
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeSkillDePerform2oPC);
   return;
            }
 
////////////////////////////////////////////////////////////////////////////////
 ///////////// Halfling Sub-Races ///////////////////////////////////////////////
 ////////////////////////////////////////////////////////////////////////////////
 
if(GetSubRace(oPC)== "Ghostwise Halfling" && GetRacialType(oPC)== RACIAL_TYPE_HALFLING)
   {
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeImmuneSilenceoPC);
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeSavingThrowDe1oPC);
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeSkillInHide2oPC);
   return;
            }
 
////////////////////////////////////////////////////////////////////////////////
 
if(GetSubRace(oPC)== "Lightfoot Halfling" && GetRacialType(oPC)== RACIAL_TYPE_HALFLING)
   {
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeSkillInPerform2oPC);
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeSkillInAppraise2oPC);
   return;
            }
 
////////////////////////////////////////////////////////////////////////////////
 
if(GetSubRace(oPC)== "Strongheart Halfling" && GetRacialType(oPC)== RACIAL_TYPE_HALFLING)
   {
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeImmuneFearoPC);
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeSavingThrowDe1oPC);
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeSkillInListen2oPC);
   return;
            }
 
////////////////////////////////////////////////////////////////////////////////
 ///////////// Half-Elf Sub-Races ///////////////////////////////////////////////
 ////////////////////////////////////////////////////////////////////////////////
 
if(GetSubRace(oPC)== "Half-Drow" && GetRacialType(oPC)== RACIAL_TYPE_HALFELF)
   {
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeDarkvisionoPC);
   return;
            }
 
////////////////////////////////////////////////////////////////////////////////
 
if(GetSubRace(oPC)== "Half-Wood Elf" && GetRacialType(oPC)== RACIAL_TYPE_HALFELF)
   {
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAbilityInSTR1oPC);
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAbilityDeCHA1oPC);
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeAbilityDeINT1oPC);
   return;
            }
 
////////////////////////////////////////////////////////////////////////////////
 
if(GetSubRace(oPC)== "Half-Wild Elf" && GetRacialType(oPC)== RACIAL_TYPE_HALFELF)
   {
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeSkillInHide2oPC);
   return;
            }
 
////////////////////////////////////////////////////////////////////////////////
 
if(GetSubRace(oPC)== "Half-Moon Elf" && GetRacialType(oPC)== RACIAL_TYPE_HALFELF)
   {
   
ApplyEffectToObject(DURATION_TYPE_PERMANENTeSkillInListen1oPC);
   return;
            }
 
////////////////////////////////////////////////////////////////////////////////
 
SetLocalInt(oPC"HasSubRace"1);
 } 



A present voila les deux sur le OnPlayerLevelUp:
Systeme de divinité:
Code PHP:

#include "god_inc"
 
void main()
 {
 
GodOnLevelUp();
 } 
Systeme de subrace:
Code PHP:

void main()
 {
 
object oPC GetPCLevellingUp();
 
int nLvL1 =  GetLevelByPosition(1oPC);
 
int nLvL2 =  GetLevelByPosition(2oPC);
 
int nLvL3 =  GetLevelByPosition(3oPC);
 
int iPC1 GetXP(oPC);
 
int iPC2 iPC1 10000;
 
 
////////////////////////////////////////////////////////////////////////////////
 ///////////////////// ECL = +1 /////////////////////////////////////////////////
 ////////////////////////////////////////////////////////////////////////////////
 
if(GetSubRace(oPC)== "Aasimar" || GetSubRace(oPC)== "Tiefling"  ||
    
GetSubRace(oPC)== "Air Genasi" || GetSubRace(oPC)== "Earth Genasi"  ||
    
GetSubRace(oPC)== "Fire Genasi"  || GetSubRace(oPC)== "Water Genasi")
   {
 
////////////////// Level 2 /////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == && GetXP(oPC)< 3000)
   {
   
SetXP(oPC0); // Set Back to level 1.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 3000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 3 /////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == && GetXP(oPC)< 6000)
   {
   
SetXP(oPC1000); // Set back to level 2.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 6000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 4 /////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == && GetXP(oPC)< 10000)
   {
   
SetXP(oPC3000); // Set back to level 3.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 10000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 5 /////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == && GetXP(oPC)< 15000)
   {
   
SetXP(oPC6000); // Set back to level 4.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 15000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 6 /////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == && GetXP(oPC)< 21000)
   {
   
SetXP(oPC10000); // Set back to level 5.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 21000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 7 /////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == && GetXP(oPC)< 28000)
   {
   
SetXP(oPC15000); // Set back to level 6.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 28000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 8 /////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == && GetXP(oPC)< 36000)
   {
   
SetXP(oPC21000); // Set back to level 7.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 36000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 9 /////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == && GetXP(oPC)< 45000)
   {
   
SetXP(oPC28000); // Set back to level 8.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 45000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 10 ////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == 10 && GetXP(oPC)< 55000)
   {
   
SetXP(oPC28000); // Set back to level 9.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 55000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 11 ////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == 11 && GetXP(oPC)< 66000)
   {
   
SetXP(oPC45000); // Set back to level 10.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 66000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 12 ////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == 12 && GetXP(oPC)< 78000)
   {
   
SetXP(oPC55000); // Set back to level 11.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 78000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 13 ////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == 13 && GetXP(oPC)< 91000)
   {
   
SetXP(oPC66000); // Set back to level 12.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 91000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 14 ////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == 14 && GetXP(oPC)< 105000)
   {
   
SetXP(oPC78000); // Set back to level 13.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 105000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 15 ////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == 15 && GetXP(oPC)< 120000)
   {
   
SetXP(oPC91000); // Set back to level 14.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 120000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 16 ////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == 16 && GetXP(oPC)< 136000)
   {
   
SetXP(oPC105000); // Set back to level 15.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 136000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 17 ////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == 17 && GetXP(oPC)< 153000)
   {
   
SetXP(oPC120000); // Set back to level 16.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 153000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 18 ////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == 18 && GetXP(oPC)< 171000)
   {
   
SetXP(oPC136000); // Set back to level 17.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 171000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 19 ////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == 19 && GetXP(oPC)< 190000)
   {
   
SetXP(oPC153000); // Set back to level 18.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 190000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 20 ////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == 20 && GetXP(oPC)< 210000)
   {
   
SetXP(oPC171000); // Set back to level 19.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 210000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////////////////////////////////////////////////////////////////////
      
}
 
////////////////////////////////////////////////////////////////////////////////
 ///////////////////// ECL = +2 /////////////////////////////////////////////////
 ////////////////////////////////////////////////////////////////////////////////
 
if(GetSubRace(oPC)== "Drow" || GetSubRace(oPC)== "Duergar" ||
    
GetSubRace(oPC)== "Gray Dwarf")
   {
 
////////////////// Level 2 /////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == && GetXP(oPC)< 6000)
   {
   
SetXP(oPC0); // Set Back to level 1.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 6000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 3 /////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == && GetXP(oPC)< 10000)
   {
   
SetXP(oPC1000); // Set back to level 2.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 10000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 4 /////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == && GetXP(oPC)< 15000)
   {
   
SetXP(oPC3000); // Set back to level 3.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 15000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 5 /////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == && GetXP(oPC)< 21000)
   {
   
SetXP(oPC6000); // Set back to level 4.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 21000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 6 /////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == && GetXP(oPC)< 28000)
   {
   
SetXP(oPC10000); // Set back to level 5.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 28000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 7 /////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == && GetXP(oPC)< 36000)
   {
   
SetXP(oPC15000); // Set back to level 6.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 36000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 8 /////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == && GetXP(oPC)< 45000)
   {
   
SetXP(oPC21000); // Set back to level 7.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 45000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 9 /////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == && GetXP(oPC)< 55000)
   {
   
SetXP(oPC28000); // Set back to level 8.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 55000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 10 ////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == 10 && GetXP(oPC)< 66000)
   {
   
SetXP(oPC28000); // Set back to level 9.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 66000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 11 ////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == 11 && GetXP(oPC)< 78000)
   {
   
SetXP(oPC45000); // Set back to level 10.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 78000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 12 ////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == 12 && GetXP(oPC)< 91000)
   {
   
SetXP(oPC55000); // Set back to level 11.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 91000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 13 ////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == 13 && GetXP(oPC)< 105000)
   {
   
SetXP(oPC66000); // Set back to level 12.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 105000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 14 ////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == 14 && GetXP(oPC)< 120000)
   {
   
SetXP(oPC78000); // Set back to level 13.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 120000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 15 ////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == 15 && GetXP(oPC)< 136000)
   {
   
SetXP(oPC91000); // Set back to level 14.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 136000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 16 ////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == 16 && GetXP(oPC)< 153000)
   {
   
SetXP(oPC105000); // Set back to level 15.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 153000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 17 ////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == 17 && GetXP(oPC)< 171000)
   {
   
SetXP(oPC120000); // Set back to level 16.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 171000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 18 ////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == 18 && GetXP(oPC)< 190000)
   {
   
SetXP(oPC136000); // Set back to level 17.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 190000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 19 ////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == 19 && GetXP(oPC)< 210000)
   {
   
SetXP(oPC153000); // Set back to level 18.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 210000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 20 ////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == 20 && GetXP(oPC)< 231000)
   {
   
SetXP(oPC171000); // Set back to level 19.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 231000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////////////////////////////////////////////////////////////////////
      
}
 
////////////////////////////////////////////////////////////////////////////////
 ///////////////////// ECL = +3 /////////////////////////////////////////////////
 ////////////////////////////////////////////////////////////////////////////////
 
if(GetSubRace(oPC)== "Svirfneblin" || GetSubRace(oPC)== "Deep Gnome" ||
    
GetSubRace(oPC)== "Vampyre")
   {
 
////////////////// Level 2 /////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == && GetXP(oPC)< 10000)
   {
   
SetXP(oPC0); // Set Back to level 1.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 10000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 3 /////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == && GetXP(oPC)< 15000)
   {
   
SetXP(oPC1000); // Set back to level 2.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 15000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 4 /////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == && GetXP(oPC)< 21000)
   {
   
SetXP(oPC3000); // Set back to level 3.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 21000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 5 /////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == && GetXP(oPC)< 28000)
   {
   
SetXP(oPC6000); // Set back to level 4.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 28000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 6 /////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == && GetXP(oPC)< 36000)
   {
   
SetXP(oPC10000); // Set back to level 5.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 36000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 7 /////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == && GetXP(oPC)< 45000)
   {
   
SetXP(oPC15000); // Set back to level 6.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 45000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 8 /////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == && GetXP(oPC)< 55000)
   {
   
SetXP(oPC21000); // Set back to level 7.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 55000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 9 /////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == && GetXP(oPC)< 66000)
   {
   
SetXP(oPC28000); // Set back to level 8.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 66000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 10 ////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == 10 && GetXP(oPC)< 78000)
   {
   
SetXP(oPC28000); // Set back to level 9.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 78000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 11 ////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == 11 && GetXP(oPC)< 91000)
   {
   
SetXP(oPC45000); // Set back to level 10.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 91000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 12 ////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == 12 && GetXP(oPC)< 105000)
   {
   
SetXP(oPC55000); // Set back to level 11.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 105000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 13 ////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == 13 && GetXP(oPC)< 120000)
   {
   
SetXP(oPC66000); // Set back to level 12.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 120000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 14 ////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == 14 && GetXP(oPC)< 136000)
   {
   
SetXP(oPC78000); // Set back to level 13.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 136000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 15 ////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == 15 && GetXP(oPC)< 153000)
   {
   
SetXP(oPC91000); // Set back to level 14.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 153000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 16 ////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == 16 && GetXP(oPC)< 171000)
   {
   
SetXP(oPC105000); // Set back to level 15.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 171000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 17 ////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == 17 && GetXP(oPC)< 190000)
   {
   
SetXP(oPC120000); // Set back to level 16.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 190000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 18 ////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == 18 && GetXP(oPC)< 210000)
   {
   
SetXP(oPC136000); // Set back to level 17.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 210000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 19 ////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == 19 && GetXP(oPC)< 231000)
   {
   
SetXP(oPC153000); // Set back to level 18.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 231000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////// Level 20 ////////////////////////////////////////////////////
 
if(nLvL1 nLvL2 nLvL3 == 20 && GetXP(oPC)< 253000)
   {
   
SetXP(oPC171000); // Set back to level 19.
   
DelayCommand(3.0SetXP(oPCiPC1));
   
int iNeedXP 253000 iPC1;
   
string XP IntToString(iNeedXP);
   
FloatingTextStringOnCreature("You need " XP "xp to get to your next level, because of your ECL."oPC);
   return;
      }
 
////////////////////////////////////////////////////////////////////////////////
      
}
 } 
Encore merci a vous
Dans les cas que tu présentes, il n'y a rien de plus simple !!

- Tu ajoutes la ligne d'include tout en haut du script (avant le "void main()" )

- Tu ajoutes la ligne de fonction "Godxxx();" tout en bas du script, avant la dernière }

Merci a toi, tout fonctionne (le forum a des problèmes ac firefox? Voila plusieurs fois que j'essaye de répondre, mais c'est le première ou je peux enfin taper quelque chose... auparavant rien ne s'affichait ).
Je relance le post, car j'ai introduit le scipt de sous race dans mon module...mais quand on dort ou que le pj meurt il perd tout ses pouvoir alos on peut m'aider ?! merci!
Répondre

Connectés sur ce fil

 
1 connecté (0 membre et 1 invité) Afficher la liste détaillée des connectés