Jump to content

مُساعدة


Recommended Posts

local function updateGrid()
    guiGridListClear(grid)

    local only_fitting = guiCheckBoxGetSelected(checkbox)
    local fitting_skins = getFittingSkins()

    for k, v in ipairs(list) do
        if canBuySkin(localPlayer, v) or canEdit(localPlayer) then
            if not only_fitting or fitting_skins[v.skin] then
                local row = guiGridListAddRow(grid)
                guiGridListSetItemText(grid, row, 1, tostring(v.id), false, true)
                guiGridListSetItemData(grid, row, 1, tostring(k)) 
                guiGridListSetItemText(grid, row, 2, tostring(v.description), false, false)
                guiGridListSetItemText(grid, row, 3, tostring(v.skin), false, true)
                guiGridListSetItemText(grid, row, 4, v.price == 0 and 'N/A' or ('$' .. exports.global:formatMoney(v.price)), false, false)
            end
        end
    end
end

--

ذا كلاينت سايد هل انو في طريقة اخلي انو لو شخص ضاف شيء يضهر للي ضايفه فقط يعني مو كل الناس؟

Link to comment
1 minute ago, JustP said:

local function updateGrid()
    guiGridListClear(grid)

    local only_fitting = guiCheckBoxGetSelected(checkbox)
    local fitting_skins = getFittingSkins()

    for k, v in ipairs(list) do
        if canBuySkin(localPlayer, v) or canEdit(localPlayer) then
            if not only_fitting or fitting_skins[v.skin] then
                local row = guiGridListAddRow(grid)
                guiGridListSetItemText(grid, row, 1, tostring(v.id), false, true)
                guiGridListSetItemData(grid, row, 1, tostring(k)) 
                guiGridListSetItemText(grid, row, 2, tostring(v.description), false, false)
                guiGridListSetItemText(grid, row, 3, tostring(v.skin), false, true)
                guiGridListSetItemText(grid, row, 4, v.price == 0 and 'N/A' or ('$' .. exports.global:formatMoney(v.price)), false, false)
            end
        end
    end
end

--

ذا كلاينت سايد هل انو في طريقة اخلي انو لو شخص ضاف شيء يضهر للي ضايفه فقط يعني مو كل الناس؟

triggerServerEvent 

triggerClientEvent

 

Link to comment
1 minute ago, KillerX said:

triggerServerEvent 

triggerClientEvent

 

-- server
addEvent('clothing:list', true)
addEventHandler('clothing:list', resourceRoot,
	function()
		if type(savedClothing) == 'table' then
			triggerLatentClientEvent(client, 'clothing:list', resourceRoot, savedClothing)
		else
			outputChatBox('Clothing list is currently not available.', client, 255, 0, 0)
		end
	end, false)
-- client

addEvent('clothing:list', true)
addEventHandler('clothing:list', resourceRoot,
	function(list_)
		closeWindow()
		local margin = 30
		window = guiCreateWindow(screen_width - width - margin+20, screen_height - height-margin, width, height, 'Dupont Fashion', false)
		guiWindowSetSizable(window, false)

		grid = guiCreateGridList(10, 25, width - 20, height - 60, false, window)
		guiGridListAddColumn(grid, 'ID', 0.07)
		guiGridListAddColumn(grid, 'Description', 0.7)
		guiGridListAddColumn(grid, 'Base Skin', 0.1)
		guiGridListAddColumn(grid, 'Price', 0.1)

		local close = guiCreateButton(width - 110, height - 30, 100, 25, 'Close', false, window)
		addEventHandler('onClientGUIClick', close, closeWindow, false)

		local buy = guiCreateButton(width - 220, height - 30, 100, 25, 'Buy', false, window)
		guiSetEnabled(buy, false)

		checkbox = guiCreateCheckBox(width - 380, height - 33, 155, 22, 'Only Skins you can wear', true, false, window)
		addEventHandler('onClientGUIClick', checkbox, updateGrid, false)

		local scrollbar = guiCreateScrollBar(120, height - 32, 185, 22, true, false, window)
		guiSetProperty(scrollbar, "StepSize", "0.0028")
		addEventHandler('onClientGUIScroll', scrollbar,
			function()
				local rotation = tonumber(guiGetProperty(source, "ScrollPosition"))
				setElementRotation(previewPed, 0, 0, 155 + rotation * 360)
			end, false)

		local newedit = nil
		if canEdit(localPlayer) then
			newedit = guiCreateButton(10, height - 30, 100, 25, 'New', false, window)
		end


		-- fill the skins list
		list = sortList(list_)
		updateGrid()

		-- event handler for previewing items
		addEventHandler('onClientGUIClick', grid,
			function(button)
				if button == 'left' then
					-- update the preview ped to reflect actual clothing changes
					local row, column = guiGridListGetSelectedItem(grid)
					if row == -1 then
						resetPed()

						guiSetEnabled(buy, false)

						if newedit then
							guiSetText(newedit, 'New')
						end
					else
						local item = list[tonumber(guiGridListGetItemData(grid, row, 1))]
						if item then
							setElementModel(previewPed, item.skin)
							setElementData(previewPed, 'clothing:id', item.id, false)

							guiSetEnabled(buy, item.price == 0 or exports.global:hasMoney(localPlayer, item.price))

							if newedit then
								guiSetText(newedit, 'Edit')
							end
						else
							outputDebugString('Clothing preview broke, aw.')
							guiSetEnabled(buy, false)
						end
					end

					-- we selected another row, so tweak that a bit
					closeEditingWindow()
				end
			end, false)

		-- buying things
		addEventHandler('onClientGUIClick', buy,
			function(button)
				if button == 'left' then
					local row, column = guiGridListGetSelectedItem(grid)
					if row ~= -1 then
						local item = list[tonumber(guiGridListGetItemData(grid, row, 1))]
						if item then
							triggerServerEvent('clothing:buy', resourceRoot, item.id)
						end
					end
				end
			end, false)

		-- new/edit
		if newedit then
			addEventHandler('onClientGUIClick', newedit,
				function(button)
					if button == 'left' then
						createEditWindow()
					end
				end, false)
		end

		setSoundVolume(playSound(":resources/inv_open.mp3"), 0.3)
	end, false)

 

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...