TO
dúvida

Como eu mudo o slotype da ARROW?

Por tonynamoral, 15 de jan. de 2013 em Scripts

10
973
tonynamoralT
15 de janeiro de 2013 às 13:58

Fala ai galera , eu gostaria que para usar a Arrow , nao precisase da arrow , no slot do ammo , poderia ficar no SLOT do shield.

 

alguem poderia me ajudar como eu mudo isso?

DeadpoolD
15 de janeiro de 2013 às 14:06

No Item.Xml, Procura A Arrow E La Tem O Atributo, Basta Mudar '-'

tonynamoralT
15 de janeiro de 2013 às 14:09

Poderia me mostrar como eu deixo?

OneshotO
15 de janeiro de 2013 às 14:14

Sources.

 

Item* Player::getWeapon(bool ignoreAmmo)
{
       if(weapon)
               return weapon;

       Item* item = NULL;
       for(int32_t slot = SLOT_RIGHT; slot <= SLOT_LEFT; ++slot)
       {
               if(!(item = getEquippedItem((slots_t)slot)) || item->getWeaponType() != WEAPON_DIST)
                       continue;

               if(!ignoreAmmo && item->getAmmoType() != AMMO_NONE)
               {
                       Item* ammoItem = getInventoryItem(SLOT_AMMO);
                       if(ammoItem && ammoItem->getAmmoType() == item->getAmmoType())
                       {
                               if(g_weapons->getWeapon(ammoItem))
                               {
                                       shootRange = item->getShootRange();
                                       return ammoItem;
                               }
                       }
               }
               else if(g_weapons->getWeapon(item))
               {
                       shootRange = item->getShootRange();
                       return item;
               }
       }

       return NULL;
}

 

Só editar essa linha.

 

Item* ammoItem = getInventoryItem(SLOT_AMMO);

 

Por essa:

 

Item* ammoItem = (getInventoryItem(SLOT_AMMO) || getInventoryItem(SLOT_SHIELD));

 

Não testado.

 

Abraços.

tonynamoralT
15 de janeiro de 2013 às 14:17

Se eu quizer deixar , para ficar só no SHIELD é so por

 

 

Item* ammoItem = getInventoryItem(SLOT_SHIEL)

 

né?

OneshotO
15 de janeiro de 2013 às 14:17

Isso.

tonynamoralT
15 de janeiro de 2013 às 14:18

Bom , eu testei no Shield , naum funfo

 

ai eu colokei esse codigo aqui

 

Item* ammoItem = getInventoryItem(SLOT_HAND);

 

porém , ele so funfa na mao esquerda , para eu por na direta eu mudo o SLOT_HAND , para SLOT_RIGHT???

Editado Janeiro 15 por tonynamoral

OneshotO
15 de janeiro de 2013 às 16:03

Falha minha, eu achei que existia um SLOT_SHIELD.

 

Existe apenas para mãos SLOT_LEFT e SLOT_RIGHT.

 

Tente um desses.

 

Abraços.

tonynamoralT
15 de janeiro de 2013 às 16:06

Sim , eu testei e funciono REP+

SlicerS
15 de janeiro de 2013 às 16:10

sanado, movido