Ir para conteúdo
  • Cadastre-se

Normal [DUIVDA] CHARACTERS CRIADOS, NASCER COM UMA CERTA STORAGE


Posts Recomendados

olá galera do tibia  king, estou aqui denovo com uma duvida

adicionei um sistema no meu otserver, e ele usa uma certa 'STORAGE'

gostaria de saber, como eu faço para colocar essa STORAGE '11548' em todos os players já estão criados no meu server, incluindo o ACCOUNT MANAGER, OS SAMPLES, no caso tenho site, e uso gesior

e no caso, de alguem criar também o 'CHARACTER' nascer já com essa STORAGE

 

alguem poderia me ajudar, ? reputarei quem puder me dar uma força para resolver o problema

 

grato deis de já a todos que ajudarem 

 

@Xagah

Editado por Micheel15 (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

Penso ser possível realizar o que deseja por meio do 'script' 'first items'.

 

Você o utiliza?

 

 

5YkRF3w.gif

 

 

 

 

 

 

CzysZUR.gifytaam6k.png

 

 

Link para o post
Compartilhar em outros sites

@Xagah meu first item é assim : 

 

 

local firstItems = {}
firstItems[0] =
{
2173,
2525,
2428,
2124,
2460,
2478,
2643
}
firstItems[1] =
{
2173,
2525,
2190,
2124,
2460,
2478,
2643
}
firstItems[2] =
{
2173,
2525,
2182,
2124,
2460,
2478,
2643
}
firstItems[3] =
{
2173,
2525,
2389,
2124,
2460,
2478,
2643
}
firstItems[4] =
{
2173,
2525,
2428,
2124,
2460,
2478,
2643
}

function onLogin(cid)
if getPlayerStorageValue(cid, 30001) == -1 then
for i = 1, table.maxn(firstItems[getPlayerVocation(cid)]) do
doPlayerAddItem(cid, firstItems[getPlayerVocation(cid)], 1)
end
if getPlayerSex(cid) == 0 then
doPlayerAddItem(cid, 2465, 1)
else
doPlayerAddItem(cid, 2465, 1)
end
local bag = doPlayerAddItem(cid, 10518, 1)
doAddContainerItem(bag, 2554, 1)
doAddContainerItem(bag, 2120, 1)
doAddContainerItem(bag, 7618, 1)
doAddContainerItem(bag, 2383, 1)
setPlayerStorageValue(cid, 30001, 1)
end
return TRUE
end

Link para o post
Compartilhar em outros sites
18 minutos atrás, Micheel15 disse:

@Xagah meu first item é assim : 

 

 

local firstItems = {}
firstItems[0] =
{
2173,
2525,
2428,
2124,
2460,
2478,
2643
}
firstItems[1] =
{
2173,
2525,
2190,
2124,
2460,
2478,
2643
}
firstItems[2] =
{
2173,
2525,
2182,
2124,
2460,
2478,
2643
}
firstItems[3] =
{
2173,
2525,
2389,
2124,
2460,
2478,
2643
}
firstItems[4] =
{
2173,
2525,
2428,
2124,
2460,
2478,
2643
}

function onLogin(cid)
if getPlayerStorageValue(cid, 30001) == -1 then
for i = 1, table.maxn(firstItems[getPlayerVocation(cid)]) do
doPlayerAddItem(cid, firstItems[getPlayerVocation(cid)], 1)
end
if getPlayerSex(cid) == 0 then
doPlayerAddItem(cid, 2465, 1)
else
doPlayerAddItem(cid, 2465, 1)
end
local bag = doPlayerAddItem(cid, 10518, 1)
doAddContainerItem(bag, 2554, 1)
doAddContainerItem(bag, 2120, 1)
doAddContainerItem(bag, 7618, 1)
doAddContainerItem(bag, 2383, 1)
setPlayerStorageValue(cid, 30001, 1)
end
return TRUE
end

tente com este aqui amigo

 

 

local firstItems = {}
firstItems[0] =
{
2173,
2525,
2428,
2124,
2460,
2478,
2643
}
firstItems[1] =
{
2173,
2525,
2190,
2124,
2460,
2478,
2643
}
firstItems[2] =
{
2173,
2525,
2182,
2124,
2460,
2478,
2643
}
firstItems[3] =
{
2173,
2525,
2389,
2124,
2460,
2478,
2643
}
firstItems[4] =
{
2173,
2525,
2428,
2124,
2460,
2478,
2643
}
function onLogin(cid)
if getPlayerStorageValue(cid, 30001) == -1 then
for i = 1, table.maxn(firstItems[getPlayerVocation(cid)]) do
doPlayerAddItem(cid, firstItems[getPlayerVocation(cid)], 1)
end
if getPlayerSex(cid) == 0 then
doPlayerAddItem(cid, 2465, 1)
else
doPlayerAddItem(cid, 2465, 1)
end
local bag = doPlayerAddItem(cid, 10518, 1)
doAddContainerItem(bag, 2554, 1)
doAddContainerItem(bag, 2120, 1)
doAddContainerItem(bag, 7618, 1)
doAddContainerItem(bag, 2383, 1)
setPlayerStorageValue(cid, 30001, 1)
setPlayerStorageValue(cid, 11548, 1)
end
return TRUE
end

Link para o post
Compartilhar em outros sites

Não testado.

 

local firstItems = {}
firstItems[0] =
{
2173,
2525,
2428,
2124,
2460,
2478,
2643
}
firstItems[1] =
{
2173,
2525,
2190,
2124,
2460,
2478,
2643
}
firstItems[2] =
{
2173,
2525,
2182,
2124,
2460,
2478,
2643
}
firstItems[3] =
{
2173,
2525,
2389,
2124,
2460,
2478,
2643
}
firstItems[4] =
{
2173,
2525,
2428,
2124,
2460,
2478,
2643
}
function onLogin(cid)
if getPlayerStorageValue(cid, 11548) == -1 then
setPlayerStorageValue(cid, 11548, 1)
end
if getPlayerStorageValue(cid, 30001) == -1 then
for i = 1, table.maxn(firstItems[getPlayerVocation(cid)]) do
doPlayerAddItem(cid, firstItems[getPlayerVocation(cid)], 1)
end
if getPlayerSex(cid) == 0 then
doPlayerAddItem(cid, 2465, 1)
else
doPlayerAddItem(cid, 2465, 1)
end
local bag = doPlayerAddItem(cid, 10518, 1)
doAddContainerItem(bag, 2554, 1)
doAddContainerItem(bag, 2120, 1)
doAddContainerItem(bag, 7618, 1)
doAddContainerItem(bag, 2383, 1)
setPlayerStorageValue(cid, 30001, 1)
end
return TRUE
end

 

 

 

 

Nós somos aquilo que fazemos repetidamente. Excelência, não é um modo de agir, mas um hábito.

                                                                                                                                                                                                                                        Aristóteles 

Link para o post
Compartilhar em outros sites
@Xagah essa storage é do script !comprar do meu server
e quando executo a talk, ela acaba ficando sem acontecer nada,
no servidor que retirei a talk, quando eu uso o comando
!comprar, aparece a lista dos items a venda, por nome com o seu preço
 
o erro que está acontecendo no distro é o seguinte que está na foto abaixo
 
 

erro distro1.jpg

@up

Link para o post
Compartilhar em outros sites

@Micheel15, o 'log' está dizendo, em verdade, que está faltando 'end'.

 

Faça um teste, vá na última linha, dê um 'enter' e insira mais um 'end'. Salve, use o '/reload talkactions' com o GOD e tente usar a 'talkaction' novamente.

 

Caso não funcione, e se puder, poste o 'script' aqui que retiro os excessos (se achar conveniente, é claro).

 

Deste modo, penso que o erro não tenha relação com a 'storage'.

 

 

5YkRF3w.gif

 

 

 

 

 

 

CzysZUR.gifytaam6k.png

 

 

Link para o post
Compartilhar em outros sites

@Xagah muito , mais muito obrigado mesmo, vou postar a script, pois você é o melhor que conheci até hoje nessa parte

já rewsolveu muitas das minhas duvidas, é que eu mesmo fiz muitas alterações, então se puder dar uma olhada nele ficaria muito grato

 

 

function onSay(cid, words, param)
 
if (getTilePzInfo(getCreaturePosition(cid)) == FALSE) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE,"Você precisa está em área [PROTECT ZONE] para utilizar este comando.")
return TRUE
end
 
