gaby ♥ Posted September 2, 2012 Share Posted September 2, 2012 Buenas. Hoy me puse a aprender Lua, y tengo un pequeño problema. Estoy haciendo una especie de fogata con libros. Hasta la parte de los libros voy bien. El tema es cuando quiero ponerle fuego. Cuando uso el createFire o el fxAddTankFire me tira "Attempt call global createFire anil value" o algo así. Les dejo el código, para ver qué es lo que tengo que hacer. function fogata(thePlayer, cmd) local x,y,z = getElementPosition(thePlayer) z = z - 1 local libro1 = createObject(2894, x, y, z) x = x + 0.4 local libro2 = createObject(2894, x, y, z) y = y + 0.4 x = x - 0.2 local libro3 = createObject(2894, x, y, z) x = x - 0.2 y = y - 0.4 createFire(x, y, z, 10) outputChatBox("Fogata creada con éxito.", thePlayer) end addCommandHandler("hacerfogata", fogata) Link to comment
Castillo Posted September 2, 2012 Share Posted September 2, 2012 Eso es porque son funciones que solo funcionan en los scripts client side, el tuyo es server side. Link to comment
gaby ♥ Posted September 2, 2012 Author Share Posted September 2, 2012 Eso es porque son funciones que solo funcionan en los scripts client side, el tuyo es server side. ¿Y podrías decirme cómo hacerlo client side? Gracias de antemano. EDIT: Tengo un problema cuando pongo esto en meta.xml: "Gaby" version="1.0" name="Primer gamemode" type="gamemode" /> Se me queda la pantalla en negro y no me carga. ¿Tenés alguna idea de por qué? Link to comment
Araa Posted September 2, 2012 Share Posted September 2, 2012 -- Server Side function fogata( thePlayer, cmd ) local x,y,z = getElementPosition( thePlayer ) z = z - 1 local libro1 = createObject( 2894, x, y, z ) x = x + 0.4 local libro2 = createObject( 2894, x, y, z ) y = y + 0.4 x = x - 0.2 local libro3 = createObject( 2894, x, y, z ) x = x - 0.2 y = y - 0.4 triggerClientEvent( "createFire", root, x, y, z ) end addCommandHandler( "hacerfogata", fogata ) -- Client Side: function crearElFuego( x, y, z ) createFire( x, y, z, 10 ) end addEvent( "createFire", true ) addEventHandler( "createFire", root, crearElFuego, x, y, z ) Link to comment
gaby ♥ Posted September 2, 2012 Author Share Posted September 2, 2012 Pero hay algo que no entiendo. Del modo que vos lo pusiste, osea en Client Side, ¿Se puede hacer como comando? ¿Es mejor hacerlo en client side o server side? Disculpen las molestias Link to comment
Alexs Posted September 2, 2012 Share Posted September 2, 2012 Client Side afecta al cliente, Server Side al servidor, depende de lo que busques cual convendría mas. Link to comment
gaby ♥ Posted September 2, 2012 Author Share Posted September 2, 2012 Client Side afecta al cliente, Server Side al servidor, depende de lo que busques cual convendría mas. Creo que por ahora me voy a quedar con el Server side. Es mi primer día en Lua. Más tarde voy a investigar más acerca de client side y server side Gracias por todo, pueden cerrar. Link to comment
Arsilex Posted September 2, 2012 Share Posted September 2, 2012 no puedes elijir alli entre el server y el cliente ya que se esta trigeando una funcion de server a client para crear el fuego si no te dara nil y el fuego no se creara Link to comment
Castillo Posted September 2, 2012 Share Posted September 2, 2012 -- Server Side function fogata( thePlayer, cmd ) local x,y,z = getElementPosition( thePlayer ) z = z - 1 local libro1 = createObject( 2894, x, y, z ) x = x + 0.4 local libro2 = createObject( 2894, x, y, z ) y = y + 0.4 x = x - 0.2 local libro3 = createObject( 2894, x, y, z ) x = x - 0.2 y = y - 0.4 triggerClientEvent( "createFire", root, x, y, z ) end addCommandHandler( "hacerfogata", fogata ) -- Client Side: function crearElFuego( x, y, z ) createFire( x, y, z, 10 ) end addEvent( "createFire", true ) addEventHandler( "createFire", root, crearElFuego, x, y, z ) addEventHandler( "createFire", root, crearElFuego, x, y, z ) x, y, z ahi no es necesario. Link to comment
Araa Posted September 2, 2012 Share Posted September 2, 2012 x, y, z ahi no es necesario. ._. no se porque lo puse. Link to comment
Recommended Posts