Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /**
- * Adicionar um item na lista de posse do personagem
- * @params playerid ID do player a ter os itens adicionados
- * @params indexProduto Index do produto dentro de produtoinfo
- * @params quantidade Quantidade do item a ser adicionada
- * @return se obtiver sucesso na hora de colocar o item no inventário retorna a posição do item na lista
- * retorna -2 se o inventário não comportar o item
- * retorna -1 se der algum outro erro
- */
- forward adicionarItemPossePlayer(playerid,indexProduto,quantidade);
- public adicionarItemPossePlayer(playerid,indexProduto,quantidade){
- new quantidadeAtual = 0;
- new indexAtual = nextItemPersonagem(playerid,0);
- new indexDoProduto = INVALID_POSSE_ID;//Aproveitando o somatório do uso do espaço do inventário,
- //já procura o index do produto a ser adicionado, se houver
- while( indexAtual != INVALID_POSSE_ID ){
- quantidadeAtual += ( posseinfo[indexAtual][quantidadeposse] * produtoinfo[posseinfo[indexAtual][indexProd]][tamprod] );
- if( posseinfo[indexAtual][indexProd] == indexProduto){
- indexDoProduto = posseinfo[indexAtual][indexProd];
- break;
- }
- indexAtual = nextItemPersonagem(playerid,indexAtual + 1);
- }
- if( ( quantidade + quantidadeAtual ) > MAX_CAPA_INVENTARIO )
- return -2;
- if( indexDoProduto != INVALID_POSSE_ID ){ //Se tiver um index ocupado por este produto
- posseinfo[indexAtual][quantidadeposse] += quantidade;
- }
- else{
- //Procurando um espaço na lista cujo nenhum personagem tenha ocupado
- indexAtual = nextItemPersonagem(INVALID_PLAYER_ID,0);
- posseinfo[indexAtual][indexProd] = indexProduto;
- posseinfo[indexAtual][indexPersoPosse] = playerid;
- posseinfo[indexAtual][quantidadeposse] = quantidade;
- }
- //Se for uma arma, atualizar as armas
- if( produtoinfo[posseinfo[indexAtual][indexProd]][acaoProduto] == tp_slot_arma ||
- produtoinfo[posseinfo[indexAtual][indexProd]][acaoProduto] == tp_slot_municao )
- atualizarArmasPlayer(playerid);
- new codProduto = produtoinfo[indexProduto][codproduto];
- new codPerso = persoinfo[playerid][codperso];
- format(strsql,sizeof(strsql),"CALL adicionar_item_posse_personagem('%d','%d','%d')",
- codPerso,codProduto,quantidade);
- mysql_query(mysql,strsql,false);
- if( mysql_errno() != 0 )
- return -1;
- return indexAtual;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement