JuniorPavani 12 Postado Abril 16, 2015 Share Postado Abril 16, 2015 Como o Nome Diz, Ele Serve Para Mudar SeuNome Dentro Do Jogo.Vá Em data/talkactions/scripts, Copie Um Arquivo,Renomeie-o Para changename.lua, e Cole Isso Nele - local config = { item = { Id = 1111, count = 0, }, maxTextLenght = 15, blacklistParam = {"account manager", "god", "cm", "gm", "tutor", "tester"}, minWordLenght = 3, delay = 2 } function onSay(cid, words, param, channel) local textCancel, t = config.text, string.explode(param, ",") if(param == '') then return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Command param required.") elseif((getPlayerGUIDByName(t[1]) ~= nil) and (not getBooleanFromString(t[2]))) then textCancel = "That name is already in use." elseif(getPlayerItemCount(cid, config.item.Id) < config.item.count) then textCancel = "You do not fulfill the requirements." elseif(not getTilePzInfo(getCreaturePosition(cid))) then textCancel = "You must be inside a protection zone to use this command." elseif(string.len(tostring(t[1])) >= config.maxTextLenght) then textCancel = "You can only use a maximum of " .. config.maxTextLenght .. " characters." elseif(string.find(t[1]:lower(), "[^%l%s]") ~= nil) then textCancel = "You cannot use symbols." else for blacklist = 1, table.maxn(config.blacklistParam) do if(string.find(t[1]:lower(), config.blacklistParam[blacklist]) ~= nil) then textCancel = "Invalid name entry." break end end end if(config.text ~= textCancel) then doPlayerSendCancel(cid, textCancel) return true end local paramTemp, space, oldName = '', '', getCreatureName(cid) for word in string.gmatch(t[1], "%a+") do if(string.len(word) < config.minWordLenght) then doPlayerSendCancel(cid, "Each word must have a minimum of " .. config.minWordLenght .. " characters.") return true end paramTemp = "" .. paramTemp .. "" .. space .. "" .. word .. "" if(space == '') then space = " " end end local guid = getPlayerGUID(cid) t[1] = paramTemp doPlayerRemoveItem(cid, config.item.Id, config.item.count) if(pcall(doPlayerChangeName, guid, oldName, t[1]) == false) then db.executeQuery("INSERT INTO `player_namelocks` (`player_id`, `name`, `new_name`, `date`) VALUES (" .. guid .. ", " .. db.escapeString(oldName) .. ", " .. db.escapeString(t[1]) .. ", " .. os.time() .. ");") db.executeQuery("UPDATE `players` SET `name` = " .. db.escapeString(t[1]) .. " WHERE `id` = " .. guid .. " LIMIT 1;") end doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Your name has been changed successfully. You will be kicked in " .. config.delay .. " seconds.") addEvent(function(cid, forceLogout) if(isPlayer(cid)) then doRemoveCreature(cid, forceLogout) end end, config.delay * 1000, cid, false) return true end Em talkactions.xml Adicione Essa Tag - <talkaction words="!changename;/changename;!namechange;/namechange" script="changename.lua" /> Créditos - Ratser Link para o comentário https://xtibia.com/forum/topic/233204-change-name-in-game-30/ Compartilhar em outros sites More sharing options...
UntFrc 27 Postado Março 11, 2016 Share Postado Março 11, 2016 (editado) Eu tentei usar no meu server, mas não funciona. Ele não troca o nome. Aparece esse erro na distro: OTSYS_SQLITE3_PREPARE(): SQLITE ERROR: near "LIMIT": syntax error (UPDATE "players" SET "name" = 'Wellpos' WHERE "id" = 16 LIMIT 1;) Editado Março 11, 2016 por Dandjes Link para o comentário https://xtibia.com/forum/topic/233204-change-name-in-game-30/#findComment-1687885 Compartilhar em outros sites More sharing options...
Diretor Yan Liima 578 Postado Março 12, 2016 Diretor Share Postado Março 12, 2016 Eu tentei usar no meu server, mas não funciona. Ele não troca o nome. Aparece esse erro na distro: OTSYS_SQLITE3_PREPARE(): SQLITE ERROR: near "LIMIT": syntax error (UPDATE "players" SET "name" = 'Wellpos' WHERE "id" = 16 LIMIT 1;) É porque você usa SQLITE amigo essa script é só pra quem usa mysql. Link para o comentário https://xtibia.com/forum/topic/233204-change-name-in-game-30/#findComment-1687890 Compartilhar em outros sites More sharing options...
UntFrc 27 Postado Março 12, 2016 Share Postado Março 12, 2016 É porque você usa SQLITE amigo essa script é só pra quem usa mysql. Ta explicado. Obrigado Link para o comentário https://xtibia.com/forum/topic/233204-change-name-in-game-30/#findComment-1687891 Compartilhar em outros sites More sharing options...
domvinicius 2 Postado Janeiro 10, 2017 Share Postado Janeiro 10, 2017 Nao intendi muito bem esse script troca o nome pelo item ou eu que so burro msm ?? vi isso akie e deduzi isso item = {Id = 1111,count = 0, PS > Cheguei no forum a uns dias atras to aprendendo Link para o comentário https://xtibia.com/forum/topic/233204-change-name-in-game-30/#findComment-1710526 Compartilhar em outros sites More sharing options...
Poke X Ice 52 Postado Janeiro 10, 2017 Share Postado Janeiro 10, 2017 @domvinicius item = { Id = 1111, -- id do item quer vai precisar exemplo:2160 count = 0, -- quantidade quer vai precisar do item Link para o comentário https://xtibia.com/forum/topic/233204-change-name-in-game-30/#findComment-1710527 Compartilhar em outros sites More sharing options...
domvinicius 2 Postado Janeiro 10, 2017 Share Postado Janeiro 10, 2017 1 hora atrás, Poke X Ice disse: @domvinicius item = { Id = 1111, -- id do item quer vai precisar exemplo:2160 count = 0, -- quantidade quer vai precisar do item continuo sem intender '=' e que tipo ele e um item action ou um talkition de shop ? Link para o comentário https://xtibia.com/forum/topic/233204-change-name-in-game-30/#findComment-1710530 Compartilhar em outros sites More sharing options...
Posts Recomendados