Battledale_PRC8/_module/nss/sc_archery_targ.nss

35 lines
1.3 KiB
Plaintext
Raw Permalink Normal View History

void main()
{
object oDamager = GetLastDamager();
object oWeapon = GetLastWeaponUsed(oDamager);
int iCurrentHP = GetCurrentHitPoints();
int iMaxHP = GetMaxHitPoints();
effect eHeal = EffectHeal(iMaxHP - iCurrentHP);
if (GetWeaponRanged(oWeapon))
{
int nRandom = d100();
if (nRandom < 10)
FloatingTextStringOnCreature ("Bullseye! 50 points!", oDamager, FALSE);
if (nRandom > 10 && nRandom < 30)
FloatingTextStringOnCreature ("You hit the inner ring! 25 points!", oDamager, FALSE);
if (nRandom > 30 && nRandom < 60)
FloatingTextStringOnCreature ("You hit the middle ring! 10 points!", oDamager, FALSE);
if (nRandom > 60 && nRandom < 80)
FloatingTextStringOnCreature ("You hit the outer ring! 5 points!", oDamager, FALSE);
if (nRandom > 80)
FloatingTextStringOnCreature ("You missed!", oDamager, FALSE);
if (GetXP(oDamager) < 100)
GiveXPToCreature(oDamager, 1);
else
SendMessageToPC(oDamager, "The training dummy wont increase your skills any further.");
}
else
SendMessageToPC(oDamager, "Try hitting the archery target with a ranged weapon!");
ApplyEffectToObject(DURATION_TYPE_INSTANT, eHeal, OBJECT_SELF);
}