Aller au contenu

Photo

stop multi-classing


  • Veuillez vous connecter pour répondre
5 réponses à ce sujet

#1
Surek

Surek
  • Members
  • 94 messages

Is there any way stop someone from multi-classing? Sorry if this has been asked before. I did not see much about this here on the forum. or maybe I missed it.



#2
Shadooow

Shadooow
  • Members
  • 4 471 messages

You need to make a cls_pres_ 2da files for each base class and then use a variable to block the class from being available.

 

Certain unofficial patch already offer this feature, check here.



#3
Surek

Surek
  • Members
  • 94 messages

Is there any way to do this through scripting?  I really don't want to use the patch and I'm not really sure what I'm doing when it comes to 2das



#4
Shadooow

Shadooow
  • Members
  • 4 471 messages

this needs both 2da and scripting, no other way around than delevel player which is lame - but suit yourself



#5
WhiZard

WhiZard
  • Members
  • 1 204 messages

The prestige classes only can be blocked by scripting alone, though this involves setting variables whenever the PC enters the module.  For example SetLocalInt(X1_AllowArcher, TRUE); blocks the Arcane Archer class.  This is of course backwards of the intended procedure where the 2das are assumed to be changed to requiring TRUE to allow, so that by default the class is not allowed.



#6
GhostOfGod

GhostOfGod
  • Members
  • 863 messages

Scripting only method. You could just put something like this in your mods "OnPlayerLevelUp" event:

 

 

void main()
{
    object oPC = GetPCLevellingUp();
    int iXP = GetXP(oPC);

    if (GetLevelByPosition(2, oPC) || GetLevelByPosition(3, oPC))
    {
        SendMessageToPC(oPC, "Multi-classing is not allowed. Please re-level with your original class.");
        int iLevel = GetHitDice(oPC);
        int iDelevelXP = (iLevel-1) * (iLevel - 2) * 500;
        SetXP(oPC, iDelevelXP);
        DelayCommand(1.0, SetXP(oPC, iXP));
    }
}


  • Squatting Monk aime ceci