O que tem de errado no meu script? Hitskin_logo Hitskin.com

Isto é uma pré-visualização de um tema em Hitskin.com
Instalar o temaVoltar para a ficha do tema

Aldeia RPG
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

O que tem de errado no meu script?

3 participantes

Ir para baixo

O que tem de errado no meu script? Empty O que tem de errado no meu script?

Mensagem por liamharter Qui Nov 01, 2018 2:40 pm

Abaixo de Sub ScriptedTile(index, Script) eu coloquei uma case com o seguinte conteúdo

If GetPlayerInvItemNum(Index, 4) Then
Call TakeItem(index, 4, 1)
 Call SetPlayerPOINTS(index, GetPlayerPOINTS(index) + 180)      
Call SendInventoryUpdate(index, Slot)
End If

E no final do editor de scripts isso

Sub TakeItem(index, item, value)
If value = "all" Then
Slot = 1
Do While Slot < 24
If GetPlayerInvItemNum(index, Slot) = item Then
Call SetPlayerInvItemNum(index, Slot, 0)
Call SetPlayerInvItemValue(index, Slot, 0)
Call SendInventoryUpdate(index, Slot)
Slot = 24
End If
Slot = Slot + 1
Loop
Else
Slot = 1
Do While Slot < 24
If GetPlayerInvItemNum(index, Slot) = item Then
Call SetPlayerInvItemNum(index, Slot, 0)
Call SetPlayerInvItemValue(index, Slot, GetPlayerInvItemValue(index, Slot) - value)
Call SendInventoryUpdate(index, Slot)
Slot = 24
End If
Slot = Slot + 1
Loop
End If
End Sub
liamharter
liamharter
Iniciante
Iniciante

Mensagens : 67
Créditos : 3

Ir para o topo Ir para baixo

O que tem de errado no meu script? Empty Re: O que tem de errado no meu script?

Mensagem por MasterOp Qui Nov 01, 2018 3:03 pm

o que você ta querendo fazer?

_________________
Um tiro e 20 mortes.......-Desnecessário
MasterOp
MasterOp
Iniciante
Iniciante

Mensagens : 72
Créditos : 4

Ficha do personagem
Nível: 1
Experiência:
O que tem de errado no meu script? Left_bar_bleue0/50O que tem de errado no meu script? Empty_bar_bleue  (0/50)
Vida:
O que tem de errado no meu script? Left_bar_bleue30/30O que tem de errado no meu script? Empty_bar_bleue  (30/30)

Ir para o topo Ir para baixo

O que tem de errado no meu script? Empty Re: O que tem de errado no meu script?

Mensagem por Caronne Qui Nov 01, 2018 3:04 pm

Não sei qual engine você está usando, mas há algumas pequenas diferenças.
De início, o seu código está errado.

A função GetPlayerInvItemNum tem os parâmetros: Index, Número do Inventário.
Logo, GetPlayerInvItemNum retorna o número do item que está no "Número do Inventário".

Se você quer tirar um item do inventário do usuário, antes de mais nada, você precisa saber onde está o item.

Você deve percorrer todos os slots do inventário para saber onde o item está.


Código:
Dim i as Long
Dim InvSlot as Long

For i = 1 to MAX_INV
       If GetPlayerInvItemNum(Index, i) = 4 Then
            InvSlot = i
            Exit For
       End If
Next


O número do slot onde o item está é guardado na variável InvSlot. Quando InvSlot é igual a zero, é porque o item não foi encontrando no inventário do personagem.

Agora, você pode remover o item e aplicar as alterações no personagem.


Código:
If InvSlot > 0 Then

 Call SetPlayerPOINTS(index, GetPlayerPOINTS(index) + 180)     
 
 If GetPlayerInvItemValue(Index, InvSlot) > 1 Then 
    Call SetPlayerInvItemValue(Index, InvSlot, GetPlayerInvItemValue(Index, InvSlot) - 1)
 Else 
   Call SetPlayerInvItemNum(Index, InvSlot, 0)
   Call SetPlayerInvItemValue(Index, InvSlot, 0)
 End If

 Call SendInventoryUpdate(Index, InvSlot)
End If

Remova esse método "TakeItem" pois ele não é necessário.

Código Inteiro:


Código:
Dim i as Long
Dim InvSlot as Long

For i = 1 to MAX_INV
       If GetPlayerInvItemNum(Index, i) = 4 Then
            InvSlot = i
            Exit For
       End If
Next

If InvSlot > 0 Then

 Call SetPlayerPOINTS(index, GetPlayerPOINTS(index) + 180)     
 
 If GetPlayerInvItemValue(Index, InvSlot) > 1 Then 
    Call SetPlayerInvItemValue(Index, InvSlot, GetPlayerInvItemValue(Index, InvSlot) - 1)
 Else 
   Call SetPlayerInvItemNum(Index, InvSlot, 0)
   Call SetPlayerInvItemValue(Index, InvSlot, 0)
 End If

 Call SendInventoryUpdate(Index, InvSlot)
End If

Caronne
Iniciante
Iniciante

Mensagens : 30
Créditos : 7

Ir para o topo Ir para baixo

O que tem de errado no meu script? Empty Re: O que tem de errado no meu script?

Mensagem por liamharter Qui Nov 01, 2018 3:25 pm

Valeeeu
liamharter
liamharter
Iniciante
Iniciante

Mensagens : 67
Créditos : 3

Ir para o topo Ir para baixo

O que tem de errado no meu script? Empty Re: O que tem de errado no meu script?

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Ir para o topo Ir para baixo

Ir para o topo

- Tópicos semelhantes

 
Permissões neste sub-fórum
Não podes responder a tópicos