Jump to content

LUAmatic


Renkon

Recommended Posts

Rules:

LUAmatic © DDC-Forums es un juego en el que hay que hacer scripts lua segun lo pedido o resolver errores en scripts. Por ejemplo xxxxx gana una ronda si crea un código bueno, y puede crear otro. El que realize uno bien tendrá 2 puntos; el que lo haga un poco mal 1 punto y si lo haces completamente mal tendrás -1.

Solo los referees dicen si es correcto!. Juguemos para divertirnos y aprendamos LUA juntos!

Únicamente el 1º en responder podrá poner la siguiente 'tarea'

Si a las 24 horas de ser correcto, no crea otra, un referee creará otra tarea

______________________________________________________

Referees:

  • Renkon
    A determinar

______________________________________________________

Puntajes:

SolidSnake: 1

Alex_Steel: 1

Edikosh998: 1

Renkon: -1

______________________________________________________

Primer tarea = "Crear un script que permita mostrar la locación del jugador que ejecute el comando /mtafan y le agregue 20 'gtametres' en coordenadas x e y".

Buena suerte. Por favor gente, si quieren editar este thread para hacerlo "mejor y más colorido". Envienme el code por mp

Edited by Guest
Link to comment
No quiero desvirtuar el tema, pero recuerda que pocos en este foro saben LUA como para jugar.... a lo maximo creo que hay 3 que estan para un juego asi (SolidSnake14, Edikosh998 y tu)

Se supone que seran cosas no dificiles, y venga, no digas que yo se, si sé menos que vos.

Link to comment
addCommandHandler ( "mtafan", 
    function ( thePlayer ) 
        local x, y, z = getElementPosition ( thePlayer ) 
        outputChatBox ( "X = ".. ( x + 20 ) ..", Y = ".. ( y + 20 ) ..", Z = ".. z, thePlayer, 0, 255, 0 ) 
    end 
) 

Link to comment

este juego es atrayente para los que sean expertos en .lua, pero en canvio los que no saven nada o un poco, no podran jugar, eso si, podrian aprender mirando los scripts, aprendiendo el orden y a lo mejor al guno pregunta, porque esta esto aqui y no alli? y puede avanzar con el lua

Link to comment
addCommandHandler ( "mtafan", 
    function ( thePlayer ) 
        local x, y, z = getElementPosition ( thePlayer ) 
        outputChatBox ( "X = ".. ( x + 20 ) ..", Y = ".. ( y + 20 ) ..", Z = ".. z, thePlayer, 0, 255, 0 ) 
    end 
) 

Está bien, pero la idea es mostrar en el chat las coordenadas reales y moverlo a las coordenadas +20.

Así que todavía pueden seguir participando

Link to comment
addCommandHandler ( "mtafan", 
    function ( thePlayer ) 
        local x, y, z = getElementPosition ( thePlayer ) 
        outputChatBox ( "X = ".. ( x + 20 ) ..", Y = ".. ( y + 20 ) ..", Z = ".. z, thePlayer, 0, 255, 0 ) 
    end 
) 

Está bien, pero la idea es mostrar en el chat las coordenadas reales y moverlo a las coordenadas +20.

Así que todavía pueden seguir participando

