[Ajuda] CJ Aparecendo no Inventário - Versão de Impressão +- Portal SAMP (https://portalsamp.com) +-- Fórum: SA-MP (https://portalsamp.com/forumdisplay.php?fid=5) +--- Fórum: Área de suporte (https://portalsamp.com/forumdisplay.php?fid=6) +--- Tópico: [Ajuda] CJ Aparecendo no Inventário (/showthread.php?tid=3687) |
CJ Aparecendo no Inventário - RosaScripter - 14/06/2023 Alguém sabe como posso remover os CJ no inventário liberado aqui no fórum? https://portalsamp.com/showthread.php?tid=1002 Tentei algumas formas mas sem sucesso.. Obs: Assim que um jogador abre o inventário aparece vários CJ's e só dar pra deixar o inv vazio só descartando eles assim o inventário funciona normal. RE: CJ Aparecendo no Inventário - xbruno1000x - 14/06/2023 Vou baixar o sistema e depois vou dar uma olhada. Se ninguém solucionar antes de mim, mando a solução aqui. RE: CJ Aparecendo no Inventário - Dr Editor - 14/06/2023 Ou está salvando ou carregando o ID 0, que é o valor inicial para variáveis do tipo inteiro, float... Provavelmente está resetando e isso está afetando. O valor 0 pertence a um modelo e para posições vazias no inventário é necessário usar um modelo inválido, como qualquer número negativo ou um positivo inexistente. O código possui a função chamada IsValidItemInv. Basta usar ela para carregar/salvar e se o ID for inválido basta atribuir o valor -1 (ou conforme dito anteriormente, outro modelo inexistente) na função PlayerTextDrawSetPreviewModel e estará resolvido. RE: CJ Aparecendo no Inventário - k2bi_YT - 14/06/2023 Você deve olhar o que esta sendo salvo na variavel PlayerInventario[playerid][i][Slot] Verifique se, ao carregar o inventario do jogador assim que ele loga, se você setar PlayerInventario[playerid][i][Slot] = 0; irá aparece a skin do CJ por ser o ID do mesmo, para ficar invisível, a variavel deve ser definida para -1 Observe quando é feito a verificação da variavel ao abrir o inventario: Código PHP: if(PlayerInventario[playerid][i][Slot] == -1) //Me refiro a essa linha, se a variavel esta guardando o valor -1(que é a default), ira ficar transparente a textdraw RE: CJ Aparecendo no Inventário - RosaScripter - 14/06/2023 (14/06/2023 17:09)Dr Editor Escreveu: Ou está salvando ou carregando o ID 0, que é o valor inicial para variáveis do tipo inteiro, float... Tentei essa forma e nada resolvido, sem sucesso! (14/06/2023 17:10)k2bi_YT Escreveu: Você deve olhar o que esta sendo salvo na variavel PlayerInventario[playerid][i][Slot] Sem sucesso (14/06/2023 17:10)k2bi_YT Escreveu: Você deve olhar o que esta sendo salvo na variavel PlayerInventario[playerid][i][Slot] O sistema liberado no fórum por padrão já está aparecendo os CJ´s, dei uma revisada nas mensagens do tópico e uma galera tem o mesmo problema. Não fui de criar um inv em textdraw mas acho que seria uma boa tu revisar o sistema pra ver se não há alguma coisa errada. RE: CJ Aparecendo no Inventário - Maycon_Felipe - 15/06/2023 Basicamente ele está lendo um valor que não existe em LoadInv, assim setando a variavel para 0.. É apenas uma solução temporária pois qualquer bug as skin 0 pode voltar, eu aconselho a modificar a forma como é mostrada.. verifique se a variável 'PlayerInventario[playerid][i][Unidades]' se ela for menor ou igual a 0, você seta PlayerInventario[playerid][i][Slot] = -1;.. Código: K2::LoadInv(playerid) RE: CJ Aparecendo no Inventário - xbruno1000x - 15/06/2023 Boa noite a todos! Bug corrigido: https://pastebin.com/N5iSuQYg Ao debugar a public LoadInv, notei que tanto o Slot quanto Unidades eram criados como 0, independente do valor setado na variável. Criei uma public exclusiva para a criação de arquivos de inventários, que encaminha para o LoadInv caso o jogador já tenha um inventário criado. Pelos meus testes tudo está funcionando bem, mas em caso de surgirem outros problemas sinta-se à vontade para ressuscitar o tópico. RE: CJ Aparecendo no Inventário - RosaScripter - 15/06/2023 (15/06/2023 02:33)xbruno1000x Escreveu: Boa noite a todos! Ótimo!! ? |