Ir para conteúdo
  • 0

Pedido Script Rank Vodkart.


viitiinhoow3

Pergunta

Vodkart, você poderia juntar esses 2 rank

 

esse éo seu

 

local config = {
MaxPlayer = 20,
fight_skills = {
    ['fist'] = 0,
    ['club'] = 1,
    ['sword'] = 2,
    ['axe'] = 3,
    ['distance'] = 4,
    ['shielding'] = 5,
    ['fishing'] = 6,
    ['dist'] = 4,
    ['shield'] = 5,
    ['fish'] = 6,
},
other_skills = {
[''] = "level",
['level'] = "level",
['magic'] = "maglevel",
['health'] = "healthmax",
['mana'] = "manamax"
},
vocations = {
['sorcerer'] = {1,5},
['druid'] = {2,6},
['paladin'] = {3,7},
['knight'] = {4,8}
},
storages = {
['frags'] = 824544
}
}
function onSay(cid, words, param)
local param,str = string.lower(param),""
if not config.fight_skills[param] and not config.other_skills[param] and not config.vocations[param] and  not config.storages[param] then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "este rank não existe.") return true
end
str = "--[ RANK "..(param == "" and "LEVEL" or string.upper(param)).." ]--\n\n"
query = config.fight_skills[param] and db.getResult("SELECT `player_id`, `value` FROM `player_skills` WHERE `skillid` = "..config.fight_skills[param].." ORDER BY `value` DESC;") or config.other_skills[param] and db.getResult("SELECT `name`, `"..config.other_skills[param].."` FROM `players` WHERE `id` > 6 AND `group_id` < 2 ORDER BY `"..config.other_skills[param].."` DESC, `name` ASC;") or config.storages[param] and db.getResult("SELECT `player_id`, `value` FROM `player_storage` WHERE `key` = "..config.storages[param].." ORDER BY cast(value as INTEGER) DESC;") or db.getResult("SELECT `name`, `level` FROM `players` WHERE `group_id` <= 2 AND `vocation` = "..config.vocations[param][1].." or `vocation` = "..config.vocations[param][2].." ORDER BY `level` DESC;")
if (query:getID() ~= -1) then
k = 1
while true do
str = str .. "\n " .. k .. ". "..(config.fight_skills[param] and getPlayerNameByGUID(query:getDataString("player_id")) or config.storages[param] and getPlayerNameByGUID(query:getDataString("player_id")) or query:getDataString("name")).." - [" .. query:getDataInt((config.fight_skills[param] and "value" or config.storages[param] and "value" or config.vocations[param] and "level" or config.other_skills[param])) .. "]"
k = k + 1
if not(query:next()) or k > config.MaxPlayer then
break
end
end
query:free()
end
doShowTextDialog(cid,6500, str)
return true
end

 

esse éo de reset que eu uso

 

function getPlayerNameByGUID2(n)
    local c = db.getResult("SELECT `name` FROM `players` WHERE `id` = "..n..";")
    if c:getID() == -1 then
		    return "SQL_ERROR["..n.."]"
    end
		    return c:getDataString("name")
    end
function onSay(cid, words, param)
    local max = 20
    local letters_to_next = 20
