parent
d6f6617172
commit
6f1abd6630
4 changed files with 0 additions and 438 deletions
Binary file not shown.
Binary file not shown.
@ -1,67 +0,0 @@ |
||||
Scriptname _00E_LycanthropeInstantTransform extends activemagiceffect |
||||
|
||||
|
||||
Event OnKeyUp(int keyCode, float holdTime) |
||||
if keyCode == 48 |
||||
goingBackToNormal() |
||||
endif |
||||
endevent |
||||
|
||||
Event OnEffectStart(Actor akTarget, Actor akCaster) |
||||
RegisterForKey(48) |
||||
endevent |
||||
|
||||
function goingBackToNormal() |
||||
|
||||
; goingBackToHumanShader.Play(Game.GetPlayer()) |
||||
|
||||
|
||||
Game.DisablePlayerControls(true, true, true, false, true, true, true) |
||||
Game.GetPlayer().ModAV("DamageResist", -10) |
||||
|
||||
(playerTransformStorageQuest as playerTransformStorage).equipeItems() |
||||
|
||||
|
||||
; Game.GetPlayer().PlaceAtMe(PowerRacialWoodElfCommandAnimalExplosion01) |
||||
|
||||
RegisterForAnimationEvent(Game.GetPlayer(), "TransformToHuman") |
||||
Game.GetPlayer().PlayIdle(WerewolfTransformBack) |
||||
|
||||
Game.SetInCharGen(true, true, false) |
||||
UnRegisterForAnimationEvent(Game.GetPlayer(), "TransformToHuman") |
||||
|
||||
|
||||
Game.EnablePlayerControls(true, true, true, true, true, true, true) |
||||
|
||||
Race orig_race = (playerTransformStorageQuest as playerTransformStorage).originalRace |
||||
Game.GetPlayer().SetRace(orig_race) |
||||
|
||||
Game.GetPlayer().SetAttackActorOnSight(false) |
||||
Game.GetPlayer().RemoveFromFaction(PlayerWerewolfFaction) |
||||
|
||||
Game.SetPlayerReportCrime(true) |
||||
|
||||
;Game.SendWereWolfTransformation() |
||||
Game.SetBeastForm(False) |
||||
isTransformed.SetValue(0) |
||||
|
||||
UnregisterforActorAction(0) |
||||
UnregisterforCrosshairRef() |
||||
UnregisterForAllKeys() |
||||
UnregisterForUpdate() |
||||
|
||||
|
||||
|
||||
;goingBackToHumanShader.Stop(Game.GetPlayer()) |
||||
|
||||
;Debug.MessageBox(Game.GetPlayer().GetActorValue("Sneak")+" vs "+Game.GetPlayer().GetActorValue("Magicka")+" vs "+Game.GetPlayer().GetActorValue("MagickaRate")+" vs "+Game.GetPlayer().GetActorValue("Health")+" vs "+Game.GetPlayer().GetActorValue("Stamina")+" vs "+Game.GetPlayer().GetActorValue("UnarmedDamage")+" vs "+Game.GetPlayer().GetActorValue("DamageResist")) |
||||
|
||||
endfunction |
||||
|
||||
|
||||
EffectShader Property goingBackToHumanShader Auto |
||||
GlobalVariable Property isTransformed Auto |
||||
Quest Property playerTransformStorageQuest Auto |
||||
Idle Property WerewolfTransformBack Auto |
||||
Explosion Property PowerRacialWoodElfCommandAnimalExplosion01 Auto |
||||
Faction Property PlayerWerewolfFaction Auto |
@ -1,371 +0,0 @@ |
||||
Scriptname LycantropheTransformSC extends activemagiceffect |
||||
|
||||
bool isOnInfluanceOfPotion = false |
||||
|
||||
bool nateSeesUs |
||||
bool sneakAttack |
||||
|
||||
Actor targetRef |
||||
Event OnCrosshairRefChange(ObjectReference ref) |
||||
If ref as Actor ;Used to determine if it's none or not. |
||||
nateSeesUs = Game.GetPlayer().IsDetectedBy(ref as Actor) |
||||
if !nateSeesUs && isSneaking |
||||
Game.GetPlayer().SetAV("UnarmedDamage", 1000.1) |
||||
sneakAttack=true |
||||
elseif isSneaking |
||||
Game.GetPlayer().SetAV("UnarmedDamage", 10.1) |
||||
sneakAttack=false |
||||
endif |
||||
EndIf |
||||
EndEvent |
||||
|
||||
Event OnUpdate() |
||||
if Game.GetPlayer().isInCombat() |
||||
detectionImage.Remove() |
||||
else |
||||
detectionImage.PopTo(detectionImage, 0.25) |
||||
endif |
||||
if isSneaking |
||||
RegisterForSingleUpdate(1) |
||||
endif |
||||
endEvent |
||||
|
||||
bool isSneaking |
||||
Event OnKeyUp(int keyCode, float holdTime) |
||||
if keyCode == sneakWerewolfKey |
||||
if Game.GetPlayer().GetActorValue("Sneak")!=200 |
||||
detectionImage.PopTo(detectionImage, 0.25) |
||||
RegisterForSingleUpdate(1) |
||||
|
||||
isSneaking=true |
||||
;Game.GetPlayer().ForceAV ("SpeedMult", 50 ) |
||||
Game.GetPlayer().ForceAV("CarryWeight", 10000) |
||||
|
||||
Game.GetPlayer().ForceActorValue("SneakMod", 200) |
||||
Game.GetPlayer().ForceActorValue("Sneak", 200) |
||||
;Game.GetPlayer().AddPerk(InvisibilityMe ) |
||||
Game.GetPlayer().StartSneaking() |
||||
_00E_EspionageFXS.Play(Game.GetPlayer()) |
||||
|
||||
int instanceID = sneakSound.play(Game.GetPlayer()) ; play mySFX sound from my self |
||||
Sound.SetInstanceVolume(instanceID, 1) |
||||
|
||||
Game.GetPlayer().AddPerk(_00E_A1_InvisibilityPerk) |
||||
Game.GetPlayer().AddSpell(DetectLifeWerewolfVision, false) |
||||
Game.GetPlayer().ForceActorValue("Magicka", 20000) |
||||
|
||||
DetectLifeWerewolfVision2.SetBaseCost(0) |
||||
DetectLifeWerewolfVision.cast(Game.GetPlayer()) |
||||
|
||||
else |
||||
detectionImage.Remove() |
||||
UnregisterForUpdate() |
||||
|
||||
isSneaking=false |
||||
Game.GetPlayer().SetAV("UnarmedDamage", 10.1) |
||||
Game.GetPlayer().ForceAV ("SpeedMult", 100 ) |
||||
Game.GetPlayer().ForceAV("CarryWeight", 10001) |
||||
sneakAttack=false |
||||
|
||||
_00E_EspionageFXS.Stop(Game.GetPlayer()) |
||||
Game.GetPlayer().RemovePerk(_00E_A1_InvisibilityPerk) |
||||
|
||||
Game.GetPlayer().RemoveSpell(DetectLifeWerewolfVision) |
||||
Game.GetPlayer().DispelSpell(DetectLifeWerewolfVision) |
||||
Game.GetPlayer().ForceActorValue("Magicka", 0) |
||||
Game.GetPlayer().ForceActorValue("MagickaRate", 0) |
||||
endif |
||||
endif |
||||
if keyCode == 38 |
||||
;Debug.Messagebox("Strength : 100\nStamina : 100\nResist : 100") |
||||
String hasEffectPanacea1 = "None" |
||||
String hasEffectPanacea2 = "None" |
||||
|
||||
if (Game.GetPlayer().hasMagicEffect(panacea1Effect)) |
||||
panacea1EffectOn.Show() |
||||
endif |
||||
if (Game.GetPlayer().hasMagicEffect(panacea2Effect)) |
||||
panacea2EffectOn.Show() |
||||
endif |
||||
if (Game.GetPlayer().hasMagicEffect(panacea3Effect)) |
||||
panacea3EffectOn.Show() |
||||
endif |
||||
if (Game.GetPlayer().hasMagicEffect(panacea4Effect)) |
||||
panacea4EffectOn.Show() |
||||
endif |
||||
|
||||
;_00E_statisticMessage.Show(Game.GetPlayer().GetActorValue("Health"), Game.GetPlayer().GetActorValue("Stamina"), Game.GetPlayer().GetActorValue("UnarmedDamage"), Game.GetPlayer().GetActorValue("DamageResist")) |
||||
;else |
||||
; Debug.Messagebox(keyCode ) |
||||
|
||||
endif |
||||
|
||||
EndEvent |
||||
|
||||
Event OnActorAction(int actionType, Actor akActor, Form source, int slot) ;only for keep up activate life detection |
||||
if actionType==0 && akActor==Game.GetPlayer() && sneakAttack |
||||
Utility.Wait(0.1) |
||||
Game.GetPlayer().SetAV("UnarmedDamage", 10.1) |
||||
sneakAttack=false |
||||
DetectLifeWerewolfVision.cast(Game.GetPlayer()) |
||||
endif |
||||
endEvent |
||||
|
||||
Event OnHit(ObjectReference akAggressor, Form akSource, Projectile akProjectile, bool abPowerAttack, bool abSneakAttack, bool abBashAttack, bool abHitBlocked) |
||||
If trasformedAlready==0 && akAggressor |
||||
float ZAngle = akAggressor.GetAngleZ()-Game.GetPlayer().GetAngleZ() ;calculating difference between enemy and player camera angle |
||||
if ZAngle < 0 |
||||
ZAngle = ZAngle * -1 |
||||
endif |
||||
if ZAngle < 50 |
||||
int rawDamage = ((akSource as Weapon).GetBaseDamage() * 0.5) as Int |
||||
Game.GetPlayer().DamageActorValue("Health", rawDamage * 1000 ) ;giving additional dmg for player if difference of angle is < 50 |
||||
Endif |
||||
Endif |
||||
EndEvent |
||||
|
||||
int num = 1 |
||||
Int trasformedAlready |
||||
Int sneakWerewolfKey = 46 |
||||
Int waitForTransformS=4 |
||||
|
||||
|
||||
|
||||
int waitTimeToEndTransform=2; |
||||
Event OnEffectStart(Actor akTarget, Actor akCaster) |
||||
;Debug.MessageBox(Game.GetPlayer().GetActorValue("Sneak")+" vs "+Game.GetPlayer().GetActorValue("Magicka")+" vs "+Game.GetPlayer().GetActorValue("MagickaRate")+" vs "+Game.GetPlayer().GetActorValue("Health")+" vs "+Game.GetPlayer().GetActorValue("Stamina")+" vs "+Game.GetPlayer().GetActorValue("UnarmedDamage")+" vs "+Game.GetPlayer().GetActorValue("DamageResist")) |
||||
|
||||
|
||||
|
||||
|
||||
Game.ForceThirdPerson() |
||||
|
||||
|
||||
|
||||
isOnInfluanceOfPotion =Game.GetPlayer().HasMagicEffect(bloodPotionInfluance) |
||||
|
||||
|
||||
|
||||
|
||||
ActorBase pActorBase = Game.GetPlayer().GetActorBase() |
||||
trasformedAlready=isTransformed.GetValue() as Int |
||||
;Game.GetPlayer().AddItem(SuperSecretPotionReference, 200) |
||||
Int doesHavePotion = Game.GetPlayer().GetItemCount(SuperSecretPotionReference) |
||||
|
||||
if isOnInfluanceOfPotion || doesHavePotion > 0 |
||||
|
||||
if !isOnInfluanceOfPotion && trasformedAlready==0 |
||||
Game.GetPlayer().RemoveItem(SuperSecretPotionReference, 1) |
||||
if !Game.GetPlayer().IsInCombat() |
||||
Form EquippedItemRight = Game.GetPlayer().GetEquippedObject(1) |
||||
Game.GetPlayer().UnequipItem(EquippedItemRight, false, true) |
||||
|
||||
Game.DisablePlayerControls(true, true, true, false, true, true, true) |
||||
Game.GetPlayer().PlayIdle(DrinkPotionForPlayerIdle ) |
||||
|
||||
Utility.Wait(2) |
||||
Game.GetPlayer().EquipItemEx(EquippedItemRight, 1) |
||||
endif |
||||
endif |
||||
|
||||
if trasformedAlready==0 |
||||
Debug.Notification("Transforming to werewolf") |
||||
isTransformed.SetValue(1) |
||||
|
||||
AbWerewolf.Cast(akCaster, akCaster) |
||||
WerewolfChange.Cast(akCaster, akCaster) |
||||
|
||||
;akCaster.GetActorBase().SetEssential(False) |
||||
|
||||
|
||||
|
||||
if( Game.GetPlayer().GetAV("InventoryWeight")<=akTarget.GetAV("CarryWeight")) |
||||
akTarget.ForceAV("CarryWeight", 1000) |
||||
endif |
||||
|
||||
(playerTransformStorageQuest as playerTransformStorage).checkForEquipedItems() |
||||
|
||||
|
||||
|
||||
Game.DisablePlayerControls(true, true, true, false, true, true, true) |
||||
|
||||
|
||||
int BaseWeaponDmg =Game.GetPlayer().GetEquippedWeapon().GetBaseDamage() |
||||
int AR = (Game.GetPlayer().GetWornForm(0x00000004) as Armor).GetArmorRating() |
||||
|
||||
float armorNow=10 |
||||
|
||||
|
||||
|
||||
Utility.Wait(waitTimeToEndTransform) |
||||
|
||||
|
||||
|
||||
akCaster.SetRace(WerewolfBeastRace) |
||||
akCaster.UnequipAll() |
||||
akCaster.KnockAreaEffect(1, 1024) |
||||
|
||||
akTarget.ModAV("DamageResist", 10) |
||||
;akTarget.SetAV("DamageResist", 10) |
||||
akTarget.SetAV("UnarmedDamage", 10.1) |
||||
|
||||
bTransformed = True |
||||
|
||||
akCaster.AddShout(_00E_A1_Lycantrophe_Transform) |
||||
akCaster.EquipShout(_00E_A1_Lycantrophe_Transform) |
||||
|
||||
Game.EnablePlayerControls(abMovement = true, abFighting = true, abCamSwitch = false, abLooking = true, abSneaking = true, abMenu = true, abActivate = true, abJournalTabs = true) |
||||
|
||||
RegisterForCrosshairRef() |
||||
RegisterForActorAction(0) |
||||
sneakWerewolfKey = Input.GetMappedKey("Toggle Always Run") |
||||
RegisterForKey(sneakWerewolfKey) |
||||
RegisterForKey(38) |
||||
|
||||
|
||||
|
||||
akCaster.PlaceAtMe(PowerRacialWoodElfCommandAnimalExplosion01) |
||||
|
||||
else |
||||
|
||||
goingBackToHumanShader.Play(Game.GetPlayer()) |
||||
|
||||
Game.DisablePlayerControls(true, true, true, false, true, true, true) |
||||
|
||||
|
||||
akTarget.ModAV("DamageResist", -10) |
||||
|
||||
(playerTransformStorageQuest as playerTransformStorage).equipeItems() |
||||
|
||||
|
||||
akCaster.PlaceAtMe(PowerRacialWoodElfCommandAnimalExplosion01) |
||||
|
||||
RegisterForAnimationEvent(Game.GetPlayer(), "TransformToHuman") |
||||
Game.GetPlayer().PlayIdle(WerewolfTransformBack) |
||||
|
||||
Game.SetInCharGen(true, true, false) |
||||
UnRegisterForAnimationEvent(Game.GetPlayer(), "TransformToHuman") |
||||
|
||||
|
||||
Game.EnablePlayerControls(true, true, true, true, true, true, true) |
||||
|
||||
Race orig_race = (playerTransformStorageQuest as playerTransformStorage).originalRace |
||||
Game.GetPlayer().SetRace(orig_race) |
||||
|
||||
Game.GetPlayer().SetAttackActorOnSight(false) |
||||
Game.GetPlayer().RemoveFromFaction(PlayerWerewolfFaction) |
||||
Game.SetPlayerReportCrime(true) |
||||
|
||||
; alert anyone nearby that they should now know the player is a werewolf |
||||
; Game.SendWereWolfTransformation() |
||||
Game.SetBeastForm(False) |
||||
isTransformed.SetValue(0) |
||||
|
||||
UnregisterforActorAction(0) |
||||
UnregisterforCrosshairRef() |
||||
UnregisterForAllKeys() |
||||
UnregisterForUpdate() |
||||
|
||||
isSneaking=false |
||||
|
||||
goingBackToHumanShader.Stop(Game.GetPlayer()) |
||||
endif |
||||
|
||||
else |
||||
Debug.Notification("You don't have Lycant potion") |
||||
endif |
||||
;Debug.MessageBox(Game.GetPlayer().GetActorValue("Sneak")+" vs "+Game.GetPlayer().GetActorValue("Magicka")+" vs "+Game.GetPlayer().GetActorValue("MagickaRate")+" vs "+Game.GetPlayer().GetActorValue("Health")+" vs "+Game.GetPlayer().GetActorValue("Stamina")+" vs "+Game.GetPlayer().GetActorValue("UnarmedDamage")+" vs "+Game.GetPlayer().GetActorValue("DamageResist")) |
||||
|
||||
EndEvent |
||||
|
||||
|
||||
|
||||
|
||||
SPELL Property AbWerewolf Auto |
||||
|
||||
SPELL Property WerewolfChange Auto |
||||
|
||||
Explosion Property PowerRacialWoodElfCommandAnimalExplosion01 Auto |
||||
|
||||
Race Property WerewolfBeastRace Auto |
||||
|
||||
Faction Property PlayerWerewolfFaction Auto |
||||
|
||||
bool bTransformed |
||||
|
||||
Race baseRasePlayer |
||||
|
||||
Int tTran=1 |
||||
|
||||
Idle Property WerewolfTransformBack Auto |
||||
|
||||
Shout Property _00E_A1_Lycantrophe_Transform Auto |
||||
|
||||
GlobalVariable Property isTransformed Auto |
||||
|
||||
Quest Property playerTransformStorageQuest Auto |
||||
|
||||
Potion Property SuperSecretPotionReference Auto |
||||
|
||||
Idle Property Idle_1stPersonWoozyGetUpFromBed Auto |
||||
|
||||
;Perk Property InvisibilityMe Auto |
||||
|
||||
;Idle Property lycantTransformAnim Auto |
||||
|
||||
EffectShader Property _00E_EspionageFXS Auto |
||||
|
||||
Spell Property PerkShadowWarriorInvisibility Auto |
||||
|
||||
SPELL Property _00E_A2_GhostwalkCloakSP Auto |
||||
|
||||
PERK Property _00E_A1_InvisibilityPerk Auto |
||||
|
||||
SPELL Property DetectLifeWerewolfVision Auto |
||||
|
||||
MagicEffect Property DetectLifeWerewolfVision2 Auto |
||||
|
||||
SPELL Property DetectLife Auto |
||||
|
||||
Idle Property DrinkPotionForPlayerIdle Auto |
||||
Sound Property sneakSound Auto |
||||
|
||||
;SPELL Property knockBack Auto |
||||
|
||||
;SPELL Property werewolfAbility Auto |
||||
|
||||
;MagicEffect Property knockBackEffect Auto |
||||
|
||||
;Perk Property perkKnock Auto |
||||
|
||||
EffectShader Property goingBackToHumanShader Auto |
||||
|
||||
;Idle Property werewolfChangeAnimation Auto |
||||
|
||||
MagicEffect Property bloodPotionInfluance Auto |
||||
|
||||
|
||||
|
||||
Message Property _00E_statisticMessage Auto |
||||
|
||||
ImageSpaceModifier Property detectionImage Auto |
||||
|
||||
MagicEffect Property panacea1Effect Auto |
||||
|
||||
MagicEffect Property panacea2Effect Auto |
||||
|
||||
MagicEffect Property panacea3Effect Auto |
||||
|
||||
MagicEffect Property panacea4Effect Auto |
||||
|
||||
Message Property panacea1EffectOn Auto |
||||
|
||||
Message Property panacea2EffectOn Auto |
||||
|
||||
Message Property panacea3EffectOn Auto |
||||
|
||||
Message Property panacea4EffectOn Auto |
||||
|
||||
Message Property panacea5EffectOn Auto |
||||
|
||||
MagicEffect Property panacea5Effect Auto |
Loading…
Reference in new issue