diff --git a/.gitignore b/.gitignore index 59a1995b..814cb8e8 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,4 @@ _haks/output/poa_dev.md5 Compiler - 35spells.bat *.md5 +_module/poa.mod diff --git a/_module/ncs/prc_pwondeath.ncs b/_module/ncs/prc_pwondeath.ncs index bef6b948..f466a8f9 100644 Binary files a/_module/ncs/prc_pwondeath.ncs and b/_module/ncs/prc_pwondeath.ncs differ diff --git a/_module/ncs/sf_xp.ncs b/_module/ncs/sf_xp.ncs index 9ac27185..0779baf2 100644 Binary files a/_module/ncs/sf_xp.ncs and b/_module/ncs/sf_xp.ncs differ diff --git a/_module/nss/prc_pwondeath.nss b/_module/nss/prc_pwondeath.nss index 540f1ca9..12447140 100644 --- a/_module/nss/prc_pwondeath.nss +++ b/_module/nss/prc_pwondeath.nss @@ -11,7 +11,65 @@ //:: Created On: 12/22/2002 //::////////////////////////////////////////////////// +void RndDropGear(object oNPC); + +void RndDropGear(object oNPC) +{ +//:: Declare major variables + object oArmor = GetItemInSlot(INVENTORY_SLOT_CHEST, oNPC); + object oWeapon = GetItemInSlot(INVENTORY_SLOT_RIGHTHAND, oNPC); + object oShield = GetItemInSlot(INVENTORY_SLOT_LEFTHAND, oNPC); + object oHelm = GetItemInSlot(INVENTORY_SLOT_HEAD, oNPC); + object oNecklace = GetItemInSlot(INVENTORY_SLOT_NECK, oNPC); + object oArms = GetItemInSlot(INVENTORY_SLOT_ARMS, oNPC); + object oArrows = GetItemInSlot(INVENTORY_SLOT_ARROWS, oNPC); + object oBelt = GetItemInSlot(INVENTORY_SLOT_BELT, oNPC); + object oBolts = GetItemInSlot(INVENTORY_SLOT_BOLTS, oNPC); + object oBoots = GetItemInSlot(INVENTORY_SLOT_BOOTS, oNPC); + object oBullets = GetItemInSlot(INVENTORY_SLOT_BULLETS, oNPC); + object oCloak = GetItemInSlot(INVENTORY_SLOT_CLOAK, oNPC); + object oLeftRing = GetItemInSlot(INVENTORY_SLOT_LEFTRING, oNPC); + object oRightRing = GetItemInSlot(INVENTORY_SLOT_RIGHTRING, oNPC); + +//:: Give a 3% chance to drop each type of equipment + int bDropArmor = d100() > 97; + int bDropWeapon = d100() > 97; + int bDropShield = d100() > 97; + int bDropHelm = d100() > 97; + int bDropNecklace = d100() > 97; + int bDropArms = d100() > 97; + int bDropArrows = d100() > 97; + int bDropBelt = d100() > 97; + int bDropBolts = d100() > 97; + int bDropBoots = d100() > 97; + int bDropBullets = d100() > 97; + int bDropCloak = d100() > 97; + int bDropLeftRing = d100() > 97; + int bDropRightRing = d100() > 97; + +//:: Set Droppable Flag as determined above. + SetDroppableFlag(oArmor, bDropArmor); + SetDroppableFlag(oWeapon, bDropWeapon); + SetDroppableFlag(oShield, bDropShield); + SetDroppableFlag(oHelm, bDropHelm); + SetDroppableFlag(oNecklace, bDropNecklace); + SetDroppableFlag(oArms, bDropArms); + SetDroppableFlag(oArrows, bDropArrows); + SetDroppableFlag(oBelt, bDropBelt); + SetDroppableFlag(oBolts, bDropBolts); + SetDroppableFlag(oBoots, bDropBoots); + SetDroppableFlag(oBullets, bDropBullets); + SetDroppableFlag(oCloak, bDropCloak); + SetDroppableFlag(oLeftRing, bDropLeftRing); + SetDroppableFlag(oRightRing, bDropRightRing); + +} + + void main() { ExecuteScript("sf_xp", OBJECT_SELF); + + RndDropGear(OBJECT_SELF); + } \ No newline at end of file diff --git a/_module/nss/sf_xp.nss b/_module/nss/sf_xp.nss index b6a4add3..d92cab61 100644 --- a/_module/nss/sf_xp.nss +++ b/_module/nss/sf_xp.nss @@ -26,7 +26,7 @@ const int REWARD_GP = TRUE; // Default is 1.0 (1.0 means equal to the amount of XP given, 2.0 would mean // double the amount of gold and 0.5 would mean half). // It basically multiplies the XP reward (GP_REWARD_MULTIPLIER x XP = GP Reward) -const float GP_REWARD_MULTIPLIER = 16.0; +const float GP_REWARD_MULTIPLIER = 0.5; // Bonus XP/GP reward for the dealing the killing blow to the creature // Default is 0.1 = 10% diff --git a/_module/poa.mod b/_module/poa.mod index 97ce7d85..fc19a34d 100644 Binary files a/_module/poa.mod and b/_module/poa.mod differ diff --git a/_release/Path of Ascension [35PRC].7z b/_release/Path of Ascension [35PRC].7z index ba3250ed..6d3cdfc6 100644 Binary files a/_release/Path of Ascension [35PRC].7z and b/_release/Path of Ascension [35PRC].7z differ