DOWNLOAD MODS
Are you looking for something shiny for your load order? We have many exclusive mods and resources you won't find anywhere else. Start your search now...
-
Posts
2 -
Joined
-
Last visited
Content Type
Profiles
Forums
Downloads
Tutorials
Gallery
Store
Events
Posts posted by fortunequacker
-
-
In my experience, forceav perma sets the av, while modav is temporary and shows up in the ui as red when the modded av is less than the base av and green when more than base. So, I am in agreement with WillieSea. IMHO you should try a function that uses modav to change your values. Pass the function a param that lets it know you are either equipping or unequipping and then just call the function from your onEquip and onUnEquip event.
I'm at work, so can't compile/test, but maybe something like this.
Scriptname WerewolfAmulet002 extends ObjectReference Race Property WerewolfBeastRace Auto GlobalVariable Property WasWerewolf Auto Armor Property Amulet Auto float BaseHealth float BaseDResist float BaseUnarmed float BaseMResist float BaseHealRate float Property HealthMod Auto ; 100 float Property DResistMod Auto ; 200 float Property UnarmedMod Auto ; 25 float Property MResistMod Auto ; 35 float Porperty HRateMod Auto ; ?? int isWerewolfBeastRace int isActorPlayer Event OnEquipped(Actor akActor) modAV(akActor) endEvent Event OnUnequipped(Actor akActor) modAV(akActor) EndEvent Function modAV(Actor akActor) {Augments Base Actor Values if Player is in WerewolfBeastRace Form.} if isActorPlayer(akActor) setBaseAV(akActor) akActor.ModAV("Health", BaseHealth + (isWerewolfBeastRace(akActor) * HealthMod)) akActor.ModAV("DamageResist", BaseDResist + (isWerewolfBeastRace(akActor) * DResistMod)) akActor.ModAv("UnarmedDamage", BaseUnarmed + (isWerewolfBeastRace(akActor) * UnarmedMod)) akActor.ModAV("MagicResist", BaseMResist + (isWerewolfBeastRace(akActor) * MResistMod)) akActor.ModAV("HealRate", BaseHealRate + (isWerewolfBeastRace(akActor) * HRateMod)) endif EndFunction Function isWerewolfBeastRace(Actor akActor) isWerewolfBeastRace = -1 If akActor.GetRace()==WerewolfBeastRace isWerewolfBeastRace = 1 End If EndFunction Function isActorPlayer(Actor akActor) isActorPlayer = 0 if akActor == Game.getPlayer() isActorPlayer = 1 endif End Function Function setBaseAV(Actor akActor) BaseHealth = akActor.GetBaseActorValue("Health") as Float BaseDResist = akActor.GetBaseActorValue("DamageResist") as Float BaseUnarmed = akActor.GetBaseActorValue("UnarmedDamage") as Float BaseMResist = akActor.GetBaseActorValue("MagicResist") as Float EndFunction
Scripting Help - Need to Disable or Delete or Remove Item Running the Script
in Papyrus 101
Posted
The line in the code that is larger font seems to be the offending piece. The code compiles and runs and does everything except this line. All I need is for this object to be removed from the player's inventory. I have already determined (Thanks WilleSea) that mySelf/Self referes to the script in this case and not the item to which the code is attached.
Any ideas how to accomplish this goal.
If I can get this to work, it will eliminate the problem where you buy too much from the vendor, causing their max gold limit to exceed.
If you have ever seen this situation, you end up selling all your stuff and not getting any gold for it. It's not fun.
What this code does is turn any gold over a set amount in the vendors inventory, into Skyrim "Septimus Notes" (Paper Money). You can then buy these from the vendor and resupply them with gold.
When you drop the "Septimus Note" and then pick it back up, it converts it back to Gold Septims.
It's a somewhat immersive way to eliminate one of the problems Bethesda made for us by putting limits on the amount of gold a vendor can have. More likely, they just used the wrong data type for the variable that tracks this value. Not sure.
Anyway, any suggestions anyone could offer will help me get this mod out sooner.