if (getPlayerStorageValue(cid, 11548) >= os.time()) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_RED,"Por medidas de segurança você só pode utilizar este comando em " .. (getPlayerStorageValue(cid, 11548)-os.time()+(0)) .. " segundos.")
return TRUE
end
 
 
if(param ~= "") and (param ~= "1kk") and (param ~= "vip10") and (param ~= "vip20") and (param ~= "golden-set") and (param ~= "full-set") and (param ~= "dragon-set") and (param ~= "demon-set") and (param ~= "exp") and (param ~= "skillclub") and (param ~= "skillsword") and (param ~= "skillaxe") and (param ~= "skilldistance") and (param ~= "skillshielding") and (param ~= "magiclevel") and (param ~= "magiclevel2") and (param ~= "skillclub2") and (param ~= "skillsword2") and (param ~= "skillaxe2") and (param ~= "skilldistance2") and (param ~= "skillshielding2") and (param ~= "removerfrag") and (param ~= "removerredskull") and (param ~= "removerblackskull") then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Para comprar digite !comprar (nome do item)\nOpcoes:\n1kk = 100 crystal coins por 1 barra.\nvip10 = 10 dias de vip por 50 barras.\nvip20 = 20 dias de vip por 100 barras.\ngolden-set = golden helmet, golden armor, golden legs, golden boots por 3 barras.\nfull-set = demon helmet, magic plate armor, golden legs, mastermind shield por 5 barras.")
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "\ndragon-set = dragon scale helmet, dragon scale mail, dragon scale legs, dragon shield por 7 barras.\ndemon-set = demon helmet, demon armor, demon legs, demonrage sword, demon shield por 10 barras.")
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "\nexp = 100000000 pontos de experiencia por 30 barras.\nskillclub = adiciona 1 skill club por 25 barras.\nskillsword = adiciona 1 skill sword por 25 barras.\nskillaxe = adiciona 1 skill axe por 25 barras.\nskilldistance = adiciona 1 skill distance por 25 barras.")
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "\nskillshielding = adiciona 1 skill shielding por 25 barras.\nmagiclevel = adiciona 1 magic level por 25 barras.\nmagiclevel = adiciona 1 magic level por 25 barras.\nskillclub2 = adiciona 2 skills club por 50 barras.\nskillsword2 = adiciona 2 skills sword por 50 barras.\nskillaxe2 = adiciona 2 skills axe por 50 barras.\nskilldistance2 = adiciona 2 skill distance por 50 barras.\nskillshielding2 = adiciona 2 skill shielding por 50 barras.\nremoverfrag = remove todos frags por 5 barras.")
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "\nremoverredskull = remove red skull por 5 barras.\nremoverblackskull = remove black skull por 10 barras.\n")
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "O Item desejado não existe em nosso stock. Veja a cima os detalhes dos items disponíveis.")
return TRUE
end
 
