Ir para conteúdo

Featured Replies

  • Respostas 37
  • Visualizações 1.5k
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • Depois de tanto tempo consegui:   como usar: /ban nome,coment,dias ou /ban nome, comentario ou ainda: /ban nome Pode usar tanto em jogadores off ou online     Espero ter ajudado.

  • Eu tenho por hora: coloca isso    <td>' . date("j/m/Y, g:i a", $ban['expires_at']) . '<br /></td> no lugar de     <td>' . $zodis . '<br /></td>

  • Ve essa: é a que estou usando  

Postado

String.Explode é uma função adicionada, não é nativa do lua.

string.trim = function (str)
	return str:gsub("^%s*(.-)%s*$", "%1")
end

string.explode = function (str, sep, limit)
	if(type(sep) ~= 'string' or isInArray({tostring(str):len(), sep:len()}, 0)) then
		return {}
	end

	local i, pos, tmp, t = 0, 1, "", {}
	for s, e in function() return string.find(str, sep, pos) end do
		tmp = str:sub(pos, s - 1):trim()
		if tmp ~= "" then               --alterado v1.8
		   table.insert(t, tmp)
        end
		pos = e + 1

		i = i + 1
		if(limit ~= nil and i == limit) then
			break
		end
	end

	tmp = str:sub(pos):trim()
	if tmp ~= "" then              --alterado v1.8
       table.insert(t, tmp)
    end
	return t
end

Editado por Gabrielbsales (veja o histórico de edições)

Att. Featzen.

Postado

@Gabrielbsales, oque eu quis dizer é que ela é feita somente com base nas próprias funções da linguagem, não tem nenhum comando da source nela e por conta disso ela é utilizada amplamente, é uma das primeiras coisas que as pessoas fazem quando criam a source/lib mas não sabia que mudaram o nome pra string.split em 1.0; 

Todos os meus trabalhos importantes estão na seção "Sobre mim" no meu perfil; Dá uma passada lá!

"Há três caminhos para o fracasso: não ensinar o que se sabe, não praticar o que se ensina, e não perguntar o que se ignora." - São Beda

I7Pm6ih.png

(obg ao @Beeny por fazer essa linda sign <3)

Postado

Mas string split é outra função(deveria ser a mesma coisa):

string.split = function (str)
local t = {}
return not str:gsub("%w+", function(s) table.insert(t, s) return "" end):find("%S") and t or {}
end

Não tem as mesmas propriedades. 

.-.

 

Editado por Gabrielbsales (veja o histórico de edições)

Att. Featzen.

Postado

Depois de tanto tempo consegui:

Mostrar conteúdo oculto
string.trim = function (str)
return str:gsub("^%s*(.-)%s*$", "%1")
end
 
string.explode = function (str, sep, limit)
if(type(sep) ~= 'string' or isInArray({tostring(str):len(), sep:len()}, 0)) then
return {}
end
 
local i, pos, tmp, t = 0, 1, "", {}
for s, e in function() return string.find(str, sep, pos) end do
tmp = str:sub(pos, s - 1):trim()
table.insert(t, tmp)
pos = e + 1
 
i = i + 1
if(limit ~= nil and i == limit) then
break
end
end
 
tmp = str:sub(pos):trim()
table.insert(t, tmp)
return t
end
 
function onSay(cid, words, param, channel)
local t = string.explode(string.lower(param), ",")
local player = Player(cid)
if not player:getGroup():getAccess() then
return true
end
 
local accountId = getAccountNumberByPlayerName(t[1])
if (accountId == 0) or (not t[1]) then
doPlayerSendCancel(cid,"Insira um nome valido")
return true
end
 
local resultId = db.storeQuery("SELECT 1 FROM `account_bans` WHERE `account_id` = " .. accountId)
if resultId ~= false then
result.free(resultId)
return false
end
 
 
local coment,banDays = t[2],tonumber(t[3])
if (not t[2])then
coment = "Quebra de regra"
end
if (not tonumber(t[3])) then
banDays = 7
end
 
local timeNow = os.time()
db:query("INSERT INTO `account_bans` (`account_id`, `reason`, `banned_at`, `expires_at`, `banned_by`) VALUES (" ..
accountId .. ", '"..coment.."', " .. timeNow .. ", " .. timeNow + (banDays * 86400) .. ", " .. player:getGuid() .. ")")
 
local target = Player(t[1])
if target then
for _, pid in ipairs(Game.getPlayers()) do
pid:sendTextMessage(MESSAGE_STATUS_WARNING, "" .. getPlayerName(cid) .. ": A conta do jogador ".. t[1].. " foi banida por "..banDays.." dias. Motivo: "..coment..".")
end
target:remove()
else
for _, pid in ipairs(Game.getPlayers()) do
pid:sendTextMessage(MESSAGE_STATUS_WARNING, "" .. getPlayerName(cid) .. ": A conta do jogador ".. t[1].. " foi banida por "..banDays.." dias. Motivo: "..coment..".")
end
end
end

 
como usar:
/ban nome,coment,dias

ou

/ban nome, comentario

ou ainda:

/ban nome

Pode usar tanto em jogadores off ou online

 

 

Espero ter ajudado. :P

 

Editado por narazaky (veja o histórico de edições)

Te ajudei? Então Rep + ;)

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.7k

Informação Importante

Confirmação de Termo