48 lines
1.5 KiB
Plaintext
48 lines
1.5 KiB
Plaintext
|
//::///////////////////////////////////////////////
|
||
|
//:: Soulknife: Knife To The Soul - dice used
|
||
|
//:: psi_sk_ktts_die
|
||
|
//::///////////////////////////////////////////////
|
||
|
/*
|
||
|
Sets the number of dice from next Psychic Strike
|
||
|
enabled hit will be converted to ability damage.
|
||
|
*/
|
||
|
//:://////////////////////////////////////////////
|
||
|
//:: Created By: Ornedan
|
||
|
//:: Created On: 04.04.2005
|
||
|
//:://////////////////////////////////////////////
|
||
|
|
||
|
#include "psi_inc_soulkn"
|
||
|
#include "prc_alterations"
|
||
|
|
||
|
|
||
|
//////////////////////////////////////////////////
|
||
|
/* Local constants */
|
||
|
//////////////////////////////////////////////////
|
||
|
|
||
|
const int FIRST_RADIAL_START = 2416;
|
||
|
const int SECOND_RADIAL_START = 2422;
|
||
|
const int STRREF_START = 16824478;
|
||
|
|
||
|
void main()
|
||
|
{
|
||
|
object oPC = OBJECT_SELF;
|
||
|
int nID = GetSpellId();
|
||
|
int nDice;
|
||
|
//SendMessageToPC(oPC, "psi_sk_ktts_die running");
|
||
|
|
||
|
if(nID > SECOND_RADIAL_START)
|
||
|
nDice = 5 + nID - SECOND_RADIAL_START;
|
||
|
else
|
||
|
nDice = nID - FIRST_RADIAL_START;
|
||
|
|
||
|
if(DEBUG) if(nDice < 1 || nDice > 10)
|
||
|
DoDebug("Invalid SpellId in psi_sk_ktts_die", oPC);
|
||
|
|
||
|
|
||
|
SetLocalInt(oPC, KTTS,
|
||
|
GetLocalInt(oPC, KTTS) & KTTS_TYPE_MASK // Use the mask to remove the old die selection
|
||
|
| (nDice << 2) // Shift the dice number right by 2 and OR it in
|
||
|
);
|
||
|
|
||
|
SendMessageToPC(oPC, GetStringByStrRef(16824515) + " " + GetStringByStrRef(STRREF_START + nDice - 1));
|
||
|
}
|