xRGamingx Posted October 15, 2018 Share Posted October 15, 2018 Hello friend, I'm having a problem with a xXmadeXx resource. I have passed the resource to my phone system the problem is that when I give my phone open and then I give the modsystem icon, nothing comes out... setTimer ( function ( ) function alertMessage ( message, r, g, b ) outputChatBox ( message, r, g, b ) -- you can change this to an export or whatever.. end local data = getElementData ( localPlayer, "PlayerIpAddress" ) if ( string.sub ( data, 1, 7 ) == "192.168" ) then clientToIp = ipv4IP else clientToIp = serverIp end httpModDirectory = "http://"..clientToIp..downloadDirectory ---local sx, sy = guiGetScreenSize ( ) local button = { } modsfondo[1] = guiCreateGridList(0.00, 0.00, 1.00, 1.00, true, JordanPad)---FONDO--- tab2[2] = guiCreateTabPanel(0.00, 0.00, 1.00, 1.00, true, JordanPad) --tab2 tablistas= guiCreateTab("Mods Opcionales", tab2[2]) mods = guiCreateGridList(0.00, 0.00, 1.00, 0.91, true, tablistas) guiGridListSetSortingEnabled ( mods, false ) guiGridListAddColumn(mods, "Nombre", 0.3) guiGridListAddColumn(mods, "Activado.", 0.3) guiGridListAddColumn(mods, "Descargado.", 0.3) button['setstat'] = guiCreateButton(0.38, 0.91, 0.24, 0.09, "Activar Mod", true, tablistas) button['dl'] = guiCreateButton(0.00, 0.91, 0.38, 0.09, "Descargar Mod", true, tablistas) button['del'] = guiCreateButton(0.62, 0.91, 0.38, 0.09, "Eliminar Mod", true, tablistas) guiSetFont( button['setstat'], "default-bold-small") guiSetFont( button['dl'], "default-bold-small") guiSetFont( button['del'], "default-bold-small") ---button['exit'] = guiCreateButton(423, 324, 127, 35, "Exit", false, modsfondo[1]) guiSetEnabled ( button['setstat'], true ) guiSetEnabled ( button['dl'], true ) guiSetEnabled ( button['del'], true ) local enabledMods = { } local downloadingFiles = { } addCommandHandler ( "vehmods", function ( ) --------------COMAND local x = not guiGetVisible ( tab2[1] ) guiSetVisible ( tab2[1], x ) showCursor ( x ) refreshModList ( ) end ) addEventHandler ( "onClientGUIClick", root, function ( ) if ( source == button['exit'] ) then executeCommandHandler ( 'vehmods' ) elseif ( source == button['dl'] ) then local row, col = guiGridListGetSelectedItem ( mods ) if ( row ~= -1 and col ~= 0 ) then local name = guiGridListGetItemText ( mods, row, 1 ) if ( not downloadingFiles[name] and not modExists ( name ) ) then downloadMod ( name ) alertMessage ( "Downloading the "..name.." mod!", 0, 255, 0 ) guiSetEnabled ( source, false ) downloadingFiles[name] = true else alertMessage ( "You already have this mod.. It may still be downloading.", 255, 0, 0 ) guiSetEnabled ( button['dl'], false ) if ( modExists ( name ) ) then guiSetEnabled ( button['setstat'], false ) guiSetEnabled ( button['del'], false ) guiSetText ( button['setstat'], "Enable Mod" ) end end end elseif ( source == button['del'] ) then local r, c = guiGridListGetSelectedItem ( mods ) local t, t2 = guiGridListGetItemText ( mods, r, 1 ), guiGridListGetItemText ( mods, r, 2 ) if ( t2 == "No" ) then alertMessage ( "Deleting the "..t.." mod.", 255, 0, 0 ) guiSetEnabled ( source, false ) guiSetEnabled ( button['setstat'], false ) guiSetEnabled ( button['dl'], true ) guiGridListSetItemText ( mods, r, 3, "No", false, false ) for i=1,3 do guiGridListSetItemColor ( mods, r, i, 255, 0, 0 ) end deleteMod ( t ) else alertMessage ( "Please disable the mod before deleting it.", 255, 0, 0 ) end elseif ( source == mods ) then local row, col = guiGridListGetSelectedItem ( source ) if ( row ~= -1 and col ~= 0 ) then local t = guiGridListGetItemText ( mods, row, 1 ) guiSetText ( button['setstat'], "Enable Mod" ) if ( modExists ( t ) ) then guiSetEnabled ( button['setstat'], true ) guiSetEnabled ( button['dl'], false ) guiSetEnabled ( button['del'], true ) else guiSetEnabled ( button['setstat'], false ) guiSetEnabled ( button['dl'], true ) guiSetEnabled ( button['del'], false ) end if ( enabledMods[t] ) then guiSetText ( button['setstat'], "Disable Mod" ) guiGridListSetItemText ( mods, row, 2, "Si", false, false ) for i=1,3 do guiGridListSetItemColor ( mods, row, i, 0, 255, 0 ) end else guiGridListSetItemText ( mods, row, 2, "No", false, false ) for i=1,3 do guiGridListSetItemColor ( mods, row, i, 255, 0, 0 ) end end else guiSetEnabled ( button['setstat'], true ) guiSetEnabled ( button['dl'], true ) guiSetEnabled ( button['del'], true ) end if ( downloadingFiles[t] ) then guiSetEnabled ( button['dl'], false ) end elseif ( source == button['setstat'] ) then if ( not isPedInVehicle ( localPlayer ) ) then local row, col = guiGridListGetSelectedItem ( mods ) if ( row ~= -1 and col ~= 0 ) then local t = guiGridListGetItemText ( mods, row, 1 ) if ( enabledMods[t] ) then setModEnabled ( t, false ) else setModEnabled ( t, true ) end end else alertMessage ( "Please get out of your vehicle to use this function.", 255, 0, 0 ) end end end ) function modExists ( name ) if ( name and moddinglist[name] and not downloadingFiles[name] ) then local dff = moddinglist[name][1] local txd = moddinglist[name][2] if ( fileExists ( "mods/"..dff ) ) then if ( moddinglist[name][4] and fileExists ( "mods/"..txd ) ) then return true elseif ( not moddinglist[name][4] ) then return true end else if ( fileExists ( 'mods/'..txd ) ) then fileDelete ( 'mods/'..txd ) end end end return false end function downloadMod ( name ) if ( name and moddinglist[name] ) then local dff = moddinglist[name][1] local txd = moddinglist[name][2] if ( fileExists ( "mods/"..dff ) ) then fileDelete ( "mods/"..dff ) end if ( fileExists ( "mods/"..txd ) ) then fileDelete ( "mods/"..txd ) end downloadingFiles[name] = true local f = fetchRemote ( httpModDirectory.."/"..dff, function ( data, err, name, dff, txd ) if ( err == 0 ) then local f = fileCreate ( "mods/"..dff ) fileWrite ( f, data ) fileClose ( f ) if ( moddinglist[name][4] ) then fetchRemote ( httpModDirectory.."/"..txd, function ( data, err, name, name2 ) if ( err == 0 ) then local f = fileCreate ( "mods/"..name ) fileWrite ( f , data ) fileClose ( f ) alertMessage ( name2.." mod has been downloaded. You can now activate it.", 0, 255, 0 ) downloadingFiles[name2] = false for i=0,guiGridListGetRowCount ( mods ) do local t = guiGridListGetItemText ( mods, i, 1 ) if ( t == name2 ) then guiGridListSetItemText ( mods, i, 3, "Si", false, false ) local row, col = guiGridListGetSelectedItem ( mods ) if ( row == i ) then guiSetText ( button['setstat'], "Enable Mod" ) guiSetEnabled ( button['setstat'], true ) guiSetEnabled ( button['dl'], false ) guiSetEnabled ( button['del'], true ) end break end end else alertMessage ( "Error "..err.." for resource "..getResourceName(getThisResource())..". Please report it to an admin.", 255, 0, 0 ) deleteMod ( name ) downloadingFiles[name] = false end end, "", false, txd, name ) else alertMessage ( name.." mod has been downloaded. You can now activate it.", 0, 255, 0 ) downloadingFiles[name] = false for i=0,guiGridListGetRowCount ( mods ) do local t = guiGridListGetItemText ( mods, i, 1 ) if ( t == name ) then guiGridListSetItemText ( mods, i, 3, "Si", false, false ) ----- 0, 255, 255 for i=1,3 do guiGridListSetItemColor ( mods, row, i, 0, 255, 255 ) end local row, col = guiGridListGetSelectedItem ( mods ) if ( row == i ) then guiSetText ( button['setstat'], "Enable Mod" ) guiSetEnabled ( button['setstat'], true ) guiSetEnabled ( button['dl'], false ) guiSetEnabled ( button['del'], true ) end break end end end else alertMessage ( "Error "..err.." for resource "..getResourceName(getThisResource())..". Please report it to an admin.", 255, 0, 0 ) deleteMod ( name ) downloadingFiles[name] = false end end, "", false, name, dff, txd ) end end function deleteMod ( name ) local m1_dl = false local m2_dl = false if ( name and moddinglist[name] and modExists ( name ) ) then local txd, dff = moddinglist[name][2], moddinglist[name][1] if ( fileExists ( "mods/"..txd ) ) then if ( not fileDelete ( "mods/"..txd ) ) then return alertMessage ( "Failed to delete the "..name.." mod. Please reconnect.", 255, 0, 0 ) end m1_dl = true end if ( fileExists ( "mods/"..dff ) ) then fileDelete ( "mods/"..dff ) m2_dl = true end end return m2_dl and m1_dl end function setModEnabled ( t, state, msg ) if ( t and moddinglist[t] ) then row = 0 if ( msg == nil ) then msg = true end for i=0,guiGridListGetRowCount ( mods ) do if ( guiGridListGetItemText ( mods, i, 1 ) == t ) then row = i break end end local dff, txd, id = unpack ( moddinglist[t] ) if ( modExists ( t ) ) then if ( state == false and enabledMods[t] ) then engineRestoreModel ( id ) enabledMods[t] = false guiSetText ( button['setstat'], "Enable Mod" ) guiGridListSetItemText ( mods, row, 2, "No", false, false ) for i=1,3 do guiGridListSetItemColor ( mods, row, i, 255, 0, 0 ) end if ( msg ) then alertMessage ( t.." Mod Disabled!", 0, 255, 0 ) end else if ( moddinglist[t][4] ) then local txd1 = engineLoadTXD ( "mods/"..txd ) if ( not txd1 ) then alertMessage ( "Failed to load the mod. Try re-downloading it.", 255, 0, 0 ) --return false end if ( not engineImportTXD ( txd1, id ) ) then alertMessage ( "Failed to enable the mod. Try re-downloading it.", 255, 0, 0 ) --return false end end local dff = engineLoadDFF ( "mods/"..dff, id ) if ( not dff ) then alertMessage ( "Failed loading the mod model. Try re-downloading it.", 255, 0, 0 ) --return false end if ( not engineReplaceModel ( dff , id ) ) then alertMessage ( "Failed to replace the mod model. Try re-downloading it", 255, 0, 0 ) --return false end enabledMods[t] = true if ( msg ) then alertMessage ( t.." mod enabled!", 0, 255, 0 ) end guiSetText ( button['setstat'], "Disable Mod" ) guiGridListSetItemText ( mods, row, 2, "Si", false, false ) for i=1,3 do guiGridListSetItemColor ( mods, row, i, 0, 255, 0 ) end --return true end end if ( enabledMods[t] ) then guiSetText ( button['setstat'], "Disable Mod" ) guiGridListSetItemText ( mods, row, 2, "Si", false, false ) for i=1,3 do guiGridListSetItemColor ( mods, row, i, 0, 255, 0 ) end else guiGridListSetItemText ( mods, row, 2, "No", false, false ) for i=1,3 do guiGridListSetItemColor ( mods, row, i, 255, 0, 0 ) end end return true end return false end function refreshModList( ) guiGridListClear ( mods ) for i, v in pairs ( moddinglist ) do local row = guiGridListAddRow ( mods ) local exists = "No" if ( modExists ( i ) ) then exists = "Si" end local enabled = "No" if ( enabledMods[i] ) then enabled = "Si" end guiGridListSetItemText ( mods, row, 1, tostring ( i ), false, false ) guiGridListSetItemText ( mods, row, 2, tostring ( enabled ), false, false ) guiGridListSetItemText ( mods, row, 3, tostring ( exists ), false, false ) guiGridListSetItemData ( mods, row, 1, { v[1], v[2], v[3] } ) if ( enabled == "No" ) then for i=1,3 do guiGridListSetItemColor ( mods, row, i, 255, 0, 0 ) end else for i=1,3 do guiGridListSetItemColor ( mods, row, i, 0, 255, 0 ) end end end setTimer ( refreshModList, 120000, 0 ) end --setTimer ( refreshModList, 2000, 1 ) addEventHandler ( "onClientResourceStop", resourceRoot, function ( ) local file = xmlCreateFile ( '@save.xml', 'data' ) for i, v in pairs ( moddinglist ) do local child = xmlCreateChild ( file, 'mod' ) xmlNodeSetAttribute ( child, 'name', i ) xmlNodeSetAttribute ( child, 'enabled', tostring ( isset ( enabledMods[i] ) ) ) end xmlSaveFile ( file ) xmlUnloadFile ( file ) end ) function toboolean ( input ) local input = string.lower ( tostring ( input ) ) if ( input == 'true' ) then return true elseif ( input == 'false' ) then return false else return nil end end function isset ( value ) if ( value ) then return true end return false end end, 500, 1 ) and for the panel to appear I must use the xXMadeXx panel command,,I want the panel to open as soon as I click on the modsystem icon resource: modsys Link to comment
xRGamingx Posted October 15, 2018 Author Share Posted October 15, 2018 @Solidsnake14 you who know this system. Link to comment
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now