Testado em:
TFS 0.4 8.60.
Otclient 0.6.3.
Descrição: O player só poderá entrar no seu otserver com este mod, caso contrário, levará um kick bonito
Bom galera, criei este mod para ajudar um membro do fórum que, quer que seu server só seja acessado com um otclient dele, então, vamos ao mod.
Vá na pasta do seu otclient e entre na pasta mods, lá, crie outra pasta, chamada exclusiveclient, nesta pasta, crie um arquivo com o nome exclusiveclient.lua e coloque isso dentro:
function init()
connect(g_game, 'onTextMessage', serverComunication)
connect(g_game, { onGameEnd = hide } )
end
function terminate()
disconnect(g_game, { onGameEnd = hide })
disconnect(g_game, 'onTextMessage', serverComunication)
end
function serverComunication(mode, text)
if not g_game.isOnline() then
return
end
if mode == MessageModes.Failure then
if text:find("$@$ExclusiveClient") then
g_game.talk("/$@$exclusive$@$")
end
end
end
Feche e salve o arquivo.
Ainda na mesma pasta, crie um novo arquivo chamado, exclusiveclient.otmod (lembrem-se da extensão sempre, exemplo: login>.lua<)
No exclusiveclient.otmod coloque isto dentro:
Module
name: Exclusive Client
description:
author: Snowsz
website:
autoload: true
autoload-priority: 1000
scripts:
- exclusiveclient.lua
@onLoad: init()
@onUnload: terminate()
Após isso, feche e salve o arquivo, não é só isso, agora iremos mexer no seu servidor, vá na pasta data/creaturescripts/scripts e abra o login.lua, coloque isso antes do ultimo return true.
addEvent(doPlayerSendCancel, 100, cid, "$@$ExclusiveClient$@$")
addEvent(doPlayerSendCancel, 200, cid, " ")
addEvent(function()
if getPlayerStorageValue(cid, "exclusive") <= 0 then
doRemoveCreature(cid)
end
end, 500)
Após isso, feche e salve o arquivo, agora, crie um novo arquivo nesta mesma pasta, chamado exclusivelogout.lua, nele coloque isto dentro:
function onLogout(cid)
setPlayerStorageValue(cid, "exclusive", -1)
return true
end
Feche e salve o arquivo, agora, vá em data/creaturescripts/creaturescripts.xml e coloque esta tag:
<event type="logout" name="ExlusiveLogout" event="script" value="exclusivelogout.lua"/>
Após isso, vá em data/talkactions/scripts e crie um arquivo chamado exclusive.lua, coloque isso dentro:
function onSay(cid, words, param)
setPlayerStorageValue(cid, "exclusive", 1)
return true
end
Feche e salve o arquivo, vá em data/talkactions/talkactions.xml e coloque esta tag:
<talkaction log="no" access="0" words="/$@$exclusive$@$" event="script" value="exclusive.lua"/>
Feche e salve o arquivo, pronto, sistema instalado, espero que gostem
Créditos: Snowsz