FIMzzZzz Posted February 26, 2022 Share Posted February 26, 2022 hey, making a quest where you need grand soul gems containing a soul using the "HasSoulGem" function. and i expect it to be possible to lose azura's star because of this. not sure if i just should have the NPC tell the player to not lose it by accident, or solve it by script. for script options, checking if the player has azura's star and refuse to use the quest object that requires the soul gem seems a little, whats the word i'm looking for? gamey? looking at you, skooma dropping in front of the merchant... xD checking if the player had it and not anymore, then put it back into the player inventory would make the soul disappear if one was present. and checking for all creature options would result in quite a script... or maybe the NPC dialog checks if the player has it while accepting the quest and only then be told about. here's hoping for some ideas. and the current script below, contains a lot more creature options but i cut those, since the only difference is the creature. cheers Begin ztm_Rtel_soulgem_s_02 float posx float posz float posy float posrotz short done if ( menumode == 1 ) return endif if ( OnActivate == 0 ) return endif if ( done == 1 ) return endif if ( GetJournalIndex ztm_Rtel_preventive < 10 ) MessageBox "There is nothing for you to do here right now." return elseif ( ztm_tree_souls < 3 ) MessageBox "I should first place the soul gems on the surface." return elseif ( Player->HasSoulGem "Dremora_Lord" > 0 ) Player->RemoveSoulGem "Dremora_Lord" 1 set posx to ( GetPos X ) set posy to ( GetPos Y ) set posz to ( GetPos Z ) set posrotz to ( GetAngle Z ) set posz to ( posz + 69 ) PlaceItem ztm_soulgem_tree_placer posx posy posz posrotZ set ztm_tree_souls to ( ztm_tree_souls + 1 ) PlaySound "mysticism cast" cast, "ztm_focusaltarcast" Player else MessageBox "You don't have a Soul Gem matching the requirements." return endif if ( ztm_tree_souls == 4 ) Journal ztm_Rtel_preventive 14 set done to 1 endif if ( ztm_tree_souls == 5 ) Journal ztm_Rtel_preventive 15 set done to 1 endif end Link to comment Share on other sites More sharing options...
Recommended Posts