addCommandHandler ( "mtafan", 
    function ( thePlayer ) 
        local x, y, z = getElementPosition ( thePlayer ) 
        outputChatBox ( "X = .."x".., "Y = .."y".., "Z = .."z", thePlayer, 0, 255, 0 ) 
    setElementPosition ( thePlayer, x + 20, y + 20, z ) 
    end 
end 
) 
  
 

Asi?

PD: A decir verdad yo tampoco entendia la tarea, por mi hubiese hecho lo mismo que Solid...

Edited by Guest
Link to comment

Quizás me expressé mal, pero esa era mi idea. De todas formas, te daré un punto solo, debido a que hay un error en el ChatBox con el tema de los "", y el texto. Pusiste como texto el concatenante de y, en vez de ponerlo afuera. Lo mismo. Pusiste Y = afuera del "", te tiraría error/warning. Pero me entendiste.

Soldi también tiene 1 punto

Tu tarea, por favor.

Link to comment
Quizás me expressé mal, pero esa era mi idea. De todas formas, te daré un punto solo, debido a que hay un error en el ChatBox con el tema de los "", y el texto. Pusiste como texto el concatenante de y, en vez de ponerlo afuera. Lo mismo. Pusiste Y = afuera del "", te tiraría error/warning. Pero me entendiste.

Soldi también tiene 1 punto

Tu tarea, por favor.

es que lo hice en el movil xD, mm... tarea.... que tal, un sistema de golpe repercutido, que al ser dañado, te quite 10 mas de vida cada 30 segundos??

Link to comment
Quizás me expressé mal, pero esa era mi idea. De todas formas, te daré un punto solo, debido a que hay un error en el ChatBox con el tema de los "", y el texto. Pusiste como texto el concatenante de y, en vez de ponerlo afuera. Lo mismo. Pusiste Y = afuera del "", te tiraría error/warning. Pero me entendiste.

Soldi también tiene 1 punto

Tu tarea, por favor.

es que lo hice en el movil xD, mm... tarea.... que tal, un sistema de golpe repercutido, que al ser dañado, te quite 10 mas de vida cada 30 segundos??

No, debes pedir algo simple. Una especie de script, NO UN SISTEMA

Link to comment
uso la palabra sistema por que en el movil da flojera escribir script, pero por como lo imagino, a de ser simple, solo un script que te quite 10 de vida cada 30 segundos a partir del primero golpe...

A aprtir de que golpe?

del que sea un golpe cualqiera

Link to comment
  
-- Tarea Nº2 :que tal, un sistema de golpe repercutido, que al ser dañado, te quite 10 mas de vida cada 30 segundos?? 
function CheckTheHealth() 
     vida = getElementHealth ( getLocalPlayer() ) 
end 
  
function Hitit() 
     if (vida>10) 
          setElementHealth ( getLocalPlayer() , vida-10 ) 
     else 
          outputChatBox("Los ataques pararon. Estás en coma!", 255, 255, 255, true) 
          killTimer(timer) 
     end 
end 
  
  
  
function Golpe() 
     setTimer ( CheckTheHealth, 50, 0 ) 
     if vida<100 then 
          timer = setTimer ( Hitit, 30000, 0) 
     end 
end 
  
addEventHandler ("onClientResourceStart", getRootElement( ), Golpe)    

Link to comment
  
-- Tarea Nº2 :que tal, un sistema de golpe repercutido, que al ser dañado, te quite 10 mas de vida cada 30 segundos?? 
function CheckTheHealth() 
     vida = getElementHealth ( getLocalPlayer() ) 
end 
  
function Hitit() 
     if (vida>10) 
          setElementHealth ( getLocalPlayer() , vida-10 ) 
     else 
          outputChatBox("Los ataques pararon. Estás en coma!", 255, 255, 255, true) 
          killTimer(timer) 
     end 
end 
  
  
  
function Golpe() 
     setTimer ( CheckTheHealth, 50, 0 ) 
     if vida<100 then 
          timer = setTimer ( Hitit, 30000, 0) 
     end 
end 
  
addEventHandler ("onClientResourceStart", getRootElement( ), Golpe)    

Edit: wow! error tras error men

Link to comment

Da, hoy tuve partido y me perdi de esto xD...

  
  
function dañoVida(attacker,weapon) 
  
    local vida = getElementHealth(source) 
    timerDaño = setTimer(function() setElementHealth(source,vida-10) end,5000,0) 
     
     
end 
addEventHandler("onPlayerDamage",root,dañoVida) 
  
function enMuerto() 
  
    if isTimer(timerDaño) then 
    killTimer(timerDaño) 
    end 
end 
addEventHandler("onPlayerWasted",root,enMuerto) 
  
  

Creo que es asi lo que buscas :D:D

Link to comment
Da, hoy tuve partido y me perdi de esto xD...
  
  
function dañoVida(attacker,weapon) 
  
    local vida = getElementHealth(source) 
    timerDaño = setTimer(function() setElementHealth(source,vida-10) end,5000,0) 
     
     
end 
addEventHandler("onPlayerDamage",root,dañoVida) 
  
function enMuerto() 
  
    if isTimer(timerDaño) then 
    killTimer(timerDaño) 
    end 
end 
addEventHandler("onPlayerWasted",root,enMuerto) 
  
  

Creo que es asi lo que buscas :D:D

No ando en mi PC, pero creo que si esta bueno...

Link to comment
function danoVida(attacker,weapon) 
  
    local vida = getElementHealth(source) 
    timerDano = setTimer(function() setElementHealth(localPlayer,vida-10) end,5000,0) 
    outputChatBox("Sufriste daño") 
    
    
end 
addEventHandler("onClientPlayerDamage",getRootElement(),danoVida) 
  

Ahi funca perfecto

Despues podes killear el timer, usando onClientPlayerWasted...como lo puse en el otro script.

Link to comment
function danoVida(attacker,weapon) 
  
    local vida = getElementHealth(source) 
    timerDano = setTimer(function() setElementHealth(localPlayer,vida-10) end,5000,0) 
    outputChatBox("Sufriste daño") 
    
    
end 
addEventHandler("onClientPlayerDamage",getRootElement(),danoVida) 
  

Ahi funca perfecto

Despues podes killear el timer, usando onClientPlayerWasted...como lo puse en el otro script.

Hay un error, antes de morir le sube la vida a como estaba antes del golpe...

Link to comment
  
  
function danoVida(attacker,weapon) 
  
    
    timerDano = setTimer(function()  local vida = getElementHealth(localPlayer) setElementHealth(localPlayer,vida-1) end,1000,0) 
    outputChatBox("Sufriste daño") 
    
    
end 
addEventHandler("onClientPlayerDamage",getRootElement(),danoVida) 
  
function enMuerto() 
  
    if isTimer(timerDano) then 
    killTimer(timerDano) 
    end 
end 
addEventHandler("onClientPlayerWasted",root,enMuerto) 
  
  
  

Link to comment
Ahora no estoy en mi casa. Cuando llego lo testeo, y si funciona, van dos puntetes para vos y un -1 para mi.

Yo lo Hice, todo perfecto, pero al morir el timer sigue avanzando y uno sigue perdiendo vida....

Es que me parece que entonces hay que usar destroyElement..

De todas formas. Te toca colocar tu task pues funciona. Te doy un punto.

A mi -1 :D

Link to comment
  • Recently Browsing   0 members

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