Jump to content

Por que no funciona.


Bc#

Recommended Posts

Tengo un problema al ocupar este resource: https://community.multitheftauto.com/index.php?p= ... ls&id=5812

@ElMota en este post: https://forum.multitheftauto.com/viewtop ... ee#p481332

Pudo aclarar su duda pero cuando yo pruebo el script no me funciona.

¿Como lo puedo reparar?

function giveMoneyWinDie() 
    local account = getPlayerAccount(source); 
    local playersAlive = getAliveGuys(2); 
    local playersDead = getDeadGuys(); 
    local pAll = playersAlive + playersDead; 
    local checkYourPos = pAll - playersDead; 
    local pos = nil; 
    if tonumber(checkYourPos) == 1 then pos = 1 else pos = checkYourPos + 1; end 
    if tonumber(checkYourPos) == 2 then pos = 2; end 
    if pos == 1 or pos == 21 or pos == 31 then 
        posName = "st"; 
    elseif pos == 2 or pos == 22 or pos == 32 then 
        posName = "nd"; 
    elseif pos == 3 or pos == 23 or pos == 33 then 
        posName = "rd"; 
    else 
        posName = "th"; 
    end 
    if not getElementData(source,"gotMoney") then 
        local money = math.ceil(getPlayerCount()*50 / pos); 
        givePlayerMoney(source,money); 
        outputChatBox("* You were #abcdef[#ff0000"..pos..posName.."#abcdef]#ffffff and #abcdefearned #ffffff"..money.."#00ff00$!",source,255,255,255,true); 
        exports["Evo-notificaciones"]:showBox("info","test"); 
        setElementData(source,"gotMoney",true); 
        if account then 
            setAccountData(account,"money", tostring(getPlayerMoney(source))); 
        end 
    end 
end 
addEventHandler("onPlayerWasted",getRootElement(),giveMoneyWinDie) 

Link to comment

Yo se como mostrarlo a un solo jugador, se usa

getPlayerName(player) 

¿pero como hago para mostrarlo a todos?

PD: Probé con esto y no funcionó.

        exports["Evo-notificaciones"]:showBox("getPlayerName(source)", "info","Terminaste ["..pos..posName.."] y Ganó $"..money.."!"); 

Link to comment

Esta mal, no se usa getPlayerName, se usa el elemento del jugador, en este caso seria 'player', para mostrarselo a todos vas a tener que hacer un for-loop.

for _, player_ in ipairs ( getElementsByType ( "player" ) ) do 
        exports["Evo-notificaciones"]:showBox(player_, "info",getPlayerName ( player ) .." termino ["..pos..posName.."] y ganó $"..money.."!") 
end 

Link to comment

Para mostrarlo a todos funciona perfectamente pero al mostrar a la persona que realiza una accion no funciona al hacer esto:

exports["Evo-notificaciones"]:showBox("player", "info","Terminaste ["..pos..posName.."] y Ganó $"..money.."!"); 

Link to comment

Thats that you use my panel :P

function giveMoneyWinDie ( ) 
    local account = getPlayerAccount ( source ); 
    local playersAlive = getAliveGuys ( 2 ); 
    local playersDead = getDeadGuys ( ); 
    local pAll = playersAlive + playersDead; 
    local checkYourPos = pAll - playersDead; 
    local pos = nil; 
    if tonumber ( checkYourPos ) == 1 then pos = 1 else pos = checkYourPos + 1; end 
    if tonumber ( checkYourPos ) == 2 then pos = 2; end 
    if pos == 1 or pos == 21 or pos == 31 then 
        posName = "st"; 
    elseif pos == 2 or pos == 22 or pos == 32 then 
        posName = "nd"; 
    elseif pos == 3 or pos == 23 or pos == 33 then 
        posName = "rd"; 
    else 
        posName = "th"; 
    end 
    if not getElementData ( source, "gotMoney" ) then 
        local money = math.ceil ( getPlayerCount ( ) * 50 / pos ); 
        givePlayerMoney ( source, money ); 
        outputChatBox ( "* You were #abcdef[#ff0000" .. pos .. posName .. "#abcdef]#ffffff and #abcdefearned #ffffff" .. money .. "#00ff00$!", source, 255, 255, 255, true ); 
        for _, player_ in ipairs ( getElementsByType ( "player" ) ) do 
            exports["Evo-notificaciones"]:showBox ( player_, "info", getPlayerName ( player_ ) .. " #fffffftermino #abcdef[#ff0000" .. pos .. posName .. "#abcdef] #ffffffy gano #00ff00$" .. money .. "!" ); 
        end 
        setElementData ( source, "gotMoney", true ); 
        if account then 
            setAccountData (account, "money", tostring ( getPlayerMoney ( source ) ) ); 
        end 
    end 
end 
addEventHandler ( "onPlayerWasted", root , giveMoneyWinDie ) 

For color codes:

Open Evo-notificaciones

Open box_c.lua

replace dxDrawText on:

dxDrawText (tipBox.string,textX,textY,textX+textWidth,textY+textHeight,tocolor(222,222,222),1,"default-bold","center","center",false,true,true,true) 

eebfb866e639.jpg

Edited by Guest
Link to comment
Para mostrarlo a todos funciona perfectamente pero al mostrar a la persona que realiza una accion no funciona al hacer esto:
exports["Evo-notificaciones"]:showBox("player", "info","Terminaste ["..pos..posName.."] y Ganó $"..money.."!"); 

Eso es porque pusiste las comillas, no necesita un string, necesita un elemento, quitale las comillas.

Link to comment
  • Recently Browsing   0 members

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