
Risoka
Membro
-
Registro em
-
Última visita
Histórico de Curtidas
-
Risoka recebeu reputação de roriscrave em setCreatureName(cid, name, description)Não modifique tudo roriscrave, mude apenas "mType->nameDescription" para "nameDescription"
-
Risoka recebeu reputação de Kramer em Onde fica as sourcesO que chamamos de sources do servidor é um conjunto de códigos em c++ (arquivos .cpp e .h) que fazem basicamente tudo no seu servidor, inclusive dita a maneira que você usa o .lua, as funções e como o servidor envia informações.
A pasta que contem esses arquivos não faz nada mesmo que você modifique os arquivos ou até os delete até que você compile eles. (no caso, criar o executável .exe, o distro)
Portanto, para conseguir "usar" as souces novas, você deve compilá-las. Não é só substituir alguma pasta, você deve substituir o distro.
Esteja ciente de que fazendo isso talvez nenhum dos seus scripts antigos funcionem com o novo distro.
Não recomendo pegar um servidor tfs 0.3.6.x (ou mesmo o 0.4.x) e atualizar o distro para tfs 1.x.
Você baixou as mais recentes (provavelmente do git do tfs, a 1.0)?
Tem várias maneiras de compilar as sources. Você pode usar um computador com sistema linux, pode usar o Microsoft Visual Studio, pode usar o code::blocks... etc etc...
Tem algumas maneiras aqui no forum, tente entrar nesse link: http://www.tibiaking.com/forum/forum/146-tutoriais-de-programa%C3%A7%C3%A3o/
-
Risoka recebeu reputação de Wend em [OLD/OTC] Aumentado o Limite de SpritesMuito bom o tutorial!
Só comentando, o alpha já está disponível no otc do edubart, ele juntou com a versão do Mignari. Já é possível usar imagens transparentes.
-
Risoka deu reputação a MatheusEnjoy em Capacidade de SobrecargadaTentando trazer ainda mais conteúdo para o forum, achei um código pronto muito interessante que aumenta muito o RPG do servidor.
E um sistema tirado dos jogos da Bethesda como Skyrim e Fallout. Essa modificação faz com o que personagem com a tenha capacidade de carregar infinita, mais ao chegar determinado valor o personagem começa andar mais devagar.
Vamos ao código:
Em config.lua
Abaixo de:
playerFollowExhaust = 0Adicione:
capacityOverload = 0.75Em configmanager.cppAbaixo de:
m_confNumber[FOLLOW_EXHAUST] = getGlobalNumber("playerFollowExhaust", 2000); Adicione:
m_confDouble[CAPACITY_OVERLOAD] = getGlobalDouble("capacityOverload", 0.75); Em configmanager.hAbaixo de:
FORMULA_MAGIC,Adicione:
CAPACITY_OVERLOAD,Em player.cppSubstitua:
windowTextId = nextExAction = 0;Por:
windowTextId = nextExAction = capacityOverload = 0;Substitua:
void Player::updateInventoryWeight()Por:
void Player::updateInventoryWeight() { inventoryWeight = 0.00; if(hasFlag(PlayerFlag_HasInfiniteCapacity) || !g_config.getBool(ConfigManager::USE_CAPACITY)) return; for(int32_t i = SLOT_FIRST; i < SLOT_LAST; ++i) { if(Item* item = getInventoryItem((slots_t)i)) inventoryWeight += item->getWeight(); } if (inventoryWeight >= capacity && !capacityOverload) { capacityOverload = (int32_t)(getSpeed() * g_config.getDouble(ConfigManager::CAPACITY_OVERLOAD)); g_game.changeSpeed(this, -capacityOverload); } else if (inventoryWeight < capacity && capacityOverload) { g_game.changeSpeed(this, capacityOverload); capacityOverload = 0; } }Substitua:
bool Player::hasCapacity(const Item*, uint32_t) constPor:
bool Player::hasCapacity(const Item*, uint32_t) const { return true; }Substitua:
void Player::onThink(uint32_t interval)Por:
void Player::onThink(uint32_t interval) { Creature::onThink(interval); int64_t timeNow = OTSYS_TIME(); if(timeNow - lastPing >= 5000) { if (capacityOverload) { g_game.addMagicEffect(getPosition(), MAGIC_EFFECT_POFF); sendCancel("Your capacity is overloaded!"); } lastPing = timeNow; if(hasClient()) client->sendPing(); else if(g_config.getBool(ConfigManager::STOP_ATTACK_AT_EXIT)) setAttackedCreature(NULL); } if((timeNow - lastPong) >= 60000 && !getTile()->hasFlag(TILESTATE_NOLOGOUT) && !isConnecting && !pzLocked && !hasCondition(CONDITION_INFIGHT)) { if(hasClient()) client->logout(true, true); else if(g_creatureEvents->playerLogout(this, false)) g_game.removeCreature(this, true); } messageTicks += interval; if(messageTicks >= 1500) { messageTicks = 0; addMessageBuffer(); } if(lastMail && lastMail < (uint64_t)(OTSYS_TIME() + g_config.getNumber(ConfigManager::MAIL_ATTEMPTS_FADE))) mailAttempts = lastMail = 0; }Em player.hAbaixo de:
int32_t shieldBlockCount;Adicione:
int32_t capacityOverload;Créditos:Code by: sn3ejk - OTLand
Tradução by: MatheusEnjoy