PRC8/nwn/nwnprc/trunk/scripts/prc_golmeraspawn.nss
Jaysyn904 6ec137a24e Updated AMS marker feats
Updated AMS marker feats.  Removed arcane & divine marker feats.  Updated Dread Necromancer for epic progression. Updated weapon baseitem models.  Updated new weapons for crafting & npc equip.
 Updated prefix.  Updated release archive.
2024-02-11 14:01:05 -05:00

99 lines
3.4 KiB
Plaintext

#include "prc_inc_spells"
void main()
{
object oPC = GetPCSpeaker();
int nCost;
int nGolemType = GetLocalInt(oPC, "GolemType");
int nGolemHD = GetLocalInt(oPC, "GolemHD");
string sResRef = "prc_con_";
switch(nGolemType)
{
case 0://flesh
sResRef += "flesh_";
switch(nGolemHD)
{
case 10: nCost = 20000; break;
case 15: nCost = 45000; break;
case 20: nCost = 120000; break;
case 25: nCost = 145000; break;
default: nCost = -1; break;
}
break;
case 1://clay
sResRef += "clay_";
switch(nGolemHD)
{
case 12: nCost = 40000; break;
case 17: nCost = 65000; break;
case 22: nCost = 140000; break;
case 27: nCost = 165000; break;
case 32: nCost = 190000; break;
default: nCost = -1; break;
}
break;
case 2://stone
sResRef += "stone_";
switch(nGolemHD)
{
case 15: nCost = 90000; break;
case 20: nCost = 115000; break;
case 25: nCost = 190000; break;
case 30: nCost = 215000; break;
case 35: nCost = 240000; break;
case 40: nCost = 265000; break;
default: nCost = -1; break;
}
break;
case 3://iron
sResRef += "iron_";
switch(nGolemHD)
{
case 19: nCost = 150000; break;
case 24: nCost = 175000; break;
case 29: nCost = 250000; break;
case 34: nCost = 275000; break;
case 39: nCost = 300000; break;
case 44: nCost = 325000; break;
case 49: nCost = 350000; break;
case 54: nCost = 375000; break;
default: nCost = -1; break;
}
break;
case 4://mithril
sResRef += "mith_";
switch(nGolemHD)
{
case 37: nCost = 250000; break;
case 42: nCost = 275000; break;
case 47: nCost = 300000; break;
case 52: nCost = 325000; break;
case 57: nCost = 400000; break;
case 62: nCost = 425000; break;
case 67: nCost = 450000; break;
case 72: nCost = 475000; break;
default: nCost = -1; break;
}
break;
case 5://adamantium
sResRef += "adam_";
switch(nGolemHD)
{
case 55: nCost = 500000; break;
case 60: nCost = 525000; break;
case 65: nCost = 550000; break;
case 70: nCost = 575000; break;
case 75: nCost = 600000; break;
case 80: nCost = 625000; break;
default: nCost = -1; break;
}
break;
}
TakeGoldFromCreature(nCost, oPC, TRUE);
sResRef += IntToString(nGolemHD);
MultisummonPreSummon(oPC, TRUE);
effect eSummon = SupernaturalEffect(EffectSummonCreature(sResRef));
ApplyEffectToObject(DURATION_TYPE_PERMANENT, eSummon, oPC);
persistant_array_create(oPC, "GolemList");
persistant_array_set_string(oPC, "GolemList", persistant_array_get_size(oPC, "GolemList"), sResRef);
}