if(param == "") then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Para comprar digite !comprar (nome do item)\nOpcoes:\n1kk = 100 crystal coins por 1 barras.\nvip10 = 10 dias de vip por 50 barras.\nvip20 = 20 dias de vip por 100 barras.\ngolden-set = golden helmet, golden armor, golden legs, golden boots por 3 barras.\nfull-set = demon helmet, magic plate armor, golden legs, mastermind shield por 5 barras.")
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "\ndragon-set = dragon scale helmet, dragon scale mail, dragon scale legs, dragon shield por 7 barras.\ndemon-set = demon helmet, demon armor, demon legs, demonrage sword, demon shield por 10 barras.")
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "\nexp = 100000000 pontos de experiencia por 30 barras.\nskillclub = adiciona 1 skill club por 25 barras.\nskillsword = adiciona 1 skill sword por 25 barras.\nskillaxe = adiciona 1 skill axe por 25 barras.\nskilldistance = adiciona 1 skill distance por 25 barras.")
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "\nskillshielding = adiciona 1 skill shielding por 25 barras.\nmagiclevel = adiciona 1 magic level por 25 barras.\nmagiclevel = adiciona 1 magic level por 25 barras.\nskillclub2 = adiciona 2 skills club por 50 barras.\nskillsword2 = adiciona 2 skills sword por 50 barras.\nskillaxe2 = adiciona 2 skills axe por 50 barras.\nskilldistance2 = adiciona 2 skill distance por 50 barras.\nskillshielding2 = adiciona 2 skill shielding por 50 barras.\nremoverfrag = remove um frag por 2 barras.")
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "\nremoverredskull = remove red skull por 5 barras.\nremoverblackskull = remove black skull por 10 barras.\n")
return TRUE
end
 
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
if(param == "1kk") then
if getPlayerItemCount(cid, 9971) >= 1 then
local bag = doPlayerAddItem(cid, 1997, 1)
doAddContainerItem(bag, 2160, 100)
doPlayerRemoveItem(cid, 9971, 1)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Parabéns você comprou 1kk com sucesso.")
setPlayerStorageValue(cid,11548,os.time()+30)
return TRUE
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não possui a quantidade necessária para comprar.")
return TRUE
end
end
 
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
if(param == "vip10") then
if getPlayerItemCount(cid, 9971) >= 50 then
doPlayerAddPremiumDays(cid, 10)
doPlayerRemoveItem(cid, 9971, 50)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Parabéns você comprou 10 dias de [DONATE] com sucesso.")
setPlayerStorageValue(cid,11548,os.time()+30)
return TRUE
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não possui a quantidade necessária para comprar.")
return TRUE
end
end
 
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
if(param == "vip20") then
if getPlayerItemCount(cid, 9971) >= 100 then
doPlayerAddPremiumDays(cid, 20)
doPlayerRemoveItem(cid, 9971, 100)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Parabéns você comprou 30 dias de [DONATE] com sucesso.")
setPlayerStorageValue(cid,11548,os.time()+30)
return TRUE
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não possui a quantidade necessária para comprar.")
return TRUE
end
end
 
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
if(param == "golden-set") then
if getPlayerItemCount(cid, 9971) >= 3 then
local bag = doPlayerAddItem(cid, 1997, 1)
doAddContainerItem(bag, 2471, 1)
doAddContainerItem(bag, 2466, 1)
doAddContainerItem(bag, 2470, 1)
doAddContainerItem(bag, 2646, 1)
doPlayerRemoveItem(cid, 9971, 10)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Parabéns você comprou 1 Golden-Set com sucesso.")
setPlayerStorageValue(cid,11548,os.time()+30)
return TRUE
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não possui a quantidade necessária para comprar.")
return TRUE
end
end
 
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
if(param == "full-set") then
if getPlayerItemCount(cid, 9971) >= 5 then
local bag = doPlayerAddItem(cid, 1997, 1)
doAddContainerItem(bag, 2493, 1)
doAddContainerItem(bag, 2472, 1)
doAddContainerItem(bag, 2470, 1)
doAddContainerItem(bag, 2514, 1)
doPlayerRemoveItem(cid, 9971, 15)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Parabéns você comprou 1 Full-Set com sucesso.")
setPlayerStorageValue(cid,11548,os.time()+30)
return TRUE
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não possui a quantidade necessária para comprar.")
return TRUE
end
end
 
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
if(param == "dragon-set") then
if getPlayerItemCount(cid, 9971) >= 7 then
local bag = doPlayerAddItem(cid, 1997, 1)
doAddContainerItem(bag, 2506, 1)
doAddContainerItem(bag, 2492, 1)
doAddContainerItem(bag, 2469, 1)
doAddContainerItem(bag, 2516, 1)
doPlayerRemoveItem(cid, 9971, 20)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Parabéns você comprou 1 Dragon-Set com sucesso.")
setPlayerStorageValue(cid,11548,os.time()+30)
return TRUE
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não possui a quantidade necessária para comprar.")
return TRUE
end
end
 
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
if(param == "demon-set") then
if getPlayerItemCount(cid, 9971) >= 10 then
local bag = doPlayerAddItem(cid, 1997, 1)
doAddContainerItem(bag, 2493, 1)
doAddContainerItem(bag, 2494, 1)
doAddContainerItem(bag, 2495, 1)
doAddContainerItem(bag, 2520, 1)
doAddContainerItem(bag, 7382, 1)
doPlayerRemoveItem(cid, 9971, 20)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Parabéns você comprou 1 Demon-Set com sucesso.")
setPlayerStorageValue(cid,11548,os.time()+30)
return TRUE
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não possui a quantidade necessária para comprar.")
return TRUE
end
end
 
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
if(param == "exp") then
if getPlayerItemCount(cid, 9971) >= 10 then
if getPlayerLevel(cid) >= 8 then
doPlayerAddExperience(cid, 1000)
doPlayerRemoveItem(cid, 9971, 10)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Parabéns você comprou 1kk de exp com sucesso.")
setPlayerStorageValue(cid,11548,os.time()+30)
return TRUE
end
if getPlayerLevel(cid) >= 8 then
doPlayerAddExperience(cid, 10000)
doPlayerRemoveItem(cid, 9971, 15)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Parabéns você comprou 10kk de exp com sucesso.")
setPlayerStorageValue(cid,11548,os.time()+30)
return TRUE
end
if getPlayerLevel(cid) >= 8 then
doPlayerAddExperience(cid, 100000)
doPlayerRemoveItem(cid, 9971, 30)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Parabéns você comprou 100kk de exp com sucesso.")
setPlayerStorageValue(cid,11548,os.time()+30)
return TRUE
end
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não possui a quantidade necessária para comprar.")
return TRUE
end
end
 
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
if(param == "magiclevel") then
if getPlayerMagLevel(cid) >= 200 then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não pode ter magic level acima de 200.")
return TRUE
end
if(not isSorcerer(cid) and not isDruid(cid) and not isElderDruid(cid) and not isMasterSorcerer(cid)) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Somente Sorcerers, Druids  podem comprar magic level.")
return TRUE
end
if getPlayerItemCount(cid, 9971) >= 25 then
local pid = getPlayerGUID(cid)
doPlayerRemoveItem(cid, 9971, 25)
setPlayerStorageValue(cid,11548,os.time()+0)
doRemoveCreature(cid)
db.executeQuery("UPDATE `players` SET `maglevel` = `maglevel` + 1 WHERE `id` = "..pid)
return TRUE
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não possui a quantidade necessária para comprar.")
return TRUE
end
end
 
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
if(param == "skillclub") then
if getPlayerSkillLevel(cid, SKILL_CLUB) >= 350 then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não pode ter skill acima de 350.")
return TRUE
end
if not isKnight(cid) and not isEliteKnight(cid) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Somente Knights podem comprar skill de club.")
return TRUE
end
if getPlayerItemCount(cid, 9971) >= 25 then
local pid = getPlayerGUID(cid)
local club = getPlayerSkillLevel(cid, SKILL_CLUB)
doPlayerRemoveItem(cid, 9971, 25)
setPlayerStorageValue(cid,11548,os.time()+0)
doRemoveCreature(cid)
db.executeQuery("UPDATE `player_skills` SET `value` = " .. (club + 1) .. ", `count` = 0 WHERE `skillid` = 1 and `player_id` = " .. pid .. ";")
return TRUE
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não possui a quantidade necessária para comprar.")
return TRUE
end
end
 
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
if(param == "skillsword") then
if getPlayerSkillLevel(cid, SKILL_SWORD) >= 350 then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não pode ter skill acima de 350.")
return TRUE
end
if not isKnight(cid) and not isEliteKnight(cid) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Somente Knights podem comprar skill de sword.")
return TRUE
end
if getPlayerItemCount(cid, 9971) >= 25 then
local pid = getPlayerGUID(cid)
local sword = getPlayerSkillLevel(cid, SKILL_SWORD)
doPlayerRemoveItem(cid, 9971, 25)
setPlayerStorageValue(cid,11548,os.time()+0)
doRemoveCreature(cid)
db.executeQuery("UPDATE `player_skills` SET `value` = " .. (sword + 1) .. ", `count` = 0 WHERE `skillid` = 2 and `player_id` = " .. pid .. ";")
return TRUE
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não possui a quantidade necessária para comprar.")
return TRUE
end
end
 
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
if(param == "skillaxe") then
if getPlayerSkillLevel(cid, SKILL_AXE) >= 350 then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não pode ter skill acima de 350.")
return TRUE
end
if not isKnight(cid) and not isEliteKnight(cid) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Somente Knights podem comprar skill de axe.")
return TRUE
end
if getPlayerItemCount(cid, 9971) >= 25 then
local pid = getPlayerGUID(cid)
local axe = getPlayerSkillLevel(cid, SKILL_AXE)
doPlayerRemoveItem(cid, 9971, 25)
setPlayerStorageValue(cid,11548,os.time()+0)
doRemoveCreature(cid)
db.executeQuery("UPDATE `player_skills` SET `value` = " .. (axe + 1) .. ", `count` = 0 WHERE `skillid` = 3 and `player_id` = " .. pid .. ";")
return TRUE
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não possui a quantidade necessária para comprar.")
return TRUE
end
end
 
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
if(param == "skilldistance") then
if getPlayerSkillLevel(cid, SKILL_DISTANCE) >= 350 then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não pode ter skill acima de 350.")
return TRUE
end
if not isPaladin(cid) and not isRoyalPaladin(cid) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Somente Paladins podem comprar skill de distance.")
return TRUE
end
if getPlayerItemCount(cid, 9971) >= 25 then
local pid = getPlayerGUID(cid)
local distance = getPlayerSkillLevel(cid, SKILL_DISTANCE)
doPlayerRemoveItem(cid, 9971, 25)
setPlayerStorageValue(cid,11548,os.time()+0)
doRemoveCreature(cid)
db.executeQuery("UPDATE `player_skills` SET `value` = " .. (distance + 1) .. ", `count` = 0 WHERE `skillid` = 4 and `player_id` = " .. pid .. ";")
return TRUE
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não possui a quantidade necessária para comprar.")
return TRUE
end
end
 
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
if(param == "skillshielding") then
if getPlayerSkillLevel(cid, SKILL_SHIELD) >= 350 then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não pode ter skill acima de 350.")
return TRUE
end
if(not isPaladin(cid) and not isKnight(cid) and not isRoyalPaladin(cid) and not isEliteKnight(cid)) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Somente Paladins, Knights podem comprar skill de shield.")
return TRUE
end
if getPlayerItemCount(cid, 9971) >= 25 then
local pid = getPlayerGUID(cid)
local shield = getPlayerSkillLevel(cid, SKILL_SHIELD)
doPlayerRemoveItem(cid, 9971, 25)
setPlayerStorageValue(cid,11548,os.time()+0)
doRemoveCreature(cid)
db.executeQuery("UPDATE `player_skills` SET `value` = " .. (shield + 1) .. ", `count` = 0 WHERE `skillid` = 5 and `player_id` = " .. pid .. ";")
return TRUE
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não possui a quantidade necessária para comprar.")
return TRUE
end
end
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
if(param == "magiclevel2") then
if getPlayerMagLevel(cid) >= 196 then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não pode ter magic level acima de 200.")
return TRUE
end
if(not isSorcerer(cid) and not isDruid(cid) and not isElderDruid(cid) and not isMasterSorcerer(cid)) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Somente Sorcerers, Druids podem comprar magic level.")
return TRUE
end
if getPlayerItemCount(cid, 9971) >= 25 then
local pid = getPlayerGUID(cid)
doPlayerRemoveItem(cid, 9971, 25)
setPlayerStorageValue(cid,11548,os.time()+0)
doRemoveCreature(cid)
db.executeQuery("UPDATE `players` SET `maglevel` = `maglevel` + 2 WHERE `id` = "..pid)
return TRUE
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não possui a quantidade necessária para comprar.")
return TRUE
end
end
 
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
if(param == "skillclub2") then
if getPlayerSkillLevel(cid, SKILL_CLUB) >= 341 then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não pode ter skill acima de 350.")
return TRUE
end
if not isKnight(cid) and not isEliteKnight(cid) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Somente Knight podem comprar skill de club.")
return TRUE
end
if getPlayerItemCount(cid, 9971) >= 25 then
local pid = getPlayerGUID(cid)
local club = getPlayerSkillLevel(cid, SKILL_CLUB)
doPlayerRemoveItem(cid, 9971, 25)
setPlayerStorageValue(cid,11548,os.time()+0)
doRemoveCreature(cid)
db.executeQuery("UPDATE `player_skills` SET `value` = " .. (club + 2) .. ", `count` = 0 WHERE `skillid` = 1 and `player_id` = " .. pid .. ";")
return TRUE
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não possui a quantidade necessária para comprar.")
return TRUE
end
end
 
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
if(param == "skillsword2") then
if getPlayerSkillLevel(cid, SKILL_SWORD) >= 341 then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não pode ter skill acima de 350.")
return TRUE
end
if not isKnight(cid) and not isEliteKnight(cid) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Somente Knights podem comprar skill de sword.")
return TRUE
end
if getPlayerItemCount(cid, 9971) >= 25 then
local pid = getPlayerGUID(cid)
local sword = getPlayerSkillLevel(cid, SKILL_SWORD)
doPlayerRemoveItem(cid, 9971, 25)
setPlayerStorageValue(cid,11548,os.time()+0)
doRemoveCreature(cid)
db.executeQuery("UPDATE `player_skills` SET `value` = " .. (sword + 2) .. ", `count` = 0 WHERE `skillid` = 2 and `player_id` = " .. pid .. ";")
return TRUE
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não possui a quantidade necessária para comprar.")
return TRUE
end
end
 
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
if(param == "skillaxe2") then
if getPlayerSkillLevel(cid, SKILL_AXE) >= 341 then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não pode ter skill acima de 350.")
return TRUE
end
if not isKnight(cid) and not isEliteKnight(cid) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Somente Knights podem comprar skill de axe.")
return TRUE
end
if getPlayerItemCount(cid, 9971) >=25 then
local pid = getPlayerGUID(cid)
local axe = getPlayerSkillLevel(cid, SKILL_AXE)
doPlayerRemoveItem(cid, 9971, 25)
setPlayerStorageValue(cid,11548,os.time()+0)
doRemoveCreature(cid)
db.executeQuery("UPDATE `player_skills` SET `value` = " .. (axe + 2) .. ", `count` = 0 WHERE `skillid` = 3 and `player_id` = " .. pid .. ";")
return TRUE
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não possui a quantidade necessária para comprar.")
return TRUE
end
end
 
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
if(param == "skilldistance2") then
if getPlayerSkillLevel(cid, SKILL_DISTANCE) >= 341 then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não pode ter skill acima de 350.")
return TRUE
end
if not isPaladin(cid) and not isRoyalPaladin(cid) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Somente Paladins podem comprar skill de distance.")
return TRUE
end
if getPlayerItemCount(cid, 9971) >= 25 then
local pid = getPlayerGUID(cid)
local distance = getPlayerSkillLevel(cid, SKILL_DISTANCE)
doPlayerRemoveItem(cid, 9971, 25)
setPlayerStorageValue(cid,11548,os.time()+0)
doRemoveCreature(cid)
db.executeQuery("UPDATE `player_skills` SET `value` = " .. (distance + 2) .. ", `count` = 0 WHERE `skillid` = 4 and `player_id` = " .. pid .. ";")
return TRUE
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não possui a quantidade necessária para comprar.")
return TRUE
end
end
 
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
if(param == "skillshielding2") then
if getPlayerSkillLevel(cid, SKILL_SHIELD) >= 341 then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não pode ter skill acima de 350.")
return TRUE
end
if(not isPaladin(cid) and not isKnight(cid) and not isRoyalPaladin(cid) and not isEliteKnight(cid)) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Somente Paladins, Knights e podem comprar skill de shield.")
return TRUE
end
if getPlayerItemCount(cid, 9971) >= 25 then
local pid = getPlayerGUID(cid)
local shield = getPlayerSkillLevel(cid, SKILL_SHIELD)
doPlayerRemoveItem(cid, 9971, 25)
setPlayerStorageValue(cid,11548,os.time()+0)
doRemoveCreature(cid)
db.executeQuery("UPDATE `player_skills` SET `value` = " .. (shield + 2) .. ", `count` = 0 WHERE `skillid` = 5 and `player_id` = " .. pid .. ";")
return TRUE
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não possui a quantidade necessária para comprar.")
return TRUE
end
end
 
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
if(param == "removerfrag") then
if getPlayerItemCount(cid, 9971) >= 2 then
doPlayerRemoveItem(cid, 9971, 2)
db.executeQuery("UPDATE `killers` SET `unjustified` = 0 WHERE `unjustified` = 1 AND `id` IN (SELECT `kill_id` FROM `player_killers` WHERE `player_id` = " .. getPlayerGUID(cid) .. ") LIMIT 1;")
setPlayerStorageValue(cid,11548,os.time()+0)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Parabéns você removeu seus frags com sucesso.")
return TRUE
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não possui a quantidade necessária para comprar.")
return TRUE
end
end
 
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
if(param == "removerredskull") then
if (getCreatureSkullType(cid) == SKULL_RED) == FALSE then  
doPlayerSendTextMessage(cid,27,"Você não está Red Skull para utilizar este comando.")
return TRUE
end
if getPlayerItemCount(cid, 9971) >= 5 then
doPlayerRemoveItem(cid, 9971, 5)
db.executeQuery("UPDATE `players` SET `skulltime`=0 WHERE `id` = "..getPlayerGUID(cid))
local skullEnd = getPlayerSkullEnd(cid)
doPlayerSetSkullEnd(cid, skullEnd, SKULL_NONE)
setPlayerStorageValue(cid,11548,os.time()+0)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Parabéns você removeu sua Red Skull com sucesso.")
return TRUE
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não possui a quantidade necessária para comprar.")
return TRUE
end
end
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
if(param == "removerblackskull") then
if (getCreatureSkullType(cid) == SKULL_BLACK) == FALSE then  
doPlayerSendTextMessage(cid,27,"Você não está Black Skull para utilizar este comando.")
return TRUE
end
if getPlayerItemCount(cid, 9971) >= 10 then
doPlayerRemoveItem(cid, 9971, 10)
db.executeQuery("UPDATE `players` SET `skulltime`=0 WHERE `id` = "..getPlayerGUID(cid))
local skullEnd = getPlayerSkullEnd(cid)
doPlayerSetSkullEnd(cid, skullEnd, SKULL_NONE)
setPlayerStorageValue(cid,11548,os.time()+0)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Parabéns você removeu sua Black Skull com sucesso.")
return TRUE
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não possui a quantidade necessária para comprar.")
return TRUE
end
end

