Jump to content

[Ayuda] script para transferir dinero


UserToDelete

Recommended Posts

SYNTAX: /givem [player] [ammount]

FUNC: Que pase el dinero desde la cuenta del que lo transfiere al que escriba, pero si alguien se llama "venadHD" que solo al poner "/givem ven 20" ya me transfiera 20$ y nose como hacerlo :cry::cry:

  
function transfer (ss223,ss253) 
    if (string.find(ss223) then 
        givePlayerMoney(ss223,ss253) 
end 
end 
addCommandHandler("givem",transfer) 
  

Link to comment
  
function transfer (name,ss253) 
local name = name and name:gsub("#%x%x%x%x%x%x", ""):lower() or nil 
    if name then 
        for _, player in ipairs(getElementsByType("player")) do 
            local name_ = getPlayerName(player):gsub("#%x%x%x%x%x%x", ""):lower() 
            if name_:find(name, 1, true) then 
                return player 
                givePlayerMoney(name,ss253) 
                takePlayerMoney(source,ss253) 
            end 
        end 
    end 
end 
addCommandHandler("givem",transfer) 
  

Seria algo talque asi? nunca usé funciones utiles de la wiki, y tampoco se ubicarlas mucho..

O seria algo asi?

  
function getPlayerFromPartialName(name) 
    local name = name and name:gsub("#%x%x%x%x%x%x", ""):lower() or nil 
    if name then 
        for _, player in ipairs(getElementsByType("player")) do 
            local name_ = getPlayerName(player):gsub("#%x%x%x%x%x%x", ""):lower() 
            if name_:find(name, 1, true) then 
                return player 
            end 
        end 
    end 
end 
function transfer (source, ss258, dinero) 
 SS2 = getPlayerFromPartialName(ss258) 
 SS = takePlayerMoney(source,dinero) 
 SS2 = getPlayerFromPartialName(ss258) 
 if SS == true then 
  outputChatBox("Transferido",source,0,255,0,true) 
  givePlayerMoney(ss258,dinero) 
 else 
  outputChatBox("No tienes suficiente dinero",source,255,0,0,true) 
 end 
end 
addCommandHandler("givem",transfer) 
  

Cual de las dos maneras me sirve? y paara que me sirven exactamente las usefull functions? añaden functions como getPlayerName ()?

Edited by Guest
Link to comment
Hidden
function getPlayerFromPartialName(name) 
    local name = name and name:gsub("#%x%x%x%x%x%x", ""):lower() or nil 
    if name then 
        for _, player in ipairs(getElementsByType("player")) do 
            local name_ = getPlayerName(player):gsub("#%x%x%x%x%x%x", ""):lower() 
            if name_:find(name, 1, true) then 
                return player 
            end 
        end 
    end 
end 
  
function transfer (ss223,ss253) 
    local player = getPlayerFromPartialName(ss223) 
      if player then 
        givePlayerMoney(player ,ss253) 
      end 
end 
addCommandHandler("givem",transfer) 

Prueba con algo así, de todas formas podría tener sus fallas.

Link to comment
function getPlayerFromPartialName(name) 
    local name = name and name:gsub("#%x%x%x%x%x%x", ""):lower() or nil 
    if name then 
        for _, player in ipairs(getElementsByType("player")) do 
            local name_ = getPlayerName(player):gsub("#%x%x%x%x%x%x", ""):lower() 
            if name_:find(name, 1, true) then 
                return player 
            end 
        end 
    end 
end 
  
function transfer (name, dinero) 
    player = getPlayerFromPartialName(jugador) 
    takeFromSource = takePlayerMoney(source, dinero) 
    playerName = getPlayerName(source) 
    if player then 
        if takeFromSource == true then 
            outputChatBox("Dinero transferido", source, 0, 255, 0, true) 
            givePlayerMoney(player ,dinero) 
            outputChatBox("Has recibido: "..dinero.."€ de: "..playerName, jugador, 0, 255, 0, true) 
        else 
        outputChatBox("Error2") 
        end 
    else 
    outputChatBox("Error1") 
    end 
end 
addCommandHandler("givem",transfer) 

Me da dos errores relacionados con "source"

    takeFromSource = takePlayerMoney(source, dinero) 
    playerName = getPlayerName(source) 

Link to comment
Hidden

Error mio:

function getPlayerFromPartialName(name) 
    local name = name and name:gsub("#%x%x%x%x%x%x", ""):lower() or nil 
    if name then 
        for _, player in ipairs(getElementsByType("player")) do 
            local name_ = getPlayerName(player):gsub("#%x%x%x%x%x%x", ""):lower() 
            if name_:find(name, 1, true) then 
                return player 
            end 
        end 
    end 
end 
  
function transfer (source, _, name, dinero) 
    dinero = tonumber(dinero) or 0 
    player = getPlayerFromPartialName(name) 
    takeFromSource = takePlayerMoney(source, dinero) 
    playerName = getPlayerName(source) 
    if player then 
        if takeFromSource == true then 
            outputChatBox("Dinero transferido", source, 0, 255, 0, true) 
            givePlayerMoney(player ,dinero) 
            outputChatBox("Has recibido: "..dinero.."€ de: "..playerName, jugador, 0, 255, 0, true) 
        else 
        outputChatBox("Error2") 
        end 
    else 
    outputChatBox("Error1") 
    end 
end 
addCommandHandler("givem",transfer) 

* Perdón por el formato de las etiquetas lua, pero sin importar como lo intente, siguen apareciendo así.

Link to comment

por ejemplo, hay 3 jugadores

venadHD

jake

paloman

si yo escribo "/givem a 100" le da el dinero a 2 jugadores en vez de a 1

Como hago para que solo sea uno?

function transfer (source, _, name, dinero) 
    dinero2 = tonumber(dinero) or 0 
    player = getPlayerFromPartialName(name) 
    takeFromSource = takePlayerMoney(source, dinero2) 
    playerName = getPlayerName(source) 
    if player then 
        if takeFromSource == true then 
            outputChatBox("Dinero transferido", source, 0, 255, 0, true) 
            givePlayerMoney(player ,dinero) 
            outputChatBox("Has recibido: "..dinero2.."$ de: "..playerName, player, 0, 255, 0, true) 
        else 
        outputChatBox("Error") 
        end 
    else 
    outputChatBox("Error") 
    end 
end 
addCommandHandler("givem",transfer) 

Nada , nada, solo coge un jugador

Link to comment
  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...