Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- scn bonfireDeathlyEvent
- int iDead
- int iImageStage
- float fDeathTimer
- int iYesManVictorSurvival
- int iStandINI
- int iCapsLost
- int iRegenAllowed
- int iDrugCount1
- int iDrugCount2
- int iDrugCount3
- begin GameMode
- let iDead := 0
- ;;; v BELOW IS THE CODE FOR THE BASIC DEATH FUNCTION
- if bonfireDeathEventRun == 1
- let iDead := 1
- player.PushActorAwayAlt 5
- DisablePlayerControls 1 1 1 1 0 1 1
- FadeSFX 5
- imod FadeToBlack5sISFX
- let iImageStage := 1
- let fDeathTimer := 0
- if iImageStage == 1
- set fDeathTimer to fDeathTimer + GetSecondsPassed
- if fDeathTimer >= 5
- imod BlackSexISFX
- FreezeTime 1
- print "Stage 1 success."
- if iYesManVictorSurvival == 1 ;Yes Man
- MessageBoxEx "In the midst of your unconscious spiel, you can faintly remember a rather chipper (and agreeable) voice carrying you back through the desert..."
- elseif iYesManVictorSurvival == 0 ; Victor
- MessageBoxEx "A faint 'Woah there, pardner!' drifts through your shifting memories as a metal hand is felt carrying you to safety..."
- endif
- if (GetINIFloat "Drawbacks:fCNDVibe" "deathlyalt.ini" == 1) ; CONDITION VIBE CHECK
- player.SetEquippedCurrentHealth 0 5
- player.SetEquippedCurrentHealth 0 2
- player.SetEquippedCurrentHealth 0 10
- else
- MessageEx "Thankfully, your equipment makes it back with you safely."
- endif
- if (GetINIFloat "Drawbacks:fSpilledCaps" "deathlyalt.ini" == 1) ; YOU SPILLED YOUR CAPS, ASSHOLE
- let iCapsLost := (player.GetLevel * (GetINIFloat "Drawbacks:fSpilledAmount" "deathlyalt.ini") )
- player.RemoveItem Caps001 iCapsLost
- else
- MessageEx "After checking your pockets carefully, it looks like your caps are all here."
- endif
- if (GetINIFloat "Drawbacks:fOwBones" "deathlyalt.ini" == 1) && (player.GetAV CarryWeight < player.GetAV InventoryWeight) ; OW, OW, MY POOR ACHING BONES
- let iRegenAllowed := 0
- elseif (GetINIFloat "Drawbacks:fOwBones" "deathlyalt.ini" == 1)
- MessageEx "You're not over-encumbered, and suffer no ailments."
- elseif (player.GetAV CarryWeight < player.GetAV InventoryWeight)
- MessageEx "Despite your over-encumbrance, you manage to make it to safety with energy to spare."
- else
- endif
- if (GetINIFloat "Drawbacks:fAtomBaby" "deathlyalt.ini" == 1) ; ATOM BOMB BABY
- if (player.GetAV RadiationRads >= 200) && (player.GetAV RadiationRads <= 399)
- let iDrugCount1 := ( (player.GetItemCount Morphine) / 3)
- let iDrugCount2 := ( (player.GetItemCount Jet) / 3)
- let iDrugCount3 := ( (player.GetItemCount Buffout) / 3)
- player.RemoveItem Morphine iDrugCount1 1
- player.RemoveItem Jet iDrugCount2 1
- player.RemoveItem Buffout iDrugCount3 1
- player.AddItem SurgicalSyringe01 iDrugCount1
- player.AddItem JetEmpty iDrugCount2
- MessageEx "What a bad day for Radiation... "
- elseif (player.GetAV RadiationRads <=199)
- elseif (player.GetAV RadiationRads >= 400) && (player.GetAV RadiationRads <= 599)
- let iDrugCount1 := ( (player.GetItemCount Morphine) / 2)
- let iDrugCount2 := ( (player.GetItemCount NVSteadyChem) / 3)
- let iDrugCount3 := ( (player.GetItemCount WaterPurified) / 3)
- player.RemoveItem Morphine iDrugCount1 1
- player.RemoveItem NVSteadyChem iDrugCount2 1
- player.RemoveItem WaterPurified iDrugCount3 1
- player.AddItem SurgicalSyringe01 iDrugCount1
- player.AddItem IrradiatedWaterUnpurified iDrugCount3
- MessageEx "As if the Rads seeping into your system alone weren't enough... "
- elseif (player.GetAV RadiationRads >= 600) && (player.GetAV RadiationRads <= 799)
- let iDrugCount1 := ( (player.GetItemCount WaterPurified) / 2)
- let iDrugCount2 := ( (player.GetItemCount NVHydra) / 3)
- let iDrugCount3 := ( (player.GetItemCount Stimpak) / 2)
- player.RemoveItem WaterPurified iDrugCount1 1
- player.RemoveItem NVHydra iDrugCount2 1
- player.RemoveItem Stimpak iDrugCount3 1
- player.AddItem IrradiatedWaterUnpurified iDrugCount1
- player.AddItem SurgicalSyringe01 iDrugCount3
- MessageEx "What a b-, no, what a terrible day for Radiation... "
- elseif (player.GetAV RadiationRads >= 800) && (player.GetAV RadiationRads <= 999)
- let iDrugCount1 := ( (player.GetItemCount WaterPurified) / 1)
- let iDrugCount2 := ( (player.GetItemCount Stimpak) / 1)
- let iDrugCount3 := ( (player.GetItemCount StealthBoy) / 2)
- player.RemoveItem WaterPurified iDrugCount1 1
- player.RemoveItem Stimpak iDrugCount2 1
- player.RemoveItem StealthBoy iDrugCount3 1
- player.AddItem IrradiatedWaterUnpurified iDrugCount1
- player.AddItem SurgicalSyringe01 iDrugCount2
- MessageEx "At this point, you count yourself lucky the Radiation didn't destroy you first."
- endif
- elseif (player.GetAV RadiationRads >= 200)
- MessageEx "Miraculously, the Radiation which has seeped into your bones wasn't quite able to get ahold of your items."
- else
- endif
- ;; NOW TO TELEPORT BACK AND COMPLETE THE DEATH SEQUENCE
- if fDeathTimer >= 10
- player.MoveTo XMarkerDeath
- FreezeTime 0
- FadeSFX -1
- rimod BlackSexISFX
- EnablePlayerControls
- let iDead := 0
- let iImageStage := 0
- player.RestoreAV Health 2
- if iRegenAllowed == 1
- player.RestoreAV Health 25
- endif
- endif
- let bonfireDeathEventRun := 0
- ;endif ;timer end
- endif ; imagestage if
- endif ; IMOD timer if
- endif
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement