Jump to content

Ayuda Pls !!


D4RKAR117

Recommended Posts

Hola Soy un Scripter Novato, Requiero Ayuda Con la funcion downloadFile (||Aca En la Wiki|| ), Lei la wiki pero no me aclara ciertas dudas que tengo sobre como funciona.

 

  1. Es Client Side O Server Side?
  2. Requiere un Filepath (Ruta De Archivo Como en el meta.xml) o Solo el Filename (Nombre Del archivo)
  3. Como puedo identificar en caso de estar en un blucle for (Ejemplo Mas Adelante) que hay no Existen Mas archivos en Cola De Descarga.

Ejemplo (Es parte de Mi Script si me pueden ayudar con algun error que encuentren mejor :D)

Parte del script donde uso el downloadFile

addEvent ("requestDownload", true)
addEventHandler ("requestDownload", root,
	function DownloadModFile()
		local Ply = getLocalPlayer()
		local newChildD = xmlCreateChild (downloadXmlC, "fileDownload" )
		local XmlTableDownload = xmlNodeGetChildren ( newChildD )
		for i, node in pairs (XmlTableDownload) do
			local FileToDownload = xmlNodeGetValue ( node)
		end
		if not (fileExists( txdFile )) or (fileExists( dffFile ))  then
			local DwF = downloadFile( FileToDownload )
			outputDebugString("Downloading File :"..FileToDownload)
			 if not DwF then
				if  (fileExists( txdFile )) and (fileExists( dffFile ))  then
					triggerServerEvent ("requestReplacements", Ply)
				end
			 end	
		 elseif (fileExists( txdFile )) and (fileExists( dffFile ))  then
				triggerServerEvent ("requestReplacements", Ply)
			end
		end
)

En Esta parte Cargo una lista de archivos de un archivo xml, intento hacer que con un trigger se inicie la Descarga de los archivos listados (por eso el For) 

 

Lista de archivos que debe descargar, ya use el xmlLoadFile por si tienen dudas:D

<FilesDownload> 
    <fileDownload name="bomb.txd"></fileDownload>
    <fileDownload name="bomb.dff"></fileDownload>
    <fileDownload name="sniper.txd"></fileDownload>
    <fileDownload name="sniper.dff"></fileDownload>
    <fileDownload name="knifecur.txd"></fileDownload>
    <fileDownload name="knifecur.dff"></fileDownload>
    <fileDownload name="rocketla.txd"></fileDownload>
    <fileDownload name="rocketla.dff"></fileDownload>
    <fileDownload name="fire_ex.txd"></fileDownload>
    <fileDownload name="fire_ex.dff"></fileDownload>
    <fileDownload name="chnsaw.txd"></fileDownload>
    <fileDownload name="chnsaw.dff"></fileDownload>
    <fileDownload name="katana.txd"></fileDownload>
    <fileDownload name="katana.dff"></fileDownload>
    <fileDownload name="heatseek.txd"></fileDownload>
    <fileDownload name="heatseek.dff"></fileDownload>
    <fileDownload name="silenced.txd"></fileDownload>
    <fileDownload name="silenced.dff"></fileDownload>
    <fileDownload name="shotgspa.txd"></fileDownload>
    <fileDownload name="shotgspa.dff"></fileDownload>
    <fileDownload name="ak47.txd"></fileDownload>
    <fileDownload name="ak47.dff"></fileDownload>
    <fileDownload name="flame.txd"></fileDownload>
    <fileDownload name="flame.dff"></fileDownload>
    <fileDownload name="gun_para.txd"></fileDownload>
    <fileDownload name="gun_para.dff"></fileDownload>
    <fileDownload name="spraycan.txd"></fileDownload>
    <fileDownload name="spraycan.dff"></fileDownload>
    <fileDownload name="satchel.txd"></fileDownload>
    <fileDownload name="satchel.dff"></fileDownload>
    <fileDownload name="camera.txd"></fileDownload>
    <fileDownload name="camera.dff"></fileDownload>
    <fileDownload name="nvgoggles.txd"></fileDownload>
    <fileDownload name="nvgoggles.dff"></fileDownload>
    <fileDownload name="teargas.txd"></fileDownload>
    <fileDownload name="teargas.dff"></fileDownload>
    <fileDownload name="irgoggles.txd"></fileDownload>
    <fileDownload name="irgoggles.dff"></fileDownload>
    <fileDownload name="cellphone.txd"></fileDownload>
    <fileDownload name="cellphone.dff"></fileDownload>
    <fileDownload name="micro_uzi.txd"></fileDownload>
    <fileDownload name="micro_uzi.dff"></fileDownload>
    <fileDownload name="minigun.txd"></fileDownload>
    <fileDownload name="minigun.dff"></fileDownload>
    <fileDownload name="tec9.txd"></fileDownload>
    <fileDownload name="tec9.dff"></fileDownload>
    <fileDownload name=":Ogun.txd"></fileDownload>
    <fileDownload name=":Ogun.dff"></fileDownload>
    <fileDownload name="chromegun.txd"></fileDownload>
    <fileDownload name="chromegun.dff"></fileDownload>
    <fileDownload name="grenade.txd"></fileDownload>
    <fileDownload name="grenade.dff"></fileDownload>
    <fileDownload name="sawnoff.txd"></fileDownload>
    <fileDownload name="sawnoff.dff"></fileDownload>
    <fileDownload name="mp5lng.txd"></fileDownload>
    <fileDownload name="mp5lng.dff"></fileDownload>
    <fileDownload name="desert_eagle.txd"></fileDownload>
    <fileDownload name="desert_eagle.dff"></fileDownload>
    <fileDownload name="colt45.txd"></fileDownload>
    <fileDownload name="colt45.dff"></fileDownload>
    <fileDownload name="brassknuckle.txd"></fileDownload>
    <fileDownload name="brassknuckle.dff"></fileDownload>
    <fileDownload name="missile.txd"></fileDownload>
    <fileDownload name="missile.dff"></fileDownload>
    <fileDownload name="molotov.txd"></fileDownload>
    <fileDownload name="molotov.dff"></fileDownload>
    <fileDownload name="m4.txd"></fileDownload>
    <fileDownload name="bat.txd"></fileDownload>
    <fileDownload name="bat.dff"></fileDownload>
    <fileDownload name="shovel.txd"></fileDownload>
    <fileDownload name="shovel.dff"></fileDownload>
