MainSCR

Members
  • Content count

    32
  • Joined

  • Last visited

Community Reputation

4 Neutral

7 Followers

About MainSCR

  • Rank
    Rat

Details

  • Location
    Brazil

Recent Profile Visitors

1,006 profile views
  1. MainSCR

    Alguem sabe fazer esse Scripting?

    Entendi, agradeço pelo conselho.
  2. MainSCR

    Alguem sabe fazer esse Scripting?

    Nunca tive problemas em programar assim, se você já viu algo sobre isso me informe por favor. addEventHandler("onPlayerLogin", root, function(_, theCurrentAccount) local dataFirstLogin = getAccountData(theCurrentAccount, "firstLogin") if not dataFirstLogin then givePlayerMoney(source, 10000) setAccountData(theCurrentAccount, "firstLogin", true) end end) Já que os amigos disse que gera conflito, pode usar deste modo.
  3. MainSCR

    Alguem sabe fazer esse Scripting?

    Só irá haver conflito se estiver outra função com mesmo nome .-.
  4. MainSCR

    Alguem sabe fazer esse Scripting?

    function onPlayerLogin(_, theCurrentAccount) local dataFirstLogin = getAccountData(theCurrentAccount, "firstLogin") if not dataFirstLogin then givePlayerMoney(source, 10000) setAccountData(theCurrentAccount, "firstLogin", true) end end addEventHandler("onPlayerLogin", root, onPlayerLogin)
  5. MainSCR

    Duvida objeto

    Isso é um pickup, para criar usa-se createPickup
  6. MainSCR

    Ajuda para otimizar

    Ah verdade, já corrigi, muito obrigado @DNL291
  7. MainSCR

    Ajuda para otimizar

    @DNL291 Na real foi pra ver se realmente o código estava bem otimizado, eu corrigi o código com essas dicas, não entendi a parte do ´Edit´ que você disse.
  8. MainSCR

    Ajuda para otimizar

    Muito obrigado, vou rever com calma pra tentar sugar algo kk.
  9. MainSCR

    Ajuda para otimizar

    Obrigado @Lord Henry pelas dicas.
  10. MainSCR

    Ajuda para otimizar

    function onPlayerCommand(command) if command == "msg" then cancelEvent() outputChatBox("Use o comando /pm em vez deste comando", source, 255, 0, 0) playSoundFrontEnd(source, 40) end end addEventHandler("onPlayerCommand", root, onPlayerCommand) local blockPM = {} local replyPM = {} local timePM = {} local timeReply = {} function privateMessage(player, command, target, ...) local target = getPlayerFromPartialName(target) if timePM[player] then local tempo = math.floor(getTimerDetails(timePM[player])/1000) outputChatBox("#0080FF[PM] #FF1717ERROR: #FFFFFFEspere "..tempo.." segundos para enviar outra mensagem", player, 255, 255, 255, true) playSoundFrontEnd(player, 40) return end if blockPM[target] then outputChatBox("#0080FF[PM] #FF1717ERROR: #FFFFFFEste jogador bloqueou o recebimento de mensagens", player, 255, 255, 255, true) playSoundFrontEnd(player, 40) return end if target == player then outputChatBox("#0080FF[PM] #FF1717ERROR: #FFFFFFVocê não pode enviar mensagem para si mesmo", player, 255, 255, 255, true) playSoundFrontEnd(player, 40) return end local text = table.concat({...}, " ") if text ~= "" then if isElement(target) then outputChatBox("#0080FF[PM] recebida de #FFFFFF"..getPlayerName(player).."#FFFFFF: "..text, target, 255, 255, 255, true) outputChatBox("#0080FF[PM] para #FFFFFF"..getPlayerName(target).."#FFFFFF: "..text, player, 255, 255, 255, true) replyPM[player] = target replyPM[target] = player triggerClientEvent(target, "playNotifyPM", resourceRoot) timePM[player] = setTimer(function() timePM[player] = false end, 3000, 1, player) else outputChatBox("#0080FF[PM] #FF1717ERROR: #FFFFFFO jogador especificado não foi encontrado", player, 255, 255, 255, true) end else outputChatBox("#0080FF[PM] #FF1717ERROR: #FFFFFFSYNTAX: /pm <jogador> <mensagem>", player, 255, 255, 255, true) end end addCommandHandler("pm", privateMessage) function replyMessage(player, command, ...) local target = replyPM[player] if timeReply[player] then local tempo = math.floor(getTimerDetails(timeReply[player])/1000) outputChatBox("#0080FF[PM] #FF1717ERROR: #FFFFFFEspere "..tempo.." segundos para responder outra mensagem", player, 255, 255, 255, true) playSoundFrontEnd(player, 40) return end if blockPM[target] then outputChatBox("#0080FF[PM] #FF1717ERROR: #FFFFFFEste jogador bloqueou o recebimento de mensagens", player, 255, 255, 255, true) playSoundFrontEnd(player, 40) return end local text = table.concat({...}, " ") if text ~= "" then if isElement(target) then outputChatBox("#0080FF[PM] recebida de #FFFFFF"..getPlayerName(player).."#FFFFFF: "..text, target, 255, 255, 255, true) outputChatBox("#0080FF[PM] para #FFFFFF"..getPlayerName(target).."#FFFFFF: "..text, player, 255, 255, 255, true) triggerClientEvent(target, "playNotifyPM", resourceRoot) timeReply[player] = setTimer(function() timeReply[player] = false end, 3000, 1, player) else outputChatBox("#0080FF[PM] #FF1717ERROR: #FFFFFFVocê ainda não recebeu mensagem de ninguém", player, 255, 255, 255, true) end else outputChatBox("#0080FF[PM] #FF1717ERROR: #FFFFFFSYNTAX: /re <mensagem>", player, 255, 255, 255, true) end end addCommandHandler("re", replyMessage) function blockPrivateMessage(player) if not blockPM[player] then blockPM[player] = true outputChatBox("#0080FF[PM] #FFFFFFVocê bloqueou o recebimento de mensagens", player, 255, 255, 255, true) playSoundFrontEnd(player, 1) else blockPM[player] = false outputChatBox("#0080FF[PM] #FFFFFFVocê desbloqueou o recebimento de mensagens", player, 255, 255, 255, true) playSoundFrontEnd(player, 40) end end addCommandHandler("blockpm", blockPrivateMessage) function onPlayerQuit() if blockPM[source] then blockPM[source] = nil elseif replyPM[source] then replyPM[source] = nil elseif timePM[source] then timePM[source] = nil end end addEventHandler("onPlayerQuit", root, onPlayerQuit) 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 Olá pessoal, hoje eu fiz um sistema de mensagem privada, gostaria de saber se tem algo que eu possa otimizar para melhor fluir do script, desde já agradeço.
  11. MainSCR

    Dúvidas - Banco de Dados

    @Lord Henry além de ter ajudado o rapaz, me ajudou muito também, eu tinha algumas dúvidas sobre o sql e fiquei satisfeito em ler este post, obrigado.
  12. MainSCR

    Sistema De Pegar Mensagens De Players

    Tem um resource disponível na comunidade que faz isso, talvez possa te ajudar. Segue o link: https://community.multitheftauto.com/index.php?p=resources&s=details&id=3526
  13. MainSCR

    Help Script / AJUDA PFV

    Tente isso: function finishExmanigAutoS () local veh = getPedOccupiedVehicle ( source ) if isElement ( veh ) then destroyElement ( veh ) end ac = getPlayerAccount ( source ) setAccountData ( ac, "carLicense", "1" ) setElementData ( source, "carLicense", true) outputChatBox ( "#FF0000-Auto Escola-#FFFF00Parabéns! Você passou No Teste!", source, 0, 255, 0, true ) outputChatBox ( "#FF0000-Auto Escola-#FFFF00Aqui Esta A Sua Habilitação E não quebre as regras.", source, 0, 255, 0, true ) setElementPosition (source, -2029.6142578125, -116.66015625, 1035.171875) end addEvent( "finishExmanigAuto", true ) addEventHandler( "finishExmanigAuto", getRootElement(), finishExmanigAutoS )
  14. MainSCR

    DUVIDA NA NAMETAG

    getPlayerWantedLevel() não tem argumento quando usado no client-side Você pode setar uma data com as estrelas de cada jogador no server-side setTimer(function() for i, player in pairs(getElementsByType("player")) do local wanted = getPlayerWantedLevel(player) setElementData(player, "Player:Wanted", wanted) end end end, 1000, 0) E obtê-la no client-side for k, player in pairs(getElementsByType("player", root, true)) do if (player ~= localPlayer) then local procurado = getElementData(player, "Player:Wanted") if procurado == 1 then dxDrawImage(x - 80, y - 45, v/2.9 , 15, "gfx/stargold.png", 0, 0, 0, tocolor(255, 255, 255, 255), false) end
  15. MainSCR

    divulgação mta sa

    Eu nem te conheço para querer te atacar, todo dia venho no fórum e vejo se tem algum post não respondido... em vez de falar asneira, você podia simplesmente ignorar o post.