• PointShop unequip items when demoted from VIP!
    14 replies, posted
Ok basically I have a group in ulx called VIP and they get everything for free in pointshop and I want to make it so if you demote them they get all their items they have equiped removed for example I buy a vip hat but I start breaking the rules so if I had to be demoted for some reason I would lose all the items I was wearing such as the hat! I hope someone knows some code like that
Try [lua]function ITEM:OnEquip(ply) if ply:IsUserGroup("GROUPNAME") then --CODE HERE end end[/lua] Don't know why you would want a vip to have everything for free, it defeats the purpose of earning points. Just my opinion.
@Blackout338 So where do I add this code and if I add it when they are demoted from VIP it will unequip all their items?
In the pointshop items
@Blackout Every single item I have about 200
Why do you have 200 items in pointshop? The amount of downloads people will have when they join would be insane.
You got any code that I could put in a file and it would add to all of them?
Try this [lua] function HolsterItems( ply ) for item_id, item in pairs(ply.PS_Items) do if !ply:IsUserGroup("GROUPNAME") then if item.Equipped then local ITEM = PS.Items[item_id] ITEM:OnHolster(ply, item.Modifications) end end end end hook.Add( "PlayerSpawn", "HolsterItems", HolsterItems )[/lua] You will need to add all of your groups above vip otherwise it will unequip all items for everyone who isn't vip. So change 'if !ply:IsUserGroup("vip") then' to 'if !ply:IsUserGroup("vip") or !ply:IsUserGroup("admin") or !ply:IsUserGroup("owner") then'.
function HolsterItems( ply ) for item_id, item in pairs(ply.PS_Items) do if !ply:IsUserGroup("GROUPNAME") then if item.Equipped then local ITEM = PS.Items[item_id] ITEM:OnHolster(ply, item.Modifications) end end end end hook.Add( "PlayerSpawn", "HolsterItems", HolsterItems ) I added this code to an afro and then demoted myself from superadmin to user and the afro did not de-equip please note: I also want it to sell the VIP item aswell because when they are demoted they lose the item
Don't add that to the items you can put that into a file in autorun/server Add this for sell items[lua] function SellItems( ply ) for item_id, item in pairs(ply.PS_Items) do if !ply:IsUserGroup("GROUPNAME") then if ply:PS_HasItem(item_id) then local ITEM = PS.Items[item_id] ITEM:OnSell(ply) end end end end hook.Add( "PlayerSpawn", "SellItems", SellItems )[/lua]
I have a group called VIP and SuperVip and I wan't it to sell and unequip if they get demoted to the group user So what code do I put into autorun to do that?
It seems that if any user has items they will be holstered and sold when they spawn so I've made a command that'll demote the player and sell and holster their items. It's untested but if anyone sees anything wrong feel free to point it out as I'm no expert with lua. c: (Already had to edit it because I missed something ;-;) [lua]local function FindTargetPlayer(str) for _,tar in ipairs(player.GetAll()) do if string.find(string.lower(tar:Nick()),string.lower(str)) then return tar end end end local function DemoteCommand(ply, args,target) if args[1] == "!demote" then local target = FindTargetPlayer(args[2], ply) if ply:IsUserGroup("owner") then if target == nil then ply:ChatPrint("Target is invalid.") else RunConsoleCommand("ulx removeuser "..target) for item_id, item in pairs(target.PS_Items) do if target:PS_HasItem(item_id) then local ITEM = PS.Items[item_id] ITEM:OnSell(ply) elseif target:PS_HasItemEquipped(item_id) then local ITEM = PS.Items[item_id] ITEM:OnHolster(ply, item.Modifications) end end end else ply:ChatPrint("You don't have permission to use this command.") end end end function getChatCommand(ply,text,public) local args = string.Explode(" ",text) DemoteCommand(ply,args) end hook.Add("PlayerSay","getChatCommand",getChatCommand)[/lua] You can make a file called demote.lua or something and include it in the init.
@blackout I put on a load of gear and typed !demote moltocraft and it did nothing at all :(
Any error?
@blackout None that I can see can re recheck your code for errors or test it?
Sorry, you need to Log In to post a reply to this thread.