local skills = {
    ['fist'] = 0,
    ['club'] = 1,
    ['sword'] = 2,
    ['axe'] = 3,
    ['distance'] = 4,
    ['shielding'] = 5,
    ['fishing'] = 6,
    ['dist'] = 4,
    ['shield'] = 5,
    ['fish'] = 6,
}
   local name_now
    local name = "Rank de level, reset e skills.\n"
    local rkn = 0
    local no_break = 0
		    param = string.lower(param)
		    dofile('config.lua')
   if param == "" or param == "level" and ( param ~= "magic" and param == "ml") and skills[param] == nil then
		    name = name.."\n"
		    name = name.."Rank Level - Nome do Jogador\n"
    local v = db.getResult("SELECT `name`, `level`, `experience` FROM `players` WHERE `group_id` <= 2 ORDER BY `experience` DESC LIMIT 0,"..(max)..";")
    repeat
		    no_break = no_break +1
    if v:getID() == -1 then
    break
    end
		    rkn = rkn+1
		    name_now, l = v:getDataString("name"), string.len(v:getDataString("name"))
		    space = ""
    for i=1, letters_to_next-l do
		    space = space.." "
    end
		    name = name..rkn..". "..v:getDataInt("level") .."  -  "..name_now..space.." ".."\n"
    if no_break >= 20 then
    break
    end
    until v:next() == false
    elseif param == "magic" or param == "ml" then
		    name = name.."\n"
		    name = name.."Rank Magic - Nome do Jogador\n"
    local v = db.getResult("SELECT `name`, `level`, `maglevel` FROM `players` WHERE `group_id` <= 2 ORDER BY `maglevel` DESC LIMIT 0,"..(max)..";")
    repeat
    if v:getID() == -1 then
    break
    end
		    rkn = rkn+1
		    name_now, l = v:getDataString("name"), string.len(v:getDataString("name"))
		    space = ""
    for i=1, letters_to_next-l do
		    space = space.." "
    end
		    name = name..rkn..". "..v:getDataInt("maglevel").."  -  "..name_now..space.." ".." ".."".."\n"
    until v:next() == false
	  elseif param == "reset" or param == "resets" then
		    name = name.."\n"
		    name = name.."Rank Reset - Nome do Jogador\n"
    local v = db.getResult("SELECT `name`, `level`, `reset` FROM `players` WHERE `group_id` <= 2 ORDER BY `reset` DESC LIMIT 0,"..(max)..";")
    repeat
    if v:getID() == -1 then
    break
    end
		    rkn = rkn+1
		    name_now, l = v:getDataString("name"), string.len(v:getDataString("name"))
		    space = ""
    for i=1, letters_to_next-l do
		    space = space.." "
    end
		    name = name..rkn..". "..v:getDataInt("reset").."  -  "..name_now..space.." ".." ".."".."\n"
    until v:next() == false

    elseif skills[param] ~= nil then
		    name = name.."\n"
		    name = name.."Rank "..param.." fighting - Nome do Jogador\n"
    local v = db.getResult("SELECT `player_id`, `value` FROM `player_skills` WHERE `skillid` = "..skills[param].." ORDER BY `value` DESC;")
    local kk = 0
    repeat
    if kk == max or v:getID() == -1 then
    break
    end
		    kk = kk+1
		    name_now, l = getPlayerNameByGUID2(v:getDataInt("player_id")), string.len(getPlayerNameByGUID2(v:getDataInt("player_id")))
		    space = ""
    for i=1, letters_to_next-l do
		    space = space.." "
    end
    if name_now == nil then
		    name_now = 'sql error['..v:getDataInt("player_id")..']'
    end
		    name = name..kk..". "..v:getDataInt("value").."  -  "..name_now..space.." \n"
    until v:next() == false
    end
    if name ~= "Highscore\n" then
		    doPlayerPopupFYI(cid, name)
    end
    return TRUE
end

 

REP+ qm ajuda tambem xd

Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0
local config = {
MaxPlayer = 20,
fight_skills = {
		['fist'] = 0,
		['club'] = 1,
		['sword'] = 2,
		['axe'] = 3,
		['distance'] = 4,
		['shielding'] = 5,
		['fishing'] = 6,
		['dist'] = 4,
		['shield'] = 5,
		['fish'] = 6,
},
other_skills = {
[''] = "level",
['level'] = "level",
['magic'] = "maglevel",
['health'] = "healthmax",
['mana'] = "manamax",
['reset'] = "reset"
},
vocations = {
['sorcerer'] = {1,5},
['druid'] = {2,6},
['paladin'] = {3,7},
['knight'] = {4,8}
},
storages = {
['frags'] = 824544
}
}
function onSay(cid, words, param)
local param,str = string.lower(param),""
if not config.fight_skills[param] and not config.other_skills[param] and not config.vocations[param] and  not config.storages[param] then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "este rank não existe.") return true
end
str = "--[ RANK "..(param == "" and "LEVEL" or string.upper(param)).." ]--\n\n"
query = config.fight_skills[param] and db.getResult("SELECT `player_id`, `value` FROM `player_skills` WHERE `skillid` = "..config.fight_skills[param].." ORDER BY `value` DESC;") or config.other_skills[param] and db.getResult("SELECT `name`, `"..config.other_skills[param].."` FROM `players` WHERE `id` > 6 AND `group_id` < 2 ORDER BY `"..config.other_skills[param].."` DESC, `name` ASC;") or config.storages[param] and db.getResult("SELECT `player_id`, `value` FROM `player_storage` WHERE `key` = "..config.storages[param].." ORDER BY cast(value as INTEGER) DESC;") or db.getResult("SELECT `name`, `level` FROM `players` WHERE `group_id` <= 2 AND `vocation` = "..config.vocations[param][1].." or `vocation` = "..config.vocations[param][2].." ORDER BY `level` DESC;")
if (query:getID() ~= -1) then
k = 1
while true do
str = str .. "\n " .. k .. ". "..(config.fight_skills[param] and getPlayerNameByGUID(query:getDataString("player_id")) or config.storages[param] and getPlayerNameByGUID(query:getDataString("player_id")) or query:getDataString("name")).." - [" .. query:getDataInt((config.fight_skills[param] and "value" or config.storages[param] and "value" or config.vocations[param] and "level" or config.other_skills[param])) .. "]"
k = k + 1
if not(query:next()) or k > config.MaxPlayer then
break
end
end
query:free()
end
doShowTextDialog(cid,6500, str)
return true
end

Editado por Vodkart
Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...