-- LUA Script - precede every function and global member with lowercase name of script + '_main' -- smallg's prerequisite_item script for use with locked_item.lua -- DESCRIPTION: [LOCKEDITEMNAME$=""] (the item to unlock when this item is collected) -- DESCRIPTION: [COLLECTRANGE=100] (the range you can pick this item up from) -- DESCRIPTION: [COLLECTANGLE=10] (the angle range you can pick up from) U = U or require "scriptbank\\utillib" g_prerequisite_item = {} local gotlockeditem = {} presse = 0 function prerequisite_item_properties(e, lockeditemname, collectrange, collectangle) local pi = g_prerequisite_item[e] pi.lockeditemname = lockeditemname pi.collectrange = collectrange pi.collectangle = collectangle end function prerequisite_item_init(e) g_prerequisite_item[e] = {} local pi = g_prerequisite_item[e] pi.lockeditemname = "" pi.collectrange = 100 pi.collectangle = 10 gotlockeditem[e] = {} end function prerequisite_item_main(e) local pi = g_prerequisite_item[e] if gotlockeditem[e][1] == nil then local temp = 0 for a = 1, g_EntityElementMax do if g_Entity[a] ~= nil then if GetEntityName(a) == pi.lockeditemname then temp = temp + 1 gotlockeditem[e][temp] = a end end end end if U.PlayerLookingNear(e, pi.collectrange, pi.collectangle) == true then PromptLocal(e,"Collect the "..GetEntityName(e).."? (E)") if g_KeyPressE == 1 then if presse == 1 then PlaySound(e,0) PromptDuration("Collected the "..GetEntityName(e),1000) ActivateIfUsed(e) for a,b in pairs (gotlockeditem[e]) do SetActivated(b,2) --PromptDuration("unlocked "..b,1000) end Destroy(e) end presse = 1 else presse = 0 end end end