nightwing100 Posted January 9, 2018 Posted January 9, 2018 I'm trying to make a simple mod to fix New Vegas Strip underused unique Magazine Vending Machine, as you all probably know, despite having it's own unique model, those thing can only be used once, I'm hoping to fix it by making it reset after 48 hours, but it require some script writing which i have no clue how to do it.  The following is vanilla script of those vending machines:  Scn   VStripMagazineVendingMachineScript Short   bDoOnce Float   fRandom Begin OnActivate    If IsActionRef Player == 1       If bDoOnce == 0          Set fRandom to GetRandomPercent          If fRandom < 7             Player.AddItem MagazineNVBarter 1          Elseif fRandom >= 7 && fRandom < 14             Player.AddItem MagazineNVCritical 1          Elseif fRandom >= 14 && fRandom < 21             Player.AddItem MagazineNVEnergyWeapons 1          Elseif fRandom >= 21 && fRandom < 28             Player.AddItem MagazineNVExplosives 1          Elseif fRandom >= 28 && fRandom < 35             Player.AddItem MagazineNVSurvival 1          Elseif fRandom >= 35 && fRandom < 42             Player.AddItem MagazineNVGuns 1          Elseif fRandom >= 42 && fRandom < 49             Player.AddItem MagazineNVLockpick 1          Elseif fRandom >= 49 && fRandom < 56             Player.AddItem MagazineNVMedicine 1          Elseif fRandom >= 56 && fRandom < 63             Player.AddItem MagazineNVMeleeWeapons 1          Elseif fRandom >= 63 && fRandom < 70             Player.AddItem MagazineNVRepair 1          Elseif fRandom >= 70 && fRandom < 77             Player.AddItem MagazineNVScience 1          Elseif fRandom >= 77 && fRandom < 84             Player.AddItem MagazineNVSneak 1          Elseif fRandom >= 84 && fRandom < 93             Player.AddItem MagazineNVSpeech 1          Elseif fRandom >= 93             Player.AddItem MagazineNVUnarmed 1          Endif          Set bDoOnce to 1          Activate       Else          Activate       Endif    Else       Activate    Endif End   Anyone can help me out?
Guest Posted January 9, 2018 Posted January 9, 2018 try this, i added a reset timer for every 48 hours right after as player is using it  Scn VStripMagazineVendingMachineScript int bDoOnce Float fRandom float fResetTimer Begin OnActivate If IsActionRef Player == 1 If bDoOnce == 0 Set fRandom to GetRandomPercent If fRandom < 7 Player.AddItem MagazineNVBarter 1 Elseif fRandom >= 7 && fRandom < 14 Player.AddItem MagazineNVCritical 1 Elseif fRandom >= 14 && fRandom < 21 Player.AddItem MagazineNVEnergyWeapons 1 Elseif fRandom >= 21 && fRandom < 28 Player.AddItem MagazineNVExplosives 1 Elseif fRandom >= 28 && fRandom < 35 Player.AddItem MagazineNVSurvival 1 Elseif fRandom >= 35 && fRandom < 42 Player.AddItem MagazineNVGuns 1 Elseif fRandom >= 42 && fRandom < 49 Player.AddItem MagazineNVLockpick 1 Elseif fRandom >= 49 && fRandom < 56 Player.AddItem MagazineNVMedicine 1 Elseif fRandom >= 56 && fRandom < 63 Player.AddItem MagazineNVMeleeWeapons 1 Elseif fRandom >= 63 && fRandom < 70 Player.AddItem MagazineNVRepair 1 Elseif fRandom >= 70 && fRandom < 77 Player.AddItem MagazineNVScience 1 Elseif fRandom >= 77 && fRandom < 84 Player.AddItem MagazineNVSneak 1 Elseif fRandom >= 84 && fRandom < 93 Player.AddItem MagazineNVSpeech 1 Elseif fRandom >= 93 Player.AddItem MagazineNVUnarmed 1 Endif set fResetTimer to gamedayspassed + 2 Set bDoOnce to 1 Activate Else Activate Endif Else Activate Endif End Begin Gamemode if bDoOnce == 1 && fResetTimer <= gamedayspassed set bDoOnce to 0 endif end Â
nightwing100 Posted January 9, 2018 Author Posted January 9, 2018 Thanks a lots~ Test it and it worked, going to publish it on Nexus, will make sure give you credit for it.
nightwing100 Posted January 9, 2018 Author Posted January 9, 2018 Done! https://www.nexusmods.com/newvegas/mods/64365
Recommended Posts
Archived
This topic is now archived and is closed to further replies.