</FilesDownload>

Cualquier tipo de ayuda se los Agradeceria mucho.

PD: Soy Nuevo En El Foro :P

PD2 : Soy Programador Pero El Lua es nuevo para mi

 

 

 

Edited by D4RKAR117
Link to comment

¿Quieres cargar los archivos TXD y DFF en un momento determinado? ejemplo: al precionar el botón X se activan las texturas

Aunque si quieres cargar varias txd, dff, creo que puedes usar esto sin necesidad de usar XML (esto me lo pasó un amigo hace tiempo, pero me sirvió para entender más sobre tablas en ese entonces):

local remplace_objects = {
	bunny = 1851;				chaleco = 1852;					hat_cuadros = 1853;
	hat_mario = 1854;			hat_navideno = 1855;			hat_rasta = 1856;
	hat_sombrero = 1857;		hat_turbant = 1858;				helmet_casco = 1859;
	helmet_cluckin = 1860;		helmet_constructor = 1861;		helmet_iron = 1862;
	helmet_swat = 1863;			helmet_trooper = 1864;			helmet_vader = 1865;
	mask_anonimus = 1866;		mask_Ape = 1867;				mask_bear = 1868;
	mask_cat = 1869;			mask_cookie = 1870;				mask_demon = 1871;
	mask_demon_2 = 1872;		mask_gas = 1873;				mask_hockey = 1874;
	mask_mapache = 1875;		mask_mickey = 1876;				mask_pig = 1877;
	mask_zorro = 1878;			o2_tank = 1879;					shield = 1880;
	xray_lents = 1881;
}

local models = {}
	
addEventHandler ( "onClientResourceStart", getResourceRootElement(getThisResource()), function()
	for name, id in pairs(remplace_objects) do
		models[name] = {}
		models[name].txd = engineLoadTXD("datos/" .. name .. ".txd")
		engineImportTXD(models[name].txd, id)
		models[name].dff = engineLoadDFF("datos/" .. name .. ".dff", id)
		engineReplaceModel(models[name].dff, id)
	end
end)

"bunny" es el nombre del txd y dff

Link to comment
4 hours ago, Hit+ said:

¿Quieres cargar los archivos TXD y DFF en un momento determinado? ejemplo: al precionar el botón X se activan las texturas

Aunque si quieres cargar varias txd, dff, creo que puedes usar esto sin necesidad de usar XML (esto me lo pasó un amigo hace tiempo, pero me sirvió para entender más sobre tablas en ese entonces):


local remplace_objects = {
	bunny = 1851;				chaleco = 1852;					hat_cuadros = 1853;
	hat_mario = 1854;			hat_navideno = 1855;			hat_rasta = 1856;
	hat_sombrero = 1857;		hat_turbant = 1858;				helmet_casco = 1859;
	helmet_cluckin = 1860;		helmet_constructor = 1861;		helmet_iron = 1862;
	helmet_swat = 1863;			helmet_trooper = 1864;			helmet_vader = 1865;
	mask_anonimus = 1866;		mask_Ape = 1867;				mask_bear = 1868;
	mask_cat = 1869;			mask_cookie = 1870;				mask_demon = 1871;
	mask_demon_2 = 1872;		mask_gas = 1873;				mask_hockey = 1874;
	mask_mapache = 1875;		mask_mickey = 1876;				mask_pig = 1877;
	mask_zorro = 1878;			o2_tank = 1879;					shield = 1880;
	xray_lents = 1881;
}

local models = {}
	
addEventHandler ( "onClientResourceStart", getResourceRootElement(getThisResource()), function()
	for name, id in pairs(remplace_objects) do
		models[name] = {}
		models[name].txd = engineLoadTXD("datos/" .. name .. ".txd")
		engineImportTXD(models[name].txd, id)
		models[name].dff = engineLoadDFF("datos/" .. name .. ".dff", id)
		engineReplaceModel(models[name].dff, id)
	end
end)

"bunny" es el nombre del txd y dff

Te lo Agradesco amigo lo tomare a consideracion pero estoy haciendo una adaptacion del Resource modloader con un panel que hice, lo unico que me hace falta por hacer es que se descarguen lsoa rchivos y se activen los remplazos de texturas solo si el usiuario quiere, de otra manera son mas de 500 mb de descarga

Link to comment
1 hour ago, Hit+ said:

o sea, ¿usar el modloader para cargar muchos mods a la vez?

Si, el resource modloader lo estoy modificando, para que los usuarios descarguen y remplacen las texturas cuando ellos quieran, porque estoy remplazando todos los skins, vehiculos y armas del juego

 

 

Edited by D4RKAR117
Link to comment
5 minutes ago, aka Blue said:

De esa forma que has hecho el evento, ésto no se pone así:


function DownloadModFile()

Se pone solo function( ) (y si tiene argumentos, se le añaden)

Gracias por la aclaracion, pero nesecito verificar si el resto esta bien xD, si alguno de uds tuviera tiempo quisiera que me ayudaran a adaptar el script, de todas maneras se agradece la ayuda

Edited by D4RKAR117
Link to comment
  • Recently Browsing   0 members

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