Ir para conteúdo
  • Cadastre-se

Posts Recomendados

Olá galera do TK, estou aqui para pedir uma ajuda com uma talkaction que eu coloquei recentemente no meu servidor !!!

coloquei a Talkaction !comprar

o problema é que na parte de compra de skills, ela não está funcionando, ela faz o character relogar na hora da compra tudo certinho, cobra a quantidade de moedas para a compra de skills, mais acaba não acrecentando o skill ao player .

gostaria de saber se tenho que executar algum comando no phpmyadmin, para funcionar, 

se alguem puder me ajudar quanto a isso darei REP+

segue a baixo a TALKACTION - lembrando que é apenas as skills's que não são acrecentadas, o resto das vendas do script estão funcionando perfeitamente !!!

 

 

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.\nmagiclevel2 = adiciona 2 magic level por 50 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 10 barras.")
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "\nremoverredskull = remove red skull por 15 barras.\nremoverblackskull = remove black skull por 25 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.\nmagiclevel2 = adiciona 2 magic level por 50 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 10 barras.")
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "\nremoverredskull = remove red skull por 15 barras.\nremoverblackskull = remove black skull por 25 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)
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) >= 10 then
doPlayerRemoveItem(cid, 9971, 10)
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) >= 15 then
doPlayerRemoveItem(cid, 9971, 15)
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) >= 25 then
doPlayerRemoveItem(cid, 9971, 25)
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
end
Editado por Micheel15 (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

MMHUCMQ.png  Esta é uma mensagem automática, este tópico foi movido para a área correta.
  Regras do fórum: http://www.tibiaking.com/forum/topic/1281-regras-gerais/#comment-7680

Este tópico foi movido:
De: Scripting OTServ > OTServ > Actions e TalkActions
Para: Suporte OTServ > OTServ > Suporte de Scripts

Link para o post
Compartilhar em outros sites

Tenta usar ai

Spoiler

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.\nmagiclevel2 = adiciona 2 magic level por 50 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 10 barras.")
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "\nremoverredskull = remove red skull por 15 barras.\nremoverblackskull = remove black skull por 25 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.\nmagiclevel2 = adiciona 2 magic level por 50 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 10 barras.")
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "\nremoverredskull = remove red skull por 15 barras.\nremoverblackskull = remove black skull por 25 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)
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)
doPlayerAddMagLevel(cid, 1)
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)
doPlayerAddSkill(cid, 1, 1, round)
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)
doPlayerAddSkill(cid, 2, 1, round)
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)
doPlayerAddSkill(cid, 3, 1, round)
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)
doPlayerAddSkill(cid, 4, 1, round)
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)
doPlayerAddSkill(cid, 5, 2, round)
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)
doPlayerAddMagLevel(cid, 2)
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)
doPlayerAddSkill(cid, 1, 2, round)
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)
doPlayerAddSkill(cid, 2, 2, round)
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)
doPlayerAddSkill(cid, 3, 2, round)
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)
doPlayerAddSkill(cid, 4, 2, round)
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)
doPlayerAddSkill(cid, 5, 2, round)
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) >= 10 then
doPlayerRemoveItem(cid, 9971, 10)
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) >= 15 then
doPlayerRemoveItem(cid, 9971, 15)
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) >= 25 then
doPlayerRemoveItem(cid, 9971, 25)
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
end

 

 

Link para o post
Compartilhar em outros sites

@Sekk estou tendo o mesmo problema ainda, a script não adiciona o skill, será que teria que executar algo no phpmyadmin ?

é só a compra de skills que não está pegando o resto ta funcionando 100 % , agradeço mt a colaboração deis de já 

 

Link para o post
Compartilhar em outros sites

@Micheel15, os comandos estão corretos.

 

Penso que sua 'table' pode não ter os mesmos índices (nome das colunas).

 

Assim, abra seu phpMyAdmin, bata uma 'screenshot' da tabela 'player_skills' aberta e coloque aqui pra eu ver.

5YkRF3w.gif

 

 

 

 

 

 

CzysZUR.gifytaam6k.png

 

 

Link para o post
Compartilhar em outros sites

então caro amigo @Sekk, axo que não tenho em meu phpmyadmin, o seu script, ele não deu erro nenhum na distro, o problema é que quando eu uso, o char reloga, e não ganha a skill,

dai estou optando para usar o metodo que o @Xagah sugeriu, por ele ter me ajudado em muitos scripts, você saberia adcionar a table, em meu phpmyadmin para me ajudar, ?

 

se souber pode me explicar, ?

 

obrigado deis de já !!!

o problema está sendo apenas na compra de skill, na compra da vip10, vip20, e as outras vendas, como redremover, blackremover, está tudo funcionando corretamente !

Link para o post
Compartilhar em outros sites

@Micheel15, Tenta algo diferente. Não sei se irá dar certo, mas mude:

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

Por:

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)
ammount = 2
db.executeQuery("UPDATE `player_skills` SET `value` = " .. (sword + 1) .. ", `count` = 0 WHERE `skillid` = |"..ammount.." 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

E veja se a compra do skill de 'sword' está funcionando.

5YkRF3w.gif

 

 

 

 

 

 

CzysZUR.gifytaam6k.png

 

 

Link para o post
Compartilhar em outros sites

@Fir3element , fire, quando coloquei essa query e executei a talk deu esse erro aqui na distro, igual da foto abaixo, saberia responder ? 

o character reloga, mais não recebe a skill !!!

 

 

@Xagah

 

@Sekk

 

erro distro.jpg

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 Veigh
      IP: HYPEOT.COM (Versão 8.60) Por que jogar no HYPEOT? Confira nossos diferenciais: Sistema de Reset 180+ Montarias 65+ Outfits Sistema de Stage Sistema de Pesca Sistema de Refinamento Sistema de Aura Sistema de Mineração Sistema de Woodcut Sistema de Dungeons Sistema de Survival Mais de 30 Bosses de Alavancas +10 Eventos Automáticos Mais de 5 anos online com apenas 2 resets. Agora estamos de volta com força total desde 05/12! O que você está esperando? Junte-se à aventura e faça parte dessa jornada épica! Conecte-se agora mesmo e não fique de fora!
    • 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 amoxicilina
      Olá Kings, venho aqui trazer uma TalkAction pra você comprar premium account, sei que pode ser algo meio inútil por existir a store.
      Então vamos script:
       
       
    • 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
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo