-
Total de itens
416 -
Registro em
-
Última visita
-
Dias Ganhos
6
Tudo que drakylucas postou
-
-
oppa draky vi q voce tem conhecimento em scripts de poketibia/pokemon online e seguinte eu estou tentando montar uma equipe dos melhores pra faze um servidor e dexalo impecavel tenho local para hospedagem e tudo mais só precisamos fazelo tenho o mapa de um poketibia 8.54 que esta na seção de downloads na verdade tenho esse servidor ai e estava pensando em deixalo foda e colocalo online gostaria de saber se nao estaria interessado em fazer parte dessa equipe?
-
-
[Talk] Cs War Tibia! -- V2 Atualizado 20/10/2010
um tópico no fórum postou drakylucas Actions e Talkactions
V2 AGORA! comandos para players: !arma -> exibe a arma que o player está usando atualmente !atirar -> atira caso tenha arma, cada arma tem seu dano,velocidade e tempo de intervalo regulados. !b -> exibe tela com os tipo de armas que podem ser comprados (e com o tutorial de como compra-las) !g -> joga sua arma no chão para poder comprar outra. como pediram: Identico ao cs. todas as armas. gogo =D XML: <talkaction log="yes" words="!atirar;!b;!b1;!b2;!b3;!b4;!b5;!g;!b11;!b12;!b13;!b14;!b15;!b21;!b22;!b31;!b32;!b33;!b34;!b41;!b42;!b43;!b44;!b45;!b46;!b51;!arma" event="script" value="tiros.lua"/> agora crie um arquivo chamado tiros.lua e coloque isso: function buy(cid,numero) return getPlayerStorageValue(cid,numero) end function onSay(cid,words,param) -- [nao mexa] = {distancia maxima,velocidade,delay entre os tiros, "msg animada" , math.random(min,max)} local arsenal = { [13251] = {4,200,2,"no Pé",math.random(1,8),"9X19MM SIDEARM"}, [13252] = {4,215,2,"no Braço",math.random(1,10),"KM .45 TACTICAL"}, [13253] = {4,215,2,"no Braço",math.random(1,10),"228 COMPACT "}, [13254] = {5,170,2,"na Perna",math.random(15,35),"NIGHT WALK .50C"}, [13255] = {5,175,2,"na Perna",math.random(15,35),"ES FIVE-SEVEN"}, [13261] = {6,220,5,"UGHHH",math.random(23,35),"LEONE 12 GALGUE SUPER"}, [13262] = {6,220,3,"UGHHH",math.random(15,30),"LEONE IG1265 AUTO"}, [13271] = {7,175,2,"no Pé",math.random(1,8),"SCHMIDT MACHINE"}, [13272] = {7,170,2,"no Braço",math.random(1,10),"KM SUB-MACHINE GUN"}, [13273] = {7,170,2,"no Pé",math.random(1,8),"KM UMP45"}, [13274] = {7,160,2,"no Braço",math.random(1,10),"ES C90"}, [13281] = {5,180,1.5,"no Peito",math.random(25,65),"CLARION 5.56"}, [13282] = {7,186,2,"no Peito",math.random(25,65),"SCHMIDT SCOUT"}, [13283] = {6,170,1.5,"Nut Shot",math.random(25,75),"MAVERICK M4A1"}, [13284] = {5,160,1.5,"no Peito",math.random(25,65),"BULLPUP"}, [13285] = {6,170,2,"Nut Shot",math.random(25,75),"KRIEG 550 COMMANDO"}, [13286] = {8,145,3,"Head Shot",math.random(80,100),"MAGNUM SNIPER RIFLE"}, [13291] = {7,165,8,"Errou",0,"M249"}, } local armamento = arsenal[getPlayerStorageValue(cid,13245)] if words == "!b" then doPlayerPopupFYI(cid, "Sell:" .. "\n1 - PISTOLS" .. "\n2 - SHOTGUNS" .. "\n3 - SMG" .. "\n4 - RIFLES" .. "\n5 - MACHINE GUNS" .. "\n" .. "\nSay '!b + number' -> example:" .. "\n!b1 for open PISTOLS Sellers." ) end if words == "!b1" then -- PISTOLS doPlayerPopupFYI(cid, "Sell:" .. "\n11 - 9X19MM SIDEARM --- 4000 GOLD COINS" .. "\n12 - KM .45 TACTICAL --- 5000 GOLD COINS" .. "\n13 - 228 COMPACT --- 6000 GOLD COINS" .. "\n14 - NIGHT WALK .50C --- 6500 GOLD COINS" .. "\n15 - ES FIVE-SEVEN --- 7500 GOLD COINS" .. "\n" .. "\nSay '!b + number' -> example:" .. "\n!b14 for buy NIGHT WALK .50C (DESERT EAGLE)." ) end if words == "!b2" then -- SHOTGUNS doPlayerPopupFYI(cid, "Sell:" .. "\n21 - LEONE 12 GALGUE SUPER --- 17000 GOLD COINS" .. "\n22 - LEONE IG1265 AUTO --- 30000 GOLD COINS" .. "\n" .. "\nSay '!b + number' -> example:" .. "\n!b21 for buy LEONE 12 GALGUE SUPER." ) end if words == "!b3" then -- SMG doPlayerPopupFYI(cid, "Sell:" .. "\n31 - SCHMIDT MACHINE --- 12500 GOLD COINS" .. "\n32 - KM SUB-MACHINE GUN --- 15000 GOLD COINS" .. "\n33 - KM UMP45 --- 17000 GOLD COINS" .. "\n34 - ES C90 --- 23500 GOLD COINS" .. "\n" .. "\nSay '!b + number' -> example:" .. "\n!b34 for buy ES C90." ) end if words == "!b4" then -- RILES doPlayerPopupFYI(cid, "Sell:" .. "\n41 - CLARION 5.56 --- 22500 GOLD COINS" .. "\n42 - SCHMIDT SCOUT --- 27500 GOLD COINS" .. "\n43 - MAVERICK M4A1 --- 31000 GOLD COINS" .. "\n44 - BULLPUP --- 35000 GOLD COINS" .. "\n45 - KRIEG 550 COMMANDO --- 42000 GOLD COINS" .. "\n46 - MAGNUM SNIPER RIFLE --- 47500 GOLD COINS" .. "\n" .. "\nSay '!b + number' -> example:" .. "\n!b46 for buy MAGNUM SNIPER RIFLE(AWP)." ) end if words == "!b5" then -- RILES doPlayerPopupFYI(cid, "Sell:" .. "\n51 - M249 --- 57500 GOLD COINS" .. "\n" .. "\nSay '!b + number' -> example:" .. "\n!b51 for buy M249(RAMBO)." ) end local comprar = { ["!b11"] = {13251,4000}, ["!b12"] = {13252,5000}, ["!b13"] = {13253,6000}, ["!b14"] = {13254,6500}, ["!b15"] = {13255,7500}, ["!b21"] = {13261,17000}, ["!b22"] = {13262,30000}, ["!b31"] = {13271,12500}, ["!b32"] = {13272,15000}, ["!b33"] = {13273,17000}, ["!b34"] = {13274,23500}, ["!b41"] = {13281,22500}, ["!b42"] = {13282,27500}, ["!b43"] = {13283,31000}, ["!b44"] = {13284,35000}, ["!b45"] = {13285,42000}, ["!b46"] = {13286,47500}, ["!b51"] = {13291,57500}, } local buyarmas = comprar[words] if buyarmas ~= nil then if buy(cid,13251) >= 1 or buy(cid,13252) >= 1 or buy(cid,13253) >= 1 or buy(cid,13254) >= 1 or buy(cid,13255) >= 1 or buy(cid,13261) >= 1 or buy(cid,13262) >= 1 or buy(cid,13271) >= 1 or buy(cid,13272) >= 1 or buy(cid,13273) >= 1 or buy(cid,13274) >= 1 or buy(cid,13281) >= 1 or buy(cid,13282) >= 1 or buy(cid,13283) >= 1 or buy(cid,13284) >= 1 or buy(cid,13285) >= 1 or buy(cid,13286) >= 1 or buy(cid,13291) >= 1 then return doPlayerSendTextMessage(cid,MESSAGE_STATUS_CONSOLE_BLUE,"Voce nao pode comprar mais armas estando com uma. digite !g para se livrar de sua arma.") end if doPlayerRemoveMoney(cid, buyarmas[1]) == FALSE then return doPlayerSendTextMessage(cid,MESSAGE_STATUS_CONSOLE_BLUE,"Você tem que ter "..buyarmas[2].." gold coins.") end setPlayerStorageValue(cid,buyarmas[1],1) -- teste -- setPlayerStorageValue(cid,13245,buyarmas[1]) doPlayerSendTextMessage(cid,MESSAGE_STATUS_CONSOLE_BLUE,"Você comprou uma arma.") end if words == "!g" then if buy(cid,13251) >= 1 or buy(cid,13252) >= 1 or buy(cid,13253) >= 1 or buy(cid,13254) >= 1 or buy(cid,13255) >= 1 or buy(cid,13261) >= 1 or buy(cid,13262) >= 1 or buy(cid,13271) >= 1 or buy(cid,13272) >= 1 or buy(cid,13273) >= 1 or buy(cid,13274) >= 1 or buy(cid,13281) >= 1 or buy(cid,13282) >= 1 or buy(cid,13283) >= 1 or buy(cid,13284) >= 1 or buy(cid,13285) >= 1 or buy(cid,13286) >= 1 or buy(cid,13291) >= 1 then setPlayerStorageValue(cid,13251,-1) setPlayerStorageValue(cid,13252,-1) setPlayerStorageValue(cid,13253,-1) setPlayerStorageValue(cid,13254,-1) setPlayerStorageValue(cid,13255,-1) setPlayerStorageValue(cid,13261,-1) setPlayerStorageValue(cid,13262,-1) setPlayerStorageValue(cid,13271,-1) setPlayerStorageValue(cid,13272,-1) setPlayerStorageValue(cid,13273,-1) setPlayerStorageValue(cid,13274,-1) setPlayerStorageValue(cid,13281,-1) setPlayerStorageValue(cid,13282,-1) setPlayerStorageValue(cid,13283,-1) setPlayerStorageValue(cid,13284,-1) setPlayerStorageValue(cid,13285,-1) setPlayerStorageValue(cid,13286,-1) setPlayerStorageValue(cid,13291,-1) setPlayerStorageValue(cid,13245,-1) doPlayerSendTextMessage(cid,MESSAGE_STATUS_CONSOLE_BLUE,"Você se livrou de sua arma.") else return doPlayerSendTextMessage(cid,MESSAGE_STATUS_CONSOLE_BLUE,"Você não tinha arma.") end end if words == "!atirar" then local storage = 13243 if armamento == nil then return doPlayerSendCancel(cid,"Voce precisa comprar uma arma, digite !b") end if getTilePzInfo(getCreaturePosition(cid)) == TRUE then return doPlayerSendCancel(cid,"Voce só pode atirar fora da protection zone.") end if os.time() - getPlayerStorageValue(cid,storage) <= armamento[3] then return doSendAnimatedText(getCreaturePosition(cid), "Reloading", math.random(1,255)) end setPlayerStorageValue(cid,storage,os.time()) -- SCRIPT BY DRAKY LUCAS -- -- [de 1 a 10] = {"fala",math.random(dano minimo,dano maximo) em percentagens}, local falas = { [1] = {"Head Shot",math.random(80,100)}, [2] = {"Nut Shot",math.random(25,35)}, [3] = {"na Perna",math.random(10,25)}, [4] = {"no Peito",math.random(50,75)}, [5] = {"no Pé",math.random(1,10)}, } local i = 1 local tempo = armamento[2] local max = armamento[1] -- numero de repetiçoes repeat local direction = getPlayerLookDir(cid) position = getCreaturePosition(cid) if(direction == NORTH) then position.y = position.y - (i/tempo) elseif(direction == SOUTH) then position.y = position.y + (i/tempo) + 1 elseif(direction == WEST) then position.x = position.x - (i/tempo) elseif(direction == EAST) then position.x = position.x + (i/tempo) + 1 end position.stackpos = 253 local pos = {x = position.x,y = position.y, z = position.z} pos.stackpos = 253 if getTilePzInfo(pos) == TRUE then break end if getThingfromPos(pos).itemid > 0 then local fala = falas[math.random(1,10)] if fala == nil then if addEvent(isPlayer,i,getThingfromPos(pos).uid) then addEvent(doCreatureAddHealth,i,getThingfromPos(pos).uid,-(getCreatureMaxHealth(getThingfromPos(pos).uid)/100)* armamento[5]) addEvent(doSendMagicEffect,i,pos,64) addEvent(doSendAnimatedText,i,pos, armamento[4], math.random(1,255)) break end end if addEvent(isPlayer,i,getThingfromPos(pos).uid) then addEvent(doCreatureAddHealth,i,getThingfromPos(pos).uid,-(getCreatureMaxHealth(getThingfromPos(pos).uid)/100)* fala[2]) addEvent(doSendMagicEffect,i,pos,64) addEvent(doSendAnimatedText,i,pos, fala[1], math.random(1,255)) break end break end addEvent(doSendMagicEffect,i,pos, 4) i = i + tempo until i >= tempo * max end -- do if word == atirar.. if words == "!arma" then if getPlayerStorageValue(cid,13245) <= 0 then return doPlayerSendTextMessage(cid,25,"Você não tem arma.") end doPlayerSendTextMessage(cid,25,"Você está usando uma "..armamento[6]..".") end return TRUE end Créditos: Eu (DrakyLucas) e Ricardo Ripping é crime. PROIBO postagem em outro fórum BRASILEIRO. Se for postar em um fórum INGLES colocar os devidos créditos. ATUALIZADO DIA 20 DE OUTUBRO DE 2010 AS 15:21 (HORÁRIO DE VERÃO). plz comentz =d -
Drakylucas Reset Sistem! Agora É V2!
tópico respondeu ao drakylucas de drakylucas em Lixeira Pública
aff kra desisto desse reset sistem todo mundo fala que é cópia e nao acredita .... Vodkart o sistema de doenças eu vo fazer e tb to fazendo um sistema de cs-tibia e irei posta-lo. -
Drakylucas Reset Sistem! Agora É V2!
tópico respondeu ao drakylucas de drakylucas em Lixeira Pública
alguem citou que o sistema dela não funcionava para Mysql, na vdd o dele nao funciona pa sql (Sqlite) qnd coloca da um erro ao resetar, tipo o player rseta mais se tu jog aitem no chao da pa clona pq da erro no update da db pq ja tinha um em andamento e o player nao salva o meu é pa sql basicamente, umas partes sim eu peguei do marcello, porém nao foi muita coisa,como o vodkart disse eu peguei funções etc mais nao peguei.. as funções eu peguei a funçao do isVip(cid) do kydrai e modifikei para pegar a tabela "players" com o nome de "resets". deve ter sido assim que marcello fez tb =d e no meu há algumas opções basicas mais para pessoas novatas que nao sabem nem noção ajudaria bastante como se utiliza vip ou se utiliza premium.. pow ninguem dá ideias..se dessem ideias eu faria.. ja to fazendo pa escolher o vip sistem usado (com os mais famosos) e tb po ADM escoher se ao resetar tb reseta skills.... possivelmente caso alguem pessa eu vo fazer bonus adicionais a quem resetar, exemplo ao resetar ganhar mais % de exp rate para upar mais rapido etc etc.. =d -
Drakylucas Reset Sistem! Agora É V2!
tópico respondeu ao drakylucas de drakylucas em Lixeira Pública
pow pessoal caso queiram usar o do marcello usem.. esse é uma alternativa,, se fosse assim não há necessidade de otserver se ja existe o global kkk e os comentarios vc pode apagar só deixeila pa pessoa ver.. as functions se vc apaga vai da um erro muitho loko =d tudo que tiver dps de -- vc pode apagar =d na V3 irei colocar o sistema para varios vip sistem e irei reduzir um poco =d -
Scripting = Verificar Players Em Certa Área !
pergunta respondeu ao Derlexy de drakylucas em Scripts
simples, copie esse script e apenas mude as posições e as storages para uma nao dar conflito na otra. A É e tb muda as ACTIONS ID -
action [Action] System Stone (Pokémons Ot's)
tópico respondeu ao thalia de drakylucas em Actions e Talkactions
o portfoil é facil kk eu que fiz po lukinhas.. ele só configuro xD o script ai tem um porém doItemSetAttribute(getPlayerSlotItem(cid, 8).uid, "name", ""..evo[monster].." Pokeball") ./\ isso equivale ao seu go/back, vc teria de fazer para todos os go/back kkkkk isso fará que mude o nome da ball, caso vocês usem atributos mudem o name po nome do atributo e o valor pelo que vc usa (n sei se é actionId..se é nome..) fazer scripts assim para poketibia é mto facil =d quero ver fazerem uns sistemas como o de poke upar level, ganhar atributos... eu to desenvolvendo o meu sistema assim po pokeland.. eu ricardo e tk =d mais parabens kk ta aprendendo =D..qlqr duvida fala comigo no msn lukinhas ^^ -
cara só pa nao enxer akele tópico..
akilo fica igual a um tp falante só que ai nem precisaria do global event xD
while = em quanto..
em resumo seria em quanto a storagefor maior ou igual a zero, fazer:
msg animada
setar storage com um valor a menos
fim
=d -
Fishing Rod, Pescando Pelo Fishing Skill.
tópico respondeu ao lenon00 de drakylucas em Lixeira Pública
a proxima vez procura http://www.xtibia.com/forum/topic/141913-action-fishing-system-pokemon-ots/ -
Scripting = Verificar Players Em Certa Área !
pergunta respondeu ao Derlexy de drakylucas em Scripts
eu nao quis ser grosso.... fazer o que você fez de checar posiçao eu nao sei mais pow while é facil =d vc setaria a global storage como vc fez (só que em segundos) e no msmo script após setar poderia colocar isso ai nao precisaria do global event.. duvido mto que o vodkart nao saiba fazer isso.. ele ta me zuando ctz =d eu nao quis dizer que seu sistema tava ruim e que podia melhora-lo, quis dizer que havia uma maneira mais facil =d se eu ofendi me desculpe =d -
Scripting = Verificar Players Em Certa Área !
pergunta respondeu ao Derlexy de drakylucas em Scripts
vodkart gostei mto xD mais no lugar do storage de player vc poderia setar uma storage global, fazer um while com addEvents de sendAnimatedText com o tempo restando =D ai concluiria o pedido dele ( ) ao Derlexy: belo tópico, não vejo um tão organizado na seção de pedidos a varios meses. caso o vodkart nao conclua com o timer sipá eu tento fazer pa vc pela organização do tópico =d -
Drakylucas Reset Sistem! Agora É V2!
tópico respondeu ao drakylucas de drakylucas em Lixeira Pública
pessoal atualizei pa v2.. algumas novidades é a checagem de skull e a principal foi a checagem se a pessoa utiliza o vip sistem =D v3 será colocado os principais vip sistem para funcionamento automatio (o do kydrai e o perfect vip sistem e TALVEZ o do MOCK) =D e ao marcello, vlw pelas dica tal do kick =d sem recentimentos kk =d a todo mundo: DÊEM IDEIAS PARA A V3!!! TAIS DE CONFIGURAÇÕES ATEH A SISTEMAS COMPLEXOS UTILIZANDO RESET! -
Drakylucas Reset Sistem! Agora É V2!
tópico respondeu ao drakylucas de drakylucas em Lixeira Pública
desculpa entao marcello kkk quando sair o YTC vo faze ele pelo client kkk =d naruto seu faker kk falo rep ++ e nao adicionou rep kkkkkkkkk =d pessoal dêem ideia para um v2 =d EDIT: respondendo a msg de baixo.. eu sei kra mais msmo assim quando sair o YTC vo faze pelo client kepokepo fica mais legal do que pelo site ^^ -
Drakylucas Reset Sistem! Agora É V2!
tópico respondeu ao drakylucas de drakylucas em Lixeira Pública
=D cara passar pa sql vc falo que é mais facil mais nao é tanto, pois o update da table faz nao salvaro seu char possibilitando bugs de clonagem de itens durante o reset. e otra fazer sem deslogar perde a graça pq? pq dai o player nao precisa infrentar uma fila de 200 pessoas em um server full se for free? .... non-kick é mto melhor =D e o meu fiz em base de vip e tals.. =d e no seu tem um bug.. vo mostra (ao menos achu que é bug) resetConf = { Level = 350, -- Level Necessário para Resetar. [Valor] backLvl = 8, -- Level que voltará após o Reset. [Valor] time = 5, -- Tempo para o Player deslogar ao resetar, em segundos. [Valor] }, se esse level for maior que o do stage, o player nao pode resetar por causa desse if function nowReseting() if (getPlayerLevel(cid) < coNdConf.resetConf.Level) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "- Level Necessário Para o Reset ["..coNdConf.resetConf.Level.."]. Faltam "..coNdConf.resetConf.Level-getPlayerLevel(cid).." level's para você Resetar. -") return true end =d -
não é tao simples.. é assim: vá em file, preferences, client version e coloque na versão que vc ker, nas duas caixinhas la em baixo vc dexa desativado.. da apply e dps fexa / abre dinovo o map editor ele vai pedi o spr e o dat do client modificado seu.. é só achar ele e dar ok e fexa / abri dinovo =D
-
Drakylucas Reset Sistem! Agora É V2!
tópico respondeu ao drakylucas de drakylucas em Lixeira Pública
o do marcello? aquele nao roda em sqlite. esse alem de rodar em qualquer db (mySql,sqlite...) o char nao é kikado para resetar.. ele reseta sem deslogar =D. -
RETIRADO. Motivo: todos criticam e falam que é cópia, sendo que nao é. podem fexar o tópico (nao sei a quem reporto pa fexarem aqui =/) .
-
action [Action] Ride System, Pokemon Ots
tópico respondeu ao thalia de drakylucas em Actions e Talkactions
vcs podem modificar essa parte local nome = getItemName(getPlayerSlotItem(cid, CONST_SLOT_FEET).uid) local poke_name = nome:match('(.-) Pokeball') nessas 2 linhas que define o que irá puxar o nome do pokemon.. caso seu ot use attribute em um item , action id e etc basta mudar essas 2 linhas =D -
dai você coloca assim
-
no xml coloca a tag allowfaruse="1" =d.. dai da pa usa de longe.
-
script: local ID_DA_CIDADE = 1 -- aqui se vai coloca a ID da cidade (vai no map editor.. edit town.. cria a town e coloca a id) XML: mude o que está em vermelho. não testei (fiz na pressa) mais deve funcionar.
-
falta uma lib nesse dai.. nao tem funções como doPokemonCombat(cid, var) =d dai nao lê sem ter ela.
-
bem tipo pakeles que nao gostam de ir ateh o player selecionar 300 quadradins etc.. fiz esse /ban ele é bastante pratico.. exemplo de uso.. /ban xxxx,30 -- bane o xxxx por 30 dias. vamos ao script em talkactions.xml adicione: <talkaction log="yes" words="/ban" access="5" event="script" value="bannes.lua"/> agora crie o bannes.lua dentro da pasta talkactions/script e nele adicione: function onSay(cid, words, param, channel) local t = param:explode(",") local name, days = t[1], tonumber(t[2]) if name then if days then local acc = getAccountIdByName(name) if acc ~= 0 then local tempo = days * 24 * 3600 doAddAccountBanishment(acc, target, os.time() + tempo, 5, 2, 'Banido por desrespeito.', 0) else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Este player não existe.") end else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não pode adicionar essa quantidade de dia(s) de dias de banimento.") end else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "esse player nao existe.") end return true end não sei se ele ja existia.. eu fiz ele aqui rapidao e nem vi se ja tinha um topico com isso.. desse script os créditos sao meus =D comments plz =d
-
bem.. vou aproveitar essa oportunidade =D Nome do projeto: [Draky]World o que é: é um projeto de um servidor alternativo de Tibia (A.T.S) Breve descrição: Bem esse é um projeto bem inovador, contendo sprites próprias, mapa próprio, sistemas inovadores como Fly(com dragons), Ride (com cavalos), Alquimia, Refinação, Sit (sentar), Lojas exclusivas(exemplo uma loja de roupas). Vários Teasers ja foram colocados no tópico e alguns ainda estão sendo. Tópic: http://www.xtibia.com/forum/topic/141978-draky-world/ vlw ae Won Helder e toda a galera do XTIBIA!
-
cara testa isso.. isso no fisico deve resolver agora em magias e runas nao sei nao. em creaturescripts / scripts / login.lua coloque isso registerCreatureEvent(cid, "atkvocations") agora em creaturescrtips.xml coloque isso <event type="attack" name="atkvocations" event="script" value="atkvocations.lua"/> agora em creaturescripts/scripts crie um arquivo chamado atkvocations.lua e nele coloque isso function onAttack(cid, target) if not isPlayer(target) then return true end if getPlayerVocation(cid) <= 8 and getPlayerVocation(target) >= 9 then return false end if getPlayerVocation(cid) >= 9 and getPlayerVocation(target) <= 8 then return false end return true end com isso a terceira vocação nao poderá atacar a primeira/segunda e a primeira/segunda nao poderá atacar a terceira pelo menos no físico.
-
Quem Está Navegando 0 membros estão online
- Nenhum usuário registrado visualizando esta página.