garbear104 Posted October 10 Share Posted October 10 I am trying to make a patch for purchase items on display mod. I am trying to make it so that when you buy an item the item isn't removed from the world. That way a player may but it multiple times off the shelf without having to use the merchant interface. Is this possible and can anyone help explain how? Link to comment Share on other sites More sharing options...
uhmattbravo Posted October 11 Share Posted October 11 You could basically make a duplicate of the base object with a new formID, add a script, something along the lines of Begin onActivate If isActionref player ==1 && player.getitemcount caps001 >= 100 Player.Additem stuff 1 Player.removeitem caps001 100 Endif End (Using stuff in place of the formID of the object you want to buy, and 100 caps as a price for the example) Then put the new base object on the shelf. You could probably add to that to account for barter skill, or set up a message box that tells the price with buy or don't buy buttons (but that would require a showmessage command in the onActivate block, and the buttons in a MenuMode block, but what's there is probably the quickest, easiest way to do it. 1 Link to comment Share on other sites More sharing options...
Pellape Posted October 29 Share Posted October 29 (edited) @garbear104Adding stuff automatic to a specific place in the game world, might be a bit complicated. I did spend weeks in Oblivon to solve that specifc same issue. I assure you that it was frustrating to make this, but I was also extremly happy when I finally got it working. My whole Oblivion house is filled with all types of scripts I could imagine at that point. It did require obse to be solved and I guess it could be done with nvse. If you have Oblivion, you can peek at that script and use what you want from it in NV as I guess nvse and obse works the same way, but I cannot guarantee it. When I make scripts for F3 and FNV, I use the same commands and write in exact the same way, so it should work. Right now, I do not remember exact how I made this as that is 3 years ago. I do remember that I dropped an item to the floor with player.placeatme objectID 1 and removed it from the Cabinet with Cabinet.removeItem objectID 1. I made a search with obse find or something similar, scanned the cell for that specific objectID to get the referenceID, then I used reference.setpos x, y and z to get the object in the right position at the rack, also set the right angle to it with reference.setangle x, y and z So if I had placed a similar object at a table or somewhere else in that cell, well then it might have been that one that got moved into the rack I did use a tight radius though in the scanning for references, to not touch the wrong object but we do see that the rack is surrounded by some bottles, that did not move into the rack. The biggest issue was the timing between each bottle, as if I tried to add them to fast, they would not appear in the game or not added to the rack. I do guess it is 0.3 or 0.5 seconds between each bottle and if we try this faster, it fails. I did add timer in between I dropped the item, and scanned for it and when the scanner did find it, then I used the setpos and setangle commands immediately. The scanner had specific objectID's to search for as not all bottle nor all object types would have fit into that rack. I would not wanted the rack to add a chair into it. Edited October 29 by Pellape Link to comment Share on other sites More sharing options...
Recommended Posts