Ir para conteúdo

[Encerrado] Account Manager Criando Dois Nomes Iguais


Adriez

Posts Recomendados

fala galera boa tarde é o seguinte meu servidor tem vip aí quando o cara pega (VIP) Spartan o account manager deixa criar outro boneco somente com o nome Spartan ai quando o vip do cara sai buga db fica dois nomes Spartan como arrumar segue meu login.lua aí

 

local config = {
loginMessage = getConfigValue('loginMessage')
}
function onLogin(cid)
local loss = getConfigValue('deathLostPercent')
if(loss ~= nil) then
doPlayerSetLossPercent(cid, PLAYERLOSS_EXPERIENCE, loss * 10)
end
local accountManager = getPlayerAccountManager(cid)
if(accountManager == MANAGER_NONE) then
local lastLogin, str = getPlayerLastLoginSaved(cid), config.loginMessage
if(lastLogin > 0) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_DEFAULT, str)
str = "Your last visit was on " .. os.date("%a %b %d %X %Y", lastLogin) .. "."
else
str = str .. " Please choose your outfit."
doPlayerSendOutfitWindow(cid)
end
doPlayerSendTextMessage(cid, MESSAGE_STATUS_DEFAULT, str)
elseif(accountManager == MANAGER_NAMELOCK) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Hello, it appears that your character has been namelocked, what would you like as your new name?")
elseif(accountManager == MANAGER_ACCOUNT) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Hello, type 'account' to manage your account and if you want to start over then type 'cancel'.")
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Hello, type 'account' to create an account or type 'recover' to recover an account.")
end
if(not isPlayerGhost(cid)) then
doSendMagicEffect(getCreaturePosition(cid), CONST_ME_TELEPORT)
end
registerCreatureEvent(cid, "Mail")
registerCreatureEvent(cid, "GuildMotd")
registerCreatureEvent(cid, "killer")
registerCreatureEvent(cid, "Idle")
registerCreatureEvent(cid, "attackguild")
registerCreatureEvent(cid, "advance")
registerCreatureEvent(cid, "FimVip")
registerCreatureEvent(cid, "DeathC")
registerCreatureEvent(cid, "SkullCheck")
registerCreatureEvent(cid, "ReportBug")
registerCreatureEvent(cid, "PlayerKill")
registerCreatureEvent(cid, "ZombieAttack")
registerCreatureEvent(cid, "DeathBroadcast")
registerCreatureEvent(cid, "SkullAmulet")
registerCreatureEvent(cid, "BlessDrop")
registerCreatureEvent(cid, "DeathList")
registerCreatureEvent(cid, "GalaxySkullAmulet")
registerCreatureEvent(cid, "BloquearMagia")
registerCreatureEvent(cid, "onPrepareDeathinifi")
registerCreatureEvent(cid, "Aurea")
registerCreatureEvent(cid, "checkNewTop")
registerCreatureEvent(cid, "LevelRecompense")
if (InitArenaScript ~= 0) then
InitArenaScript = 1
end
for i = 42300, 42309 do
setGlobalStorageValue(i, 0)
setGlobalStorageValue(i+100, 0)
end
-- if he did not make full arena 1 he must start from zero
if getPlayerStorageValue(cid, 42309) < 1 then
for i = 42300, 42309 do
setPlayerStorageValue(cid, i, 0)
end
end
-- if he did not make full arena 2 he must start from zero
if getPlayerStorageValue(cid, 42319) < 1 then
for i = 42310, 42319 do
setPlayerStorageValue(cid, i, 0)
end
end
-- if he did not make full arena 3 he must start from zero
if getPlayerStorageValue(cid, 42329) < 1 then
for i = 42320, 42329 do
setPlayerStorageValue(cid, i, 0)
end
end
if getPlayerStorageValue(cid, 42355) == -1 then
setPlayerStorageValue(cid, 42355, 0) -- did not arena level
end
setPlayerStorageValue(cid, 42350, 0) -- time to kick 0
setPlayerStorageValue(cid, 42352, 0) -- is not in arena
function Vodka(cid)
db.executeQuery("UPDATE `players` SET `name` = '"..string.sub(getCreatureName(cid), 7).."' WHERE `id` = "..getPlayerGUID(cid))
doRemoveCreature(cid)
end
if getCreatureName(cid):find('(VIP)') and getPlayerStorageValue(cid, 85258) - os.time() <= 0 then
doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid)))
addEvent(Vodka,2000,cid)
end
registerCreatureEvent(cid, "Rankfrags")
setFrags(cid)
return true
end
Link para o comentário
Compartilhar em outros sites

ele quis dizer que o servidor dele possui um sistema onde todos os jogadores premium account ganha o nome VIP no nome, assim que um cara adquire o VIP o nome dele é praticamente alterado, e se aguem criar uma conta com o nome antigo dele vai da merda exemplo

Valakinhas antes do vip
Vip valakinhas depois do vip
se eu for vip e alguem criar um char com meu nome antigo assim que acabar o meus premiums day meu nome iria voltar ao normal mais iria ocorrer erros porque ja tem um cara com meu nome antigo

Link para o comentário
Compartilhar em outros sites

  • Diretor

Ah sim entendi, parece que muitas pessoas sofre com este problema.

Não seria mais fácil tirar esse VIP do nome e por um lookplayer? assim que der look em um jogador aparece se ele é FREE ou VIP...

Link para o comentário
Compartilhar em outros sites

Para consertar isso, acredito que vc precisa ter a source da sua distro, para poder alterar a forma com q o account manager opera.

O que precisa ser modificado? Então, na checagem que o account manager faz para saber se o nome X é válido ou ñ para ser cadastrado, é necessário acrescentar mais uma checagem: checar se o nome (VIP) X tb não está em uso. Se o nome X passar por essas duas checagens, aí esse problema deixará de ocorrer.


Tópico Movido
Este tópico foi movido de "OTServScriptingSuporte Scripting"
para "OTServOTserv GeralSuporte Geral".

 

 

Link para o comentário
Compartilhar em outros sites

Infelizmente eu não sei te dizer. Vc mesmo terá que procurar algo relacionado ao account manager pelos arquivos da source... :/

Ou vc pode dar uma pesquisada pelas internets tb pra saber qual arquivo está relacionado ao acc manager.

 

ou vc espera alguem que saiba responder...

NÃO RECOMENDO ESSA ULTIMA OPÇÃO! Buscar conhecimento é sempre muito bom. ^^

Link para o comentário
Compartilhar em outros sites

Na source tem uma q chama accounts mais como edito lá pra ele bloquear o (vip)

Já procurei pacas isso ate no ot land nada achei

Link para o comentário
Compartilhar em outros sites

  • 2 years later...
A questão neste tópico de suporte foi encerrada por falta de respostas. Este tópico está fechado e foi movido para Suporte - Tópicos Sem Resposta.

+ Caso a dúvida não tenha sido resolvida você poderá criar outro tópico solicitando ajuda.
* Lembre-se que é permitido dar UP no tópico a cada 24 horas para assim o destacar e manter movimentado.
Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.
×
×
  • Criar Novo...