-
Quem Está Navegando 0 membros estão online
Nenhum usuário registrado visualizando esta página.
-
Conteúdo Similar
-
Por EddyHavoc
[TUTORIAL] Retirar o efeito de sangue nos monstros quando receberem ataque
Dependendo do aspecto que você deseja dar ao seu servidor, pode ser que seja necessário retirar alguns efeitos. Na imagem abaixo você pode observar um efeito de respingo de sangue que ocorre quando os monstros levam dano. Pode ser interessante retirar este efeito em determinadas propostas de servidores alternativos, com ar mais amigáveis. (Ex: Pokemon)
(Imagem demonstrando o efeito de sangue nos monstros)
Acesse creature.cpp
E remova o seguinte código:
Agora remova o seguinte código:
Agora acesse o game.cpp
Dentro de
void Game::combatGetTypeInfo(CombatType_t combatType, Creature* target, TextColor_t& color, uint8_t& effect)
Remova os seguintes códigos:
Após estas remoções, quando os monstros levarem dano, não será mais aplicado o efeito de sangue.
-
Por FeeTads
salve rapaziada, do TK, esses tempos eu tava a procura de um autoloot bom e eficiente, e como vocês devem saber, o autoloot usado nos scripts .lua são bem "pesados"
o @Naze fez um excelentíssimo trabalho e disponibilizou um script de autoloot na source, porém como a vida é dificil, ele tem alguns bugs de função e um deles é no
"remove autoloot" que quando o player digita "!autoloot remove, nome-do-item" nada acontece, eu decidi mexer e vim disponibilizar arrumado pra vcs.
LEMBRANDO QUE 100% DOS CRÉDITOS SÃO AO @Naze porém se vc procurar no tópico dele ainda vai estar bugado, então resolvi deixar aqui certinho pra ajudar quem precisar.
Link do tópico do naze: https://tibiaking.com/forums/topic/101086-otimizado-autoloot-in-sources-for-otx2-ou-menor/
caso alguém ja utilize esse autoloot e esteja com o problema de remover items do autoloot
só ir em player.cpp e trocar
isso:
void Player::removeAutoLoot(uint16_t id) { if(checkAutoLoot(id)) { return; } AutoLoot.remove(id); }
por isso:
void Player::removeAutoLoot(uint16_t id) { if(!checkAutoLoot(id)) return; for(std::list<uint16_t>::iterator it = AutoLoot.begin(); it != AutoLoot.end(); ++it) { if((*it) == id) { AutoLoot.erase(it); break; } } }
todos os créditos ao Naze, não sei se alguém mais fez esse código, mas como peguei do link citado acima que é post dele deixo aqui o autoloot 100% funcional direto nas sources
-
Por Kimoszin
Informações
Oque é o Rent System?
É um sistema feito para os jogadores poderem alugar alguns itens por uma quantia e por um certo tempo.
Hmmm, legal... mas para que esse sistema seria util?
Bom, para o jogador antes de comprar algum item vip, por exemplo. Ele poderia testar para ver seus hits.
Ok, Mas como ele funciona?
O sistema vai entregar para o player um item, depois do tempo configuravel ele irá remover, não importa onde esteja, ele vai remover.
Instalação
\mods\rent.xml
<?xml version="1.0" encoding="UTF-8"?> <mod name="Rent System" version="1.0" author="Kimoszin" contact="tibiaking.com" enabled="yes"> <config name="rent_config"><![CDATA[ messages = { sucess = MESSAGE_INFO_DESCR, fail = MESSAGE_STATUS_WARNING, } warningStorage = 45768 items = { ["knight armor"] = {id=2476, time=1, price=3000, premium=true, cap=false}, ["demon legs"] = {id=2495, time=3, price=3000, premium=true, cap=true}, ["blue legs"] = {id=7730, time=2, price=3000, premium=true, cap=true}, ["demon shield"] = {id=2520, time=1, price=3000, premium=true, cap=true}, } function doWarningItemWasRemoved(cid) if (getCreatureStorage(cid, warningStorage) > -1) then local item = items[getItemNameById(getCreatureStorage(cid, warningStorage))] doPlayerSendTextMessage(cid, messages.sucess, "Ok, "..item.time..(item.time > 1 and " minutes" or " minute").." has passed, the rent of "..getItemNameById(item.id).." ended.") doCreatureSetStorage(cid, warningStorage, -1) end end ]]></config> <talkaction words="!rent" event="buffer"><![CDATA[ domodlib('rent_config') local item, itemuid = items[param:lower()], math.random(1000, 65535) if (param == "") then return doPlayerSendTextMessage(cid, messages.fail, "Sorry, you need to inform parameters.") end if (param == "list") then local str = "~* Rent System by Kimoszin *~\n\n" for name, iten in pairs(items) do str = str..string.sub(name, 0, 1):upper()..string.sub(name, 2):lower().." - "..iten.price.."gps \n" end str = str .."\n WWW.TIBIAKING.COM" return doPlayerPopupFYI(cid, str) end if not(item) then return doPlayerSendTextMessage(cid, messages.fail, "Sorry, but it is not possible to rent this item.") end if (item.premium and not(isPremium(cid))) then return doPlayerSendTextMessage(cid, messages.fail, "You need a premium account.") end if (item.cap and not(getPlayerFreeCap(cid) >= getItemWeightById(item.id, 1, 1))) then return doPlayerSendTextMessage(cid, messages.fail, "You don't have capacity.") end if not(doPlayerRemoveMoney(cid, item.price)) then return doPlayerSendTextMessage(cid, messages.fail, "Sorry, you do not have any money.") end doItemSetAttribute(doPlayerAddItem(cid, item.id, 1), "uid", itemuid) doPlayerSendTextMessage(cid, messages.sucess, "You rented a "..getItemNameById(item.id).." for "..item.time.. (item.time > 1 and " minutes" or " minute")..".") doCreatureSetStorage(cid, warningStorage, item.id) local player_id = getPlayerGUID(cid) addEvent(function() local player = getPlayerByGUID(player_id) if not(isPlayer(player)) then db.executeQuery("DELETE FROM `player_items` WHERE `player_items`.`player_id` = "..player_id.." AND `itemtype` = "..item.id..";") else doPlayerSendTextMessage(cid, messages.sucess, "Ok, "..item.time..(item.time > 1 and " minutes" or " minute").." has passed, the rent of "..getItemNameById(item.id).." ended.") doCreatureSetStorage(cid, warningStorage, -1) doRemoveItem(itemuid, 1) end end, item.time * 60 * 1000) ]]></talkaction> <creatureevent name="rentLogin" type="login" event="buffer"><![CDATA[ domodlib('rent_config') doWarningItemWasRemoved(cid) ]]></creatureevent> </mod>
Explicações
♣ Comandos:
!rent itemname: vai alugar o item !rent list: vai mostrar a lista dos item que são alugaveis. ♣ Variaveis
id: id do item que vai ser alugado time: tempo do item que vai ser alugado price: preço do item que vai ser alugado premium: vai verificar se o player é premium cap: vai verificar se o player tem capacidade para alugar o item -
Por MarcosAlcantara
- Olá presiso de ajuda para a copilação das soucers do Cliente da base do psoul , consigo copilar no codes so que o cliente copilado não abre e nem da erro não mostra nada, no visual studio 2013 que pede a versao v10 para a copilação da soucers da erro e presiso de ajuda nessa parte , quem enteder e puder me ajuda eu pago ou até mesmo dou vaga na staff ce gosta do servidor !
Whats para contato : (011) 982953498
Facebook : www.facebook.com/MarcosAlcantaraSP
-
Por sheen1
ALGEM ME RESPONDE , uma pergunta SOBRE O OT DO ABSOLUTE.. sou ainda meio novo nessse negocio de cria server , mas sei o basico mas nao n sei os detalhes que fazem funcionar o server.. tipo eu baixe o ot do abosolute.. mas vem uma source linux dentro.. eu baixo a outra source separada e substituo?.. e pq vem tfs separada..
-