Initial upload.
Adding base PRC 4.19a files to repository.
This commit is contained in:
92
trunk/scripts/prc_maester_id.nss
Normal file
92
trunk/scripts/prc_maester_id.nss
Normal file
@@ -0,0 +1,92 @@
|
||||
//::///////////////////////////////////////////////
|
||||
//:: Identification
|
||||
//::
|
||||
/*
|
||||
Roll a spellcraft check to attempt to ID an item.
|
||||
*/
|
||||
//:://////////////////////////////////////////////
|
||||
//:: Created By: Stratovarius
|
||||
//:: Created On: July 15, 2005
|
||||
//:://////////////////////////////////////////////
|
||||
|
||||
#include "prc_alterations"
|
||||
#include "prc_inc_spells"
|
||||
|
||||
int LoreItem(object item)
|
||||
{
|
||||
int id=0;
|
||||
if (!GetIdentified(item))
|
||||
{
|
||||
id=1;
|
||||
SetIdentified(item,TRUE);
|
||||
}
|
||||
int gp = GetGoldPieceValue(item);
|
||||
int nLore;
|
||||
|
||||
if (gp<10) nLore= 0;
|
||||
if (gp==10) nLore= 1;
|
||||
if (gp>11) nLore= 2;
|
||||
if (gp>50) nLore= 3;
|
||||
if (gp>101) nLore= 4;
|
||||
if (gp>151) nLore= 5;
|
||||
if (gp>201) nLore= 6;
|
||||
if (gp>301) nLore= 7;
|
||||
if (gp>401) nLore= 8;
|
||||
if (gp>501) nLore= 9;
|
||||
if (gp>1001) nLore= 10;
|
||||
if (gp>2501) nLore= 11;
|
||||
if (gp>3751) nLore= 12;
|
||||
if (gp>4801) nLore= 13;
|
||||
if (gp>6501) nLore= 14;
|
||||
if (gp>9501) nLore= 15;
|
||||
if (gp>13001) nLore= 16;
|
||||
if (gp>17001) nLore= 17;
|
||||
if (gp>20001) nLore= 18;
|
||||
if (gp>30001) nLore= 19;
|
||||
if (gp>40001) nLore= 20;
|
||||
if (gp>50001) nLore= 21;
|
||||
if (gp>60001) nLore= 22;
|
||||
if (gp>80001) nLore= 23;
|
||||
if (gp>100001) nLore= 24;
|
||||
if (gp>150001) nLore= 25;
|
||||
if (gp>200001) nLore= 26;
|
||||
if (gp>250001) nLore= 27;
|
||||
if (gp>300001) nLore= 28;
|
||||
if (gp>350001) nLore= 29;
|
||||
if (gp>400001) nLore= 30;
|
||||
if (gp>500001)
|
||||
{
|
||||
gp= gp - 500000;
|
||||
gp = gp / 100000;
|
||||
nLore = gp + 31;
|
||||
}
|
||||
if (id) SetIdentified(item,FALSE);
|
||||
return nLore;
|
||||
}
|
||||
|
||||
void main()
|
||||
{
|
||||
object oItem = PRCGetSpellTargetObject();
|
||||
|
||||
if (!GetLocalInt(oItem, "MaesterID"))
|
||||
{
|
||||
effect eVis;
|
||||
|
||||
int nDC = LoreItem(oItem);
|
||||
int nSkill = GetIsSkillSuccessful(OBJECT_SELF, SKILL_SPELLCRAFT, nDC);
|
||||
|
||||
if (nSkill)
|
||||
{
|
||||
eVis = EffectVisualEffect(VFX_IMP_MAGICAL_VISION);
|
||||
SetIdentified(oItem, TRUE);
|
||||
}
|
||||
else
|
||||
{
|
||||
eVis = EffectVisualEffect(VFX_IMP_BLIND_DEAF_M);
|
||||
}
|
||||
|
||||
SetLocalInt(oItem, "MaesterID", TRUE);
|
||||
SPApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, OBJECT_SELF);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user