-
Quem Está Navegando 0 membros estão online
Nenhum usuário registrado visualizando esta página.
-
Conteúdo Similar
-
Por nathalys2
Olá, venho pedir mais uma vez a ajuda de voces, vi em alguns servers , que tem 1 treiner que ataca todos a sua volta, procurei aqui mais não achei, as vezes seja ate facil, mais nao to conseguindo fazer , quem puder me ajudar ae ..
REP + Pra quem ajudar
Obrigado desde Já!!
UP@
-
Por Shiuns
Versão Testada: Tibia 8.60 // TFS 0.3.6 & 0.4
Descrição: Evita jogadores que dão exit nos treiners upando skills. Eles são kikados automaticamente depois de alguns minutos e algumas verificações.
exit_treiner.lua
config_exit_treiner = { Warning = "Favor trocar seu char de direção para evitar que ele seja kikado", -- mensagem time = 3, -- a cada 3 minutos irá checar roudsKick = 3, -- se ele estiver parado na mesma direção por 3 checagem seguidas será kikado storages = {879780,879781}, -- n edite treiners = {"Trainer", "Training Monk"} -- coloque aqui os Treiners do seu ot } --[[Functions List]]-- function doAddRoundExitTreiner(cid) if not isCreature(cid) then return LUA_ERROR end setPlayerStorageValue(cid, config_exit_treiner.storages[1], getPlayerStorageValue(cid, config_exit_treiner.storages[1]) < 0 and 1 or getPlayerStorageValue(cid, config_exit_treiner.storages[1])+1) if getRoundExitTreiner(cid) >= config_exit_treiner.roudsKick then doKickExitTreiner(cid) end end function getRoundExitTreiner(cid) if not isCreature(cid) then return LUA_ERROR end return getPlayerStorageValue(cid, config_exit_treiner.storages[1]) < 0 and 1 or getPlayerStorageValue(cid, config_exit_treiner.storages[1]) end function doResetExitTreiner(cid) if not isCreature(cid) then return LUA_ERROR end return setPlayerStorageValue(cid, config_exit_treiner.storages[1], 0) end function doKickExitTreiner(cid) if not isCreature(cid) then return LUA_ERROR end if getTileInfo(getCreaturePosition(cid)).protection or not getTreinerSpectators(cid) then doResetExitTreiner(cid) setPlayerStorageValue(cid, config_exit_treiner.storages[2], 0) else doResetExitTreiner(cid) doRemoveCreature(cid) end end function getTreinerSpectators(cid) local t = getSpectators(getCreaturePosition(cid), 2, 2, false) if t then for _, cid in ipairs(t) do if isMonster(cid) and isInArray(config_exit_treiner.treiners, getCreatureName(cid)) then return true end end end return false end function doCheckLookDirExitTreiner(cid, r) if not isCreature(cid) then return LUA_ERROR end if getTreinerSpectators(cid) then local new = getCreatureLookDirection(cid) if r == new then doPlayerSendTextMessage(cid, MESSAGE_STATUS_WARNING, config_exit_treiner.Warning) doAddRoundExitTreiner(cid) else doResetExitTreiner(cid) end addEvent(doCheckLookDirExitTreiner,config_exit_treiner.time*60*1000, cid, new) else setPlayerStorageValue(cid, config_exit_treiner.storages[2], 0) doResetExitTreiner(cid) end end --[[Script System]]-- function onLogin(cid) doResetExitTreiner(cid) setPlayerStorageValue(cid, config_exit_treiner.storages[2], 0) registerCreatureEvent(cid, "NewExitTreiner") return true end function onCombat(cid, target) if not isCreature(cid) or not isPlayer(cid) then return true end if getPlayerStorageValue(cid, config_exit_treiner.storages[2]) - os.time() > 0 then return true end if not isMonster(target) then return true end if isMonster(target) and not isInArray(config_exit_treiner.treiners, getCreatureName(target)) and getRoundExitTreiner(cid) > 0 then setPlayerStorageValue(cid, config_exit_treiner.storages[2], 0) doResetExitTreiner(cid) return true end if isMonster(target) and isInArray(config_exit_treiner.treiners, getCreatureName(target)) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_WARNING, config_exit_treiner.Warning) addEvent(doCheckLookDirExitTreiner, config_exit_treiner.time*60*1000, cid, getCreatureLookDirection(cid)) setPlayerStorageValue(cid, config_exit_treiner.storages[2], os.time()+5*60) end return true end
TAG
<event type="login" name="ExitTreiners" event="script" value="exit_treiner.lua"/> <event type="combat" name="NewExitTreiner" event="script" value="exit_treiner.lua"/>
-
Por Jean Sousa
queria saber como faço para mudar o paladino para atacar e healar ao mesmo tempo no 8.60
-
Por Lossi
Ibot 10.37 Versão 2.3.5 Efetue o download do iBot 2.3.3 Aqui: DOWNLOAD Scan (AQUI) Extraia Na Area De Trabalho Faça Cadastro no fórum PoisonX.us Abra o iBot.exe [COMO ADMINISTRADOR <-] Depois entre com seu Login e Senha cadastrada no fórum PoisonX.us Agora Espere O IBOT Abrir Creditos : PoisonX E Eu Por Postar Aqui -q LOG :
Postado Dia 12/03/2014 - 23:03
Scan Adicionado Dia 14/03/2014 - 14:29
Links Corrigidos Dia 14/03/2014 - 14:30
Link Do Topico Original (Inglês) Adicionado (Aqui) 14/03/2014 - 14:33
Duvida ? Deixe Nos Comentarios
Se Ajudei De Um Up Não Custa Nada
Topico Original (Inglês) (Aqui)
-
Por Micheel15
estou com uma spell de paladin, mais está acontecendo o seguinte, ela está quase perfeita,
é uma spell que ao usa-la, você depois fica 35 seg com [COOLDRAW]
mais caso voce tente usa-la novamente, a mana é gasta e a spell ainda está em COOLDRAW
eu gostaria, que enquanto estivesse de COOLDRAW, não fosse possivel falar o nome da magia novamente !!!!
se alguem puder me ajudar ficarei muito grato e reputarei com REP ++
@Xagah
------------------Script por Daniel Oliveira------------------
local acombat1 = createCombatObject()
local combat1 = createCombatObject()
setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat1, COMBAT_PARAM_DISTANCEEFFECT, 30)
setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -7.7, 0, -10.9, 0)
local condition = createConditionObject(CONDITION_PARALYZE)
setConditionParam(condition, CONDITION_PARAM_TICKS, 6000)
setConditionFormula(condition, -0.7, -0, -0.7, -0)
setCombatCondition(acombat1, condition)
local acombat2 = createCombatObject()
local combat2 = createCombatObject()
setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat2, COMBAT_PARAM_DISTANCEEFFECT, 30)
setCombatFormula(combat2, COMBAT_FORMULA_LEVELMAGIC, -7.7, 0, -10.9, 0)
local condition = createConditionObject(CONDITION_PARALYZE)
setConditionParam(condition, CONDITION_PARAM_TICKS, 6000)
setConditionFormula(condition, -0.7, -0, -0.7, -0)
setCombatCondition(acombat2, condition)
arr1 = {
{0, 1, 1, 1, 0},
{1, 1, 1, 1, 1},
{1, 1, 2, 1, 1},
{1, 1, 1, 1, 1},
{0, 1, 1, 1, 0},
}
arr2 = {
{0, 0, 0, 1, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 0},
{0, 0, 1, 1, 1, 0, 0},
{1, 1, 1, 2, 1, 1, 1},
{0, 0, 1, 1, 1, 0, 0},
{0, 0, 0, 1, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 0},
}
local area1 = createCombatArea(arr1)
local area2 = createCombatArea(arr2)
setCombatArea(acombat1, area1)
setCombatArea(acombat2, area2)
local function onCastSpell1(parameters)
doCombat(parameters.cid, parameters.acombat1, parameters.var)
end
local function onCastSpell2(parameters)
doCombat(parameters.cid, parameters.acombat2, parameters.var)
end
local function Cooldown(cid)
if isPlayer(cid) == TRUE then
doPlayerSendTextMessage(cid,MESSAGE_STATUS_WARNING,'CD: Exevo Gran Mas Shadow.')
end
end
local exhausted_seconds = 35 -- Segundos que o Player Poderá castar a spell novamente
local exhausted_storagevalue = 4345 -- Storage Value do Cool Down
function onTargetCreature(cid, target)
local function sun1(cid)
doPlayerSay(cid,"...",16)
return TRUE
end
local rand = math.random(1,5)
if isPlayer(target) == true and rand == 5 then
doSendAnimatedText(getCreaturePosition(target), "Stun!", TEXTCOLOR_WHITE_EXP)
return TRUE
elseif isPlayer(target) == true and rand == 4 then
doSendAnimatedText(getCreaturePosition(target), "Stun!", TEXTCOLOR_WHITE_EXP)
return TRUE
elseif isPlayer(target) == true and rand < 4 then
doSendAnimatedText(getCreaturePosition(target), "Stun!", TEXTCOLOR_WHITE_EXP)
doSendMagicEffect(getCreaturePosition(target), 60)
return TRUE
else
doSendAnimatedText(getCreaturePosition(target), "Stun!", TEXTCOLOR_WHITE_EXP)
return TRUE
end
end
setCombatCallback(combat1, CALLBACK_PARAM_TARGETCREATURE, "onTargetCreature")
function onTargetTile(cid, pos)
doCombat(cid,combat1,positionToVariant(pos))
end
setCombatCallback(acombat1, CALLBACK_PARAM_TARGETTILE, "onTargetTile")
function onTargetTile(cid, pos)
doCombat(cid,combat2,positionToVariant(pos))
end
setCombatCallback(acombat2, CALLBACK_PARAM_TARGETTILE, "onTargetTile")
function onCastSpell(cid, var)
if(os.time() < getPlayerStorageValue(cid, exhausted_storagevalue)) then
doPlayerSendCancel(cid,'O Cooldown não está pronto.')
return TRUE
end
local function spell4(cid)
return doCombat(cid, acombat1, var)
end
local function spell3(cid)
addEvent(spell4, 1 * 450, cid)
return doCombat(cid, acombat2, var)
end
local function spell3(cid)
return doCombat(cid, acombat1, var)
end
local function spell2(cid)
addEvent(spell3, 1 * 450, cid)
return doCombat(cid, acombat2, var)
end
local function spell1(cid)
addEvent(spell2, 1 * 450, cid)
return doCombat(cid, acombat2, var)
end
addEvent(spell1, 1 * 450, cid)
addEvent(Cooldown, 1*35000,cid)
setPlayerStorageValue(cid, exhausted_storagevalue, os.time() + exhausted_seconds)
return doCombat(cid, acombat1, var)
end
-
Posts Recomendados
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.