Ir para conteúdo

Líderes

Conteúdo Popular

Exibindo conteúdo com a maior reputação em 10/26/17 em %

  1. Gabrieltxu

    [OTIMIZADO] Atribute IsPokeball

    Olá galera, então estava vendo um codigo postado aqui pelo membro @Deadpool e vi que poderia ter otimizado e melhorado, eu fiz isso e estarei hoje postando para vocês, espero que gostem xD. Algumas informações: - O codigo foi criado para a source 0.3.6pl - O Código cria um novo Item_TYPE (POKEBALL) - O Código cria um atributo chamado IsPokeball - O Código seta tudo com o weight a 0 Código: Em Items.cpp encontre levelDoor = 0; e logo abaixo adicione isPokeball = false; Agora encontre else if(tmpStrValue == "transformto") { if(readXMLInteger(itemAttributesNode, "value", intValue)) it.transformToFree = intValue; } E logo abaixo adicione else if(tmpStrValue == "weight") it.weight = 0; else if(tmpStrValue == "isPokeball") { it.slotPosition |= SLOTP_FEET; it.wieldPosition = SLOT_FEET; it.type = ITEM_TYPE_POKEBALL; it.weight = 1000; } Agora vamos em Items.h e procure por ITEM_TYPE_KEY, e Logo abaixo adicione ITEM_TYPE_POKEBALL, Agora abaixo de Ammo_t ammoType; Adicione bool isPokeball; E pronto agora só compilar e testar, agora para configurar no items.xml a pokebola devera ficar assim <item id="xxxx" article="a" name="pokeball ball"> <attribute key="type" value="pokeball" /> <attribute key="ispokeball" value="1"/> </item> Espero que gostem galera xD
    1 ponto
  2. Ritsunakato

    [Encerrado]sprite

    bom dia estou a procura de uma equip dedicada que goste de ter um projeto e acima de tudo que tenha vontade e esteja on sempre agora se n for pra ta off direto nem manda pm! (obs:So trabalho com poketibia) sprite:78% mapper 90% script 12% designer 60% bom é isso galera! e pra quem eu ja fiz parte da equip me desculpe nem adianta manda pm! pq todos que eu tive em equip nunca ficarao 75% preucupados com o projeto meu watz:48998142391. meu skyp:Fael.rosa1. quem quiser manda pm diga algo oque pensa e se pensa inovar, fale um pouco sobre servidor!!!!! abraç att ritsu um dos meus trabalhos!
    1 ponto
  3. Auto loot arrumado para o patch v1 http://www.mediafire.com/download/4caso6wjoaog23p/Pathautoloot.rar Só substituir os arquivos.
    1 ponto
  4. Strogman

    Perfect nick system 100%

    exclusividade xtibia porfavor não postar em outro forum system exclusivo para o xtibia Bom vi muito gente a traz desse sistema e, então resolvi fazer esse nick para ajudar a galera que quer sair do Lixo do pda e começar um projeto bom com os open source. para quem não sabe, nick system é um system muito popular na família dos poketibias, é um system que muda o nome/adiciona um apelido no personagem, muda o nome de exibição no client o nome que fica em cima do personagem no jogo. fulano: Gristony como essa função funciona? Gristony: exatamente igual a do pda! Em ProtocolGame.cpp em baixo de: void ProtocolGameAddShopItem(NetworkMessage_ptr msg, const ShopInfo item){ const ItemType& it = Itemitems[item.itemId]; msg->AddU16(it.clientId); if(it.isSplash() || it.isFluidContainer()) msg->AddByte(fluidMap[item.subType % 8]); else if(it.stackable || it.charges) msg->AddByte(item.subType); else msg->AddByte(0x01); msg->AddString(item.itemName); msg->AddU32(uint32_t(it.weight * 100)); msg->AddU32(item.buyPrice); msg->AddU32(item.sellPrice);} adicione: void ProtocolGamereloadCreature(const Creature* creature){ if(!canSee(creature)) return; // we are cheating the client in here! uint32_t stackpos = creature->getTile()->getClientIndexOfThing(player, creature); if(stackpos >= 10) return; NetworkMessage_ptr msg = getOutputBuffer(); if(msg) { TRACK_MESSAGE(msg); stdlist<uint32_t>iterator it = stdfind(knownCreatureList.begin(), knownCreatureList.end(), creature->getID()); if(it != knownCreatureList.end()) { RemoveTileItem(msg, creature->getPosition(), stackpos); msg->AddByte(0x6A); msg->AddPosition(creature->getPosition()); msg->AddByte(stackpos); AddCreature(msg, creature, false, creature->getID()); } else AddTileCreature(msg, creature->getPosition(), stackpos, creature); }}void ProtocolGamesendCreatureNick(const Creature* creature){ reloadCreature(creature);} Em ProtocolGame.h em baixo de: void sendQuestInfo(Quest* quest); adicione: void reloadCreature(const Creature* creature);void sendCreatureNick(const Creature* creature); Em Player.h em baixo de: void sendCreatureShield(const Creature* creature) {if(client) client->sendCreatureShield(creature);} adicione: void sendCreatureNick(const Creature* creature) {if(client) client->sendCreatureNick(creature);} Em Creature.cpp em baixo de: partyShield = SHIELD_NONE; adicione: Nick = ""; Em Creature.h em baixo de: virtual const Monster* getMonster() const {return NULL;} adicione: stdstring Nick; Luascript.cpp em baixo de: //doPlayerSendCancel(cid, text) lua_register(m_luaState, "doPlayerSendCancel", LuaScriptInterfaceluaDoPlayerSendCancel); adicione: //doCreatureSetNick(cid, nick) lua_register(m_luaState, "doCreatureSetNick", LuaScriptInterfaceluaDoCreatureSetNick); em baixo de: int32_t LuaScriptInterfaceluaDoPlayerSendCancel(lua_State* L){ //doPlayerSendCancel(cid, text) stdstring text = popString(L); ScriptEnviroment* env = getEnv(); if(const Player* player = env->getPlayerByUID(popNumber(L))) { player->sendCancel(text); lua_pushboolean(L, true); } else { errorEx(getError(LUA_ERROR_PLAYER_NOT_FOUND)); lua_pushboolean(L, false); } return 1;} adicione: int32_t LuaScriptInterfaceluaDoCreatureSetNick(lua_State* L){ //doCreatureSetNick(cid, nick) ScriptEnviroment* env = getEnv(); stdstring nick = popString(L); Creature* creature = env->getCreatureByUID(popNumber(L)); if(creature) { SpectatorVec list; g_game.getSpectators(list, creature->getPosition()); Player* player = NULL; creature->Nick = nick; for(SpectatorVecconst_iterator it = list.begin(); it != list.end(); ++it) { if(player = (*it)->getPlayer()) { player->sendCreatureNick(creature); break; } } }else{ lua_pushnil(L); } return 1;} Em Luascript.h em baixo de: static int32_t luaDoRemoveItem(lua_State* L); adicione: static int32_t luaDoCreatureSetNick(lua_State* L); Em Protocolgame.cpp procure por: void ProtocolGameAddCreature(NetworkMessage_ptr msg, const Creature* creature, bool known, uint32_t remove){ if(!known) { em baixo de: msg->AddU32(creature->getID()); adicione: stdstring nick = creature->getName(); if (creature->Nick != "") nick = creature->Nick; substitua: msg->AddString(creature->getHideName() ? "" : creature->getName()); por: msg->AddString(creature->getHideName() ? "" : nick); Obs: compilar em rebuild all ou sem os arquivos .obj exemplo de uso: doCreatureSetNick(getCreatureSummons(cid)[1], "Gristony") Creditos Gristony façam bom uso do code pequenos grilos
    1 ponto
Líderes está configurado para São Paulo/GMT-03:00
×
×
  • Criar Novo...