Scripts tfs 0.4 (OLD)
Fórum destinado a conteúdos de desenvolvimento envolvendo o Tibia Clássico.
Encontre pelo tipo de código:
Tópicos nesta seção estão sujeitos a análise e aprovação!
Seu tópico de conteúdo será analisado em até 48h por um membro de nossa equipe, fique atento.
Saiba mais:
1445 tópicos neste fórum
-
Olá galera do TK trago hoje uma talkaction fácil que fiz para facilitar a banir os players que divulgam ot no seu servidor. Nada mais fácil que digitar !banip playername não é? Pronto acabou com o xarope rs. Vamos lá, é bem simples! Em data/talkactions/scripts crie um arquivo com o nome banip.lua e dentro adicione: function onSay(cid, words, param) if(param == "") then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Parametro necessario.") return TRUE end local pid = getPlayerByNameWildcard(param) local tmp = getPlayerIp(pid) if(doAddIpBanishment(tmp) or pid == 0 or (isPlayerGhost(pid) == TRUE)) then doPlayerSendTextMessage(cid, MESSAGE_ST…
- 10 respostas
- 3k visualizações
- 2 followers
-
data/actions/script e crie um arquivo "Boost Stone.lua Spoiler function onUse(cid, item, fromPosition, itemEx, toPosition) local meuovo = { qnt = 1, maxi = 30, chance = 65, boost_fail = 6, falhar = math.random(4, 6) } local minhabola = getPlayerSlotItem(cid, 8).uid local boost = getItemAttribute(minhabola, "boost") or 0 if minhabola <= 0 then return doPlayerSendCancel(cid, "Coloque um pokémon no Main Slot!") elseif boost >= meuovo.maxi then return doPlayerSendCancel(cid, "Seu pokémon já se encontra no nível máximo de bo…
- 4 respostas
- 1.8k visualizações
-
Fala meus lindos! Há alguns dias diversos servidores grandes como: Shadowcores, Fortera, Dolera, Inflame, Forsaken entre demais proprietários de servidores que conversaram comigo, me disseram o ocorrido e fui investigar o que realmente estava ocorrendo. Um engraçadinho descobriu a FALHA no TFS e estava realizando em todos os servidores pedindo dinheiro para revelar o bug, mas não sabia a solução. Então com permissão, tomei posse a servidor de um cliente INFLAME-GLOBAL para junto com ele ADM Henrique achar o temível bug que causava um crash no servidor, investigamos e ACHAMOS! Então resolvi conversar com meu amigo @Bruno Mine…
- 31 respostas
- 8.6k visualizações
-
Fala galera do TK, trago hoje a vocês um sistema chamado Bounty Hunters, porém traduzido e pouco modificado. Como funciona? O Player irá executar !hunt, VALOR,NICK Com este comando ele estará oferecendo uma recompensa para que matar o jogador de NICK que ele colocou. Ao player que dar o golpe final no jogador huntado receberá automaticamente o prêmio em sua backpack (Oferecido pelo solicitante do hunted) Sem mimimi vamos ao que interessa: Em data/talkactions/scripts crie um arquivo com o nome de busque.lua e dentro adicione o conteúdo: function onSay(cid, words, param) if(param == "") then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOL…
- 27 respostas
- 4.6k visualizações
- 1 follower
-
Bom essa função serve para seguir determinado monstro. Exemplo: (você irá seguir á criatura com nome de Tibiaking) doPlayerFollowCreature(cid,getCreatureName("Tibiaking") Vá em luascript.cpp e procure por: lua_register (m_luaState, "doPlayerSetPartner", LuaInterface :: luaDoPlayerSetPartner); embaixo da linha acima coloque: // doPlayerFollowCreature (cid) Lua_register (m_luaState, "doPlayerFollowCreature", LuaInterface :: luaDoPlayerFollowCreature); no mesmo arquivo procure por: int32_t LuaInterface :: luaDoPlayerSetPartner (lua_State * L) após á linha acima coloque embaixo: int32_t LuaInterface::luaDoPlayerFollowCreature(lua_State* …
-
- 2 respostas
- 658 visualizações
-
-
Falaaa galeraaa, beleza? então, estou trazendo pra vocês aquela função do PDA a isPokeball que achei em outro fórum e vi que não tem aqui Bem, se você tá adaptando seu PDA com source, e deu erro no atributo isPokeball, após colocar essa função não irá mais dar erro. Vá em items.cpp procure por: decayTime = 0; e em baixo adicione: isPokeball = false; agora procure por: else if(tmpStrValue == "transformto") { if(readXMLInteger(itemAttributesNode, "value", intValue)) it.transformToFree = intValue; } abaixo do }, adicione: else if(tmpStrValue == "ispokeball") …
-
- 4 respostas
- 1.1k visualizações
-
-
Eae Galera faz tempo que não posto nada...Tentei postar na área certa mais o button ta desabilitado, então segue aqui mesmo, mover para area de programaçao depois... Simples esse code em c++ bloqueia movimentos muito rapidos (BOT), assim evita qualquer tipo de bug. Sem mais... em Game.cpp Procure por : if(!canThrowObjectTo(mapFromPos, mapToPos) && !player->hasCustomFlag(PlayerCustomFlag_CanThrowAnywhere)) { player->sendCancelMessage(RET_CANNOTTHROW); return false; } Abaixo Adicione : f (player->hasCondition(CONDITION_EXHAUST, EXHAUST_MOVE_ITEMS)){ player->sendTextMessage(MSG_STATUS_SMALL, "You cannot move this object.\nAn…
- 5 respostas
- 2.3k visualizações
- 1 follower
-
[C++] doCreatureCastSpell (0.3.6pl1) Escrito e testado: 0.3.6PL1 [8.54 - 8.60] Salve galera do TibiaKing, eu fui procurar na internet sobre essa função e vi que já tentaram cria-la, porém não conseguiram, ou se conseguiram nunca postaram. Então eu resolvi faze-la para vocês, e eu percebi que ninguém nunca tinha feito, por causa de uma dúvida, e um certo grau de dificuldade. Certamente, eu tive uma dificuldade no começo, porém ao desenvolver da função eu percebi que não era nada de mais. Então eu trago aqui pra vocês esta função, cuja a ideia é fazer com que a criatura (jogador ou monstro) a utilize uma magia pelo nome dela, importante lembrar …
- 22 respostas
- 4.3k visualizações
-
Bom dia! Há um certo tempo eu tive um servidor de Tibia que possuía um sistema bem interessante de tradevip. Funcionava da seguinte maneira, o player que possuísse premdays(ou VIP) usava o comando !tradevip [DIAS], [Nome do Jogador] e automaticamente gerava uma janela de trade com um item e assim poderiam ser vendidos dias de premium sem o perigo de ninguém ser roubado. Por padrão isso não é possível no Tibia, mas um usuário chamado Oneshot fez modificações nas sources para tornar isso possível. Segue agora as modificações que permitem funcionar esse sistema: Em luascript.h, adicione essa linha, abaixo das linhas parecidas. static int32_t luaDoStartTrade(…
- 8 respostas
- 1.8k visualizações
-
Salve Galera, primeiramente eu tentei postar o script na área certa porem o Button de "Criar Novo Tópico" está desativado, então vou postar aqui mesmo e depois um moderador move. Se colocarem aquele aviso tosco de "Presta atenção da proxima vez" não posto mais nada relacionado a Source. Vamos ao que interessa, olhando pela interneti achei um codigo muito interessante. "onLoginCharacter" porém no topico o código estava incompleto e eu tive que termina-lo. Não sei se posso Postar mais como eu modifiquei tenho diretos e como o proprio nome diz Open Source, não é justo eu guarda esse maravilhoso script só pra mim. Estou estudando C++ e adoro fazer modificações dire…
-
- 5 respostas
- 894 visualizações
-
-
Essa função em C++ retorna os monstros online no servidor. luascript.cpp Procure por int32_t LuaScriptInterface::luaGetPlayersOnline(lua_State* L) { //getPlayersOnline() ScriptEnviroment* env = getEnv(); AutoList<Player>::iterator it = Player::autoList.begin(); lua_newtable(L); for(int32_t i = 1; it != Player::autoList.end(); ++it, ++i) { lua_pushnumber(L, i); lua_pushnumber(L, env->addThing(it->second)); pushTable(L); } return 1; } Adicione abaixo int32_t LuaScriptInterface::luaGetMonstersOnline(lua_State* L) { //getMonstersOnline() ScriptEnviroment* env = getEnv(); AutoList<Monster>::itera…
- 2 respostas
- 525 visualizações
-
hasSpaceInContainer é uma função que retorna true ou false, ela checa se tem algum espaço livre na mochila, se você tiver carregando uma mochila dentro de uma mochila ela checa a primeira mochila e se não tiver espaço ela checa a outra mochila. em game.cpp em baixo de: void Game::showHotkeyUseMessage(Player* player, Item* item) { int32_t subType = -1; if(item->hasSubType() && !item->hasCharges()) subType = item->getSubType(); const ItemType& it = Item::items[item->getID()]; uint32_t count = player->__getItemTypeCount(item->getID(), subType, false); char buffer[40 + it.name.size()]; if(count == 1) sprintf(buffer, "U…
-
- 1 resposta
- 489 visualizações
-
-
Bom dia galera, Pra quem quer tirar aquele bug que acontece no distro quando checka a versão, vai aí uma sugestão: em otserver.cpp delete: std::clog << ">> Checking software version..."; if(xmlDocPtr doc = xmlParseFile(VERSION_CHECK)) { xmlNodePtr p, root = xmlDocGetRootElement(doc); if(!xmlStrcmp(root->name, (const xmlChar*)"versions")) { p = root->children->next; if(!xmlStrcmp(p->name, (const xmlChar*)"entry")) { std::string version; int32_t patch, build, timestamp; bool tmp = false; if(readXMLString(p…
- 8 respostas
- 952 visualizações
-
Event droploot acontece quando um monstro ou player dropa 1 item. Em creatureevent.cpp procure: bool CreatureEvents::playerLogin(Player* player) { //fire global event if is registered bool result = true; for(CreatureEventList::iterator it = m_creatureEvents.begin(); it != m_creatureEvents.end(); ++it) { if(it->second->getEventType() == CREATURE_EVENT_LOGIN && !it->second->executeLogin(player) && result) result = false; } return result; Adicione abaixo: bool CreatureEvents::dropLoot(Creature* creature, Item* item) { bool result = true; for(CreatureEventList::iterator it = m_creatureEvents.begin(); it != m_creatureEvents.end(); ++it…
-
- 6 respostas
- 1.3k visualizações
- 1 follower
-
-
[C++] Pokemon Ghost System Fala galera do TibiaKing, hoje eu venho postar pra vocês um conteúdo que particularmente eu acho muito bom. Esse sistema faz com que o pokemon cuja o nome seja "Gastly, Haunter ou Gengar" (é possível adicionar mais pokemons), passe por dentro das paredes. Instalação: Vá em creature.cpp, e procure por void Creature::getPathSearchParams(const Creature* creature, FindPathParams& fpp) const { fpp.fullPathSearch = !hasFollowPath; E abaixo adicione: if(creature->isPlayerSummon()) { if(!creature->getMaster()->hasCondition(CONDITION_INFIGHT)) { if(creature->getName() == "Gengar") fpp.cl…
- 22 respostas
- 3.4k visualizações
-
TV System é um sistema que possibilita players assistirem outros jogadores pela tv em seu servidor, bom eu só irei deixar á parte dos códigos aqui vocês terão que desenvolver os scripts em lua para funcionar porém os códigos estão prontos e funcionais. em luascript.cpp adicione: //getCreatureNoMove(cid) lua_register(m_luaState, "getCreatureNoMove", LuaScriptInterface::luaGetCreatureNoMove); //doCreatureSetNoMove(cid, block) lua_register(m_luaState, "doCreatureSetNoMove", LuaScriptInterface::luaDoCreatureSetNoMove); //doInviteToPrivateChannel(cid, msg) lua_register(m_luaState, "doInviteToPrivateChannel", LuaScriptInterface::luaDoInviteToPrivateChanne…
-
- 9 respostas
- 1.4k visualizações
- 1 follower
-
-
Bom, fiz essa função para um projeto open source meu e decidi postar ela a parte. O atributo funciona como no PxG, ele é exibido no fim da descrição do item quando dado look. Você pode definir valores para cada item no items.xml, e quando os itens são agrupados o seu valor é multiplicado pela quantidade do mesmo. Também é possível alterar/pegar o valor do item durante o jogo utilizando código Lua. Demonstração Spoiler Exemplo de Item Spoiler O valor é em gold coins, então para calcular algo como 100 k você precisará pegar o número 100000 e multiplicar por 100. <item id="1294" art…
-
- 3 respostas
- 1.6k visualizações
-
-
Fala galerinha linda do TK, hoje estou trazendo um evento que andei modificando e otimizando, é o evento City WAR, este evento tem no servidor globalwar e outros. A autoria vem de um membro da otland, portante havia o mesmo aqui em um datapack e decidi otimizar este evento para vocês do TK. Observação: É um pouco parecido com o evento do meu amigo e scripter DuH, porém com mais funções e regras, mas o objetivo é praticamente o mesmo. Como funciona: Vamos lá; Primeiramente, em sua pasta data/lib crie um arquivo com o nome de city war.lua e dentro do mesmo coloque: configCW = {timetostart = 500, -- tempo para iniciar o evento em …
- 37 respostas
- 8.7k visualizações
-
Olá Galera do TK, venho hoje rapidamente trazer um sistema muito útil e pedido em meu tópico do !eject system: http://www.tibiaking.com/forum/topic/35060-eject-system-expulsar-player-inativo-da-house/ Explicação: Sabe aqueles players chatos que compram as melhores casas e não logam no servidor e enche a desgrama da casa de item só para os novos players não comprar? Pois é, isto não existirá mais! =D Este script é apenas um arquivo que você colocará em sua pasta mods e ele executará toda vez que o servidor for reiniciado, ou seja: Quando o servidor ligar ele irá verificar os players que não logam a X dias (configurável) e então expulsa-los da casa movendo seus items…
-
- 12 respostas
- 3.3k visualizações
-
-
• Oque ele faz? • Ele faz o pokémon falar, isto mesmo por exemplo se você escrever !say Eae galera usando o pokémon Haunter Vai aparecer "Haunter Says: Eae Galera" Funciona com todos os pokémons! • Tutorial Code 1 - Scripts • • Vá para o local Data/TalkActions/Scripts • Chegando nesta pasta crie um novo arquivo chamado Say.lua • Agora dentro cole este código function onSay(cid,words,param) local pokemons = getCreatureSummons(cid) if #pokemons == 0 then return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Tira Seu Pokemon Da Ball.") end doCreatureSay(getCreatureSummons(cid)[1],param,TALKTYPE_SAY) return true end function onSay(cid…
-
- 6 respostas
- 842 visualizações
-
-
Bom galera, a pedido do DavyziinC, fiz essa animação simples que, quando o player adquire vip, pisca em vermelho a palavra 'VIP', como na imagem abaixo Primeiro crie um arquivo em 'data/creaturescripts', chamado 'vipanimation.lua', e coloque o seguinte código; time = 2 -- intervalo entre cada animação time = time*1000 function onLogin(cid) piscaVip(cid) registerCreatureEvent(cid, "pisca") return 1 end ----------------------PISCA---------------------- function piscaVip(cid) if (getPlayerPremiumDays(cid)) then doSendAnimatedText(getCreaturePosition(cid),'VIP' , 180) addEvent(piscaVip,time,cid) end return 1 end Agora, no arquivo 'creaturescripts.xml…
-
- 5 respostas
- 1.2k visualizações
- 2 followers
-
-
Então galera, eu fiz um topico antes pra eu aprender, como ninguem respondeu Então eu ajuntei alguns Tutoriais e consegui fazer E vou disponibilizar para vocês Então GO! Vão ter que editar 3 coisas! [~] Editando Creature Scripts ■ 1 - Vá na pasta "datas"; ■ 2 - Vá na pasta "creaturescripts"; ■ 3 - Vá na pasta "scripts"; Pronto aki nesta pasta, Vocês vão fazer um arquivo chamado "tel.lua" (sem aspas) Abra-o e cole este código e edite conforme você quizer, Vou explicar as partes que você tem que editar. [~] Legenda ! Vermelho = É o nome do monstro que quando morrer abrir o teleporte. Configurar: Você coloca o nome do monstro…
- 8 respostas
- 4k visualizações
-
OWNED! O Que Este Script Faz? Ao matar um player, aparecerá uma mensagem em cima do corpo com efeito de animação com o seguinte texto: OWNED! Bom, vamos ao SCRIPT: Vá em data/creaturescripts/scripts/preparedeath.lua e coloque isso: OBS:Se ele nao existir voce cria, mas se existir eu recomendo trokar no nome do script.lua e no login.lua registrar o evento com outro nome. Vá em data/creaturescripts/creaturescripts.xml e ABAIXO desta Tag: <event type="login" name="PlayerLogin" script="login.lua"/> ADICIONE ESTA: <event type="preparedeath" name="onPrepareDeath" event="script" value="preparedeath.l…
-
- 3 respostas
- 2.4k visualizações
-
-
Olá galerinha! Bom, antes de tudo, os créditos de criação do script vão para o Fresh, esse script vai proteger os jogadores contra a morte caso aconteça algum erro, crash ou até mesmo restart no seu servidor. Como? Simples, quando o servidor for iniciado, os jogadores terão 60 segundos (tempo padrão) de imunidade contra ataques físicos e mágicos, ou seja, você não causará dano em um monstro, muito menos um monstro vai causar dano em você durante o tempo pré-determinado. [Dica: Isso pode ser utilizado para criar uma quest diária, por exemplo, dentro da missão existem monstros que causam um dano de 9000, você apenas poderá completar a quest depois que o …
- 11 respostas
- 2.1k visualizações
-
Venho trazer para vocês hoje um script feito por mim e que realmente é MUITO ÚTIL.! Código: Autor: Shoeei Versão Testada: TheForgottenServer 0.4 8.60 REV 3884. Nível do Script: Fácil~IntermediarioO que ele faz? Ele verifica quantos dias de Premium o player tem e se for = a 0 ele teleporta a jogador para a sua cidade natal. Assim kikando ele da área vip após o termino da sua vip. O script em sí é bem simples, mas de bastante utilidade. Lembrando que esse script foi feito com base na VIP utilizando PremiumTime. Se você usa o VIP System do Mock ou os outros, deixe mensagem no tópico que modífico ele para estes sistemas, sem problema algum. Vamo…
-
- 2 respostas
- 1.8k visualizações
-
-
Anti Account Manager Mage Bomb Crash Eae Galera... Beleza? Introdução Vocês devem estar se perguntando porque o nome deste tópico é tão grande, vou explicar. Sabe quando você está com seu OT numa boa, e do nada começa a dar umas travadas, então você vai ver e tem algum infeliz utilizando magebomb para logar uns 200 account manager? Então, eu tenho a solução aqui, o script faz o seguinte: Se alguem com o mesmo IP logar x Account Manager, o seu IP será banido por y dias. Porque x e y? Porque pode ser configurado através do script. Instalação Na pasta data\creaturescripts, coloque isso dentro do arquivo creaturescripts.…
- 13 respostas
- 4.5k visualizações
-
Bom... decidi postar agora o script que eu fiz para barrar os botters de fast attack. Primeiro, crie um arquivo chamado "antiBot.lua" em "data\creaturescripts\scripts" e nele adicione o seguinte conteúdo: -- counts physicals, casts .... [player name : creature cid] playerAttacksMade = {} playerActivateTime = {} playerBlocked = {} function tablelength(T) local count = 0 for _ in pairs(T) do count = count + 1 end return count end function onLogin(cid) if isPlayer(cid) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, 'Loading Anti Bot... done.' ) playerAttacksMade[cid] = {} playerActivateTime[cid] = {} playerBlocked[cid] = false…
-
- 10 respostas
- 4.1k visualizações
-
-
ae galera tudo bom? Hoje venho trazer para vocês , um código que você coloca uma área, e nessa área se algum player matar um monstro ganha mais Exp. Pode ser usada bastante em área vips. Instalaçao; Vá em data/creaturescripts/scripts, copie algum arquivo da pasta e cole, renomeie para area_exp.lua e adicione dentro: Na mesma pasta, abra o login.lua e adicione isso na penúltima linha: Agora abra com o bloco de notas o arquivo creaturescripts.xml e adicione essa tag: <event type="kill" name="area_exp" event="script" value="area_exp.lua"/> Configuraçao; No código, essa parte: "from" você coloca as coo…
-
- 0 respostas
- 554 visualizações
-
-
Versão Testada: tfs (Pokemon Dash 1.0) Feita por Brun123/Mastercraft Servidor: Pokemon Dash Advanced (1.4f) Oque faz: Aquela Aura que salta do pokemon quando ele atinge 50 (pode ser configurado). em: data/creaturescripts/scripts crie um arquivo chamado auraboost.lua e cole isso dentro: registerCreatureEvent(cid, "AuraBoost") Agora em data/creaturescripts abra o creaturescripts.xml e adicione : <event type="think" name="AuraBoost" event="script" value="auraboost.lua"/> Pronto aura boost instalado. Foto: http://img843.images...9/imagem112.png Upload feito pelo site ImageShack. Créditos: Zereff - Feito script fu…
-
- 1 resposta
- 2.7k visualizações
-
-
cria um arquivo chamado sangue.lua em creaturescript/scripts e coloque o código function onStatsChange(cid, attacker, type, combat, value) local pos = getCreaturePosition(attacker) local blood = {{x = pos.x, y = pos.y - 1, z = pos.z},{x = pos.x, y = pos.y + 1, z = pos.z},{x = pos.x+1, y = pos.y, z = pos.z} ,{x = pos.x-1, y = pos.y, z = pos.z}} local item = 1903 if type == COMBAT_PHYSICALDAMAGE and isPlayer(attacker) then doCreateItem(item,1,blood[math.random(1,#blood)]) return TRUE end end depois disso em cole a tag em creaturescripts.xml <event type="statschange" name="Sangue" event="script" value="sangue.lua"/> em login.lua adici…
- 6 respostas
- 1.2k visualizações
-
Créditos no script. Explicação: no script, quando você upar level 50 você ganhará 30k (valores podem ser facilmente editádos através do config) 1. Crie um arquivo com o nome de "recompensa.lua" (sem aspas) em : data/creaturescripts/scripts. Ponha: --[script by Renato Ribeiro to TibiaKing.com]-- local config = { level = 50, -- level que irá ganhar storage = 9557, -- storage msg = "Você ganhou 30k por avaçar ao level 50.", -- mensagem ao ganhar qnt = 3; -- quantidade de crystal coin msgtp = MESSAGE_EVENT_ADVANCE, -- tipo da mensagem itemid = 2160, -- id do crystal coin (pode mudar se quiser) } function onAdvance(cid, oldL…
-
- 11 respostas
- 5.1k visualizações
-
-
Créditos no script. Explicação: Quando o player upar X level ele ganhará Y dias de premium (configurável), porém só terá efeito com o primeiro char que alcançar o X level, para evitar o ganho extra de premium. Exemplo: upei level 100 com fulano e ganhei 10 dias de premium, então criei o ciclano e ao pegar level 100 eu não irei ganhar a premium. 1. Crie um arquivo com o nome de "gainpalvl.lua" (sem aspas) em: data/creaturescripts/scripts Ponha: --[Criado por Renato Ribeiro para www.TibiaKing.com]-- --[Baseado em um script do Matheus]-- local config { level == 100, days == 10, } function onAdvance(cid, oldlevel, newlevel) if getPlayerLevel(cid) >= co…
-
- 9 respostas
- 2.9k visualizações
-
-
Em config.lua - allowChangeOutfit = false Vá em data/creaturescripts/creaturescripts.xml e adicione - <event type="login" name="Outfitek" event="script" value="outfitek.lua"/> Em data/creaturescripts/scripts/login.lua adicione - registerCreatureEvent(cid, "Outfitek") Crie outfitek.lua em data/creaturescripts e adicione - V1 V2 [1], [2], [3] id profissão 121, 122, 123 outfit para male 141, 142, 143 outfits para female Créditos - DanJ93
-
- 1 resposta
- 723 visualizações
-
-
Esse script é bem útil nos servidores, para divulgações e notícias. Crie um arquivo com na pasta creaturescripts/scripts com nome de msg.lua,e em seguida cole o script abaixo. function onLogin(cid) if getPlayerStorageValue(cid, 50000) == -1 then doPlayerSendTextMessage(cid, 22, "Bem-Vindo"..getPlayerName(cid).." acesse www.tibiaking.com e cadastra-se") setPlayerStorageValue(cid, 50000, 1) end return TRUE end em creaturescripts.xml coloque essa tag <event type="login" name="Mensagem" script="msg.lua"> Editando o Script doPlayerSendTextMessage(cid, 22, "Bem-Vindo"..getPlayerName(cid).." acesse www.tibiaking.com e c…
- 10 respostas
- 2.8k visualizações
-
Bom, o sistema que se segue eu criei com o intuito de não permitir que determinados monstros deem dano em outros. Primeiramente, crie um arquivo em "data\creaturescripts\scripts" chamado "monstersTeam.lua" e cole o seguinte conteúdo nele monstersTeam = { -- team 1 ["Dragon Hatchling" ] = 1, ["Dragon Lord Hatchling" ] = 1, ["Dragon Lord" ] = 1, ["Dragon" ] = 1, ["Frost Dragon" ] = 1, -- team 2 ["Dwarf Geomancer" ] = 2, ["Dwarf Guard" ] = 2, ["Dwarf Soldier" ] = 2, ["Dwarf" ] = 2 } function onStatsChange(cid, attacker, t, combat, value) if t == STATSCHANGE_HEALTHGAIN then return TRUE end -- getting monster bei…
-
- 3 respostas
- 669 visualizações
-
Quem Está Navegando 0
- Nenhum usuário registrado visualizando esta página.