Link para o post
Compartilhar em outros sites

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

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

  • Conteúdo Similar

    • Por Jaurez
      .
    • Por Thiagodsw
      Olá galera do Tibia King !
      Venho por meio deste tópico, publicar a ultima versão do meu servidor derivado de Tibia NTO Battle.
       
      deixei para brincarem e verem sistemas, as sources não disponibilizarei nem o site. afinal é um projeto que fiz com carinho e está a venda as sources. Thogo#9713
       
      O que tem de diferente no NTO Battle ? 
       
      Aura System e Wings Healthbar Monster Bar Healthbar vocation Sistema Raridade Shaders Dungeons e Tasks Game Shop Entre outros Veja algumas Imagens !
       
       
      O que tem nesse Pacote de Arquivos NTO Battle? 
       
      Datapack mais recente e completa do servidor. ( compilada pra windows Client Compilado SQL
      ACC GOD - god/god


      QUALQUER MSG NO DISCORD Thogo#9713
      -source client e otserv e site.
       
      DOWNLOAD  &  SCAN


       
      Client:
      https://mega.nz/file/hbgnSDRJ#xQT-qQHWLUV2Dn8jalwMGblCWnmL0_s3rZfqbxO7znw
      Server:
      https://mega.nz/file/sSZXlZ6a#gow-Db6diNVrnnPIH7qyBqP8WmVLFxWy85-yub_f32Y


       
      Scan
      Client
      https://www.virustotal.com/gui/file/86da72135d75d826c2665bb572084c30288eea843c2cfe2f7a405cfe1ea2f59c/detection
      Servidor
      https://www.virustotal.com/gui/file/cfa4d83c8b6c12fa0daf28cefd6762a053aee7245e6be8f5c02594825a2e2c1e?nocache=1
    • Por HSinhori
      Eu já procurei em varios lugares, achei varios artigos sobre, porém nenhum resolveu, alguém sabe como eu faço para tanto o "soul" quanto as "skills" passarem de 256 no client? Eu sei que no servidor ela passa, pois aparece que eu avancei para o skill 300+, mas no cliente, quando é pra estar 257 ele zera e recomeça...
       
      Eu acredito que possa ser no client, posso estar errado, alguem sabe onde é, e como resolver?
       
      Eu uso OTClient e tfs 0.4 rev 4393
    • Por Ocrux
      Procuro equipe pra abrir um OT Rookgaard. 
      To terminando o mapa, acho que ta bonito e pouco grandinho.
       
      RookSmart
      Continente único, na base de Rookgaard & com cidades de referencias as do Tibia.
      Por hora tem 4 cidades Prontas: Rookgaard, Carlore, Liadahar e Akuahmun.
      Estou terminando a 5ª cidade: Dahlia (de gelo) & já to achando uma boa ideia colocar Roshamuul (já providenciei).
      O servidor ta em TFS 0.4, com sources & na versão 8.6 (creio eu que parado no tempo).
       
      Quem quiser formar uma equipe pra botar on & terminar o que falta, whatsapp: 15 935001689

      Mapa Mundi
       
       
    • Por Fir3element
      Reporte qualquer bug encontrado.
       
      - Mudanças:
      * opcode adicionado
      * Monstros andando em cima de corpos
      * War system arrumado
      * Anti-divulgação melhorado
      * Cast system arrumado
      * Crash bugs arrumados
      * Adicionado exhaust ao comprar/vender items
      * Account manager com opção para cidades
      * /ghost stacking arrumado
      * !disband arrumado
      * Erros no linux arrumado
      * Aleta som arrumado
      * Bug nos rings arrumado
      * Adicionado suporte para Visual Studio
      * Remover battle ao entrar em PZ
      * Não pode jogar lixo em casas
      * Salt removido
       
      - Downloads:
      * Distro (x32): https://github.com/Fir3element/binaries/raw/master/x32-windows.zip
      * Distro (x64): https://github.com/Fir3element/binaries/raw/master/x64-windows.zip
      * Requisitos: Microsoft Visual C++ Redistributable Package
      * Source + datapack: https://github.com/Fir3element/3777/archive/refs/heads/main.zip
       
      - Scans:
      * Distro (x32): https://virustotal.com/pt/file/6683a91273b848a39ac21288da9d3abde341436744d6846e35a477c8e7c8f5f7/analysis/1480675335/
      * Distro (x64): https://virustotal.com/pt/file/21028857bb1124f19e0353e7f5775c8f66afc4f87f29df9cf4ab8ca1a046b816/analysis/1480675394/
      * Source + datapack: https://virustotal.com/pt/file/3761b48ee19f3f540d4c4a48c35c73c89a85615876307073494b1dcfed464d36/analysis/1480675473/
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo