Erro no Vital do player 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.

Erro no Vital do player

3 participantes

Ir para baixo

Erro no Vital do player Empty Erro no Vital do player

Mensagem por Motodark Seg Jan 16, 2017 9:06 pm

o server cai por conta desse erro que ocorre, faz tempo que mexi em eo e estou sem base por onde comloeçar, acredito não ter colocado scripts relacionado a vital
Motodark
Motodark
Ocasional
Ocasional

Mensagens : 169
Créditos : 5

Ir para o topo Ir para baixo

Erro no Vital do player Empty Re: Erro no Vital do player

Mensagem por gui408 Seg Jan 16, 2017 11:29 pm

Marca a linha pra saber o erro.

gui408
Ocasional
Ocasional

Mensagens : 227
Créditos : 10

Ir para o topo Ir para baixo

Erro no Vital do player Empty case

Mensagem por Motodark Ter Jan 17, 2017 7:45 pm

GetPlayerVital = Player(Index).vital(vital)
Motodark
Motodark
Ocasional
Ocasional

Mensagens : 169
Créditos : 5

Ir para o topo Ir para baixo

Erro no Vital do player Empty Re: Erro no Vital do player

Mensagem por Kotol Seg Jan 30, 2017 7:28 pm

Olá amigo!
Não me recordo ao certo em quais dos vários testes fiz no qual saiu este erro, no entanto, vamos tentar consertá-lo?

Vamos lá....

Abra o server de seu projeto, e em "ModPlayer", substitua sua "function":

Código:
Function GetPlayerVital(ByVal Index As Long, ByVal Vital As Vitals) As Long

Por esta:

Código:
Function GetPlayerVital(ByVal Index As Long, ByVal Vital As Vitals) As Long
   
    'Previne futuros erros
    If Index <= 0 Or Index > MAX_PLAYERS Or Index > Player_HighIndex Then Exit Function
    If IsPlaying(Index) = False Then Exit Function
    If Vital <= 0 Or Vital > Vitals.Vital_Count - 1 Then Exit Function
   
    GetPlayerVital = Player(Index).Vital(Vital)
   
End Function

Muito bem, isso resolve uma boa parte dos erros.
No entanto, tenha em mente uma coisa:

1- Muitas coisas que você adiciona, principalmente em alguma "rec" pode obrigar você a deletar os dados já existentes para que não haja erro de leitura dos valores ou strings.
Exemplo: Na maioria dos casos onde você mexa no tipo "PlayerRec" para excluir algo do tipo dos jogadores, você terá que refazer um jogador novo. Adicionar algo novo não se faz necessário.

Caso 1:
Se minha "PlayerRec" for assim:
Código:
Private Type PlayerRec
    ' Account
    Login As String * ACCOUNT_LENGTH
    Password As String * NAME_LENGTH
   
    ' General
    Name As String * ACCOUNT_LENGTH
    Sex As Byte
    Class As Long
    Sprite As Long
    Level As Byte
    exp As Long
    Access As Byte
    PK As Byte

End Type

E eu adicionar no final uma nova variável para ficar assim:
Código:
Private Type PlayerRec
    ' Account
    Login As String * ACCOUNT_LENGTH
    Password As String * NAME_LENGTH
   
    ' General
    Name As String * ACCOUNT_LENGTH
    Sex As Byte
    Class As Long
    Sprite As Long
    Level As Byte
    exp As Long
    Access As Byte
    PK As Byte

    Aleatorio as Long

End Type

Não necessitará que eu modifique as contas já existentes, pois o sistema irá ler tudo normalmente.
OBS: ele vai ler o "Aleatorio" que você definiu como 0 , então você deverá indicar um valor. É como se você criasse um espaço no seu guarda roupa com um nome, ele existe lá, mas não tem nada dentro, a não ser que você coloque.

Caso 2


Agora é aquela situação em que você tem sua "PlayerRec" e você quer mudar algo. Lembre-se, é mudar, e não adicionar.
Se você tiver sua "PlayerRec" assim por exemplo:

Código:
Private Type PlayerRec
    ' Account
    Login As String * ACCOUNT_LENGTH
    Password As String * NAME_LENGTH
   
    ' General
    Name As String * ACCOUNT_LENGTH
    Sex As Byte
    Class As Long
    Sprite As Long
    Level As Byte
    exp As Long
    Access As Byte
    PK As Byte
End Type

E mudar o "PK as byte" de maneira brusca:

Código:
Private Type PlayerRec
    ' Account
    Login As String * ACCOUNT_LENGTH
    Password As String * NAME_LENGTH
   
    ' General
    Name As String * ACCOUNT_LENGTH
    Sex As Byte
    Class As Long
    Sprite As Long
    Level As Byte
    exp As Long
    Access As Byte
    PK(1 to 20) As String

End Type

Isso sim pode acarretar severos erros nas contas já existentes.

Meu conselho caso dê esses tipos de erros impossíveis, como, por exemplo, você estar mexendo nos mapas, e dar erros incomuns nas magias do nada, você tentar sempre fazer um backup de sua database que indica o erro, e criar uma nova para ver se resolve seu problema.

Caso a substituição da "Sub" que eu indiquei não resolva, faça um backup de suas contas, e exclua todas para verificar se houve resolução, caso não haja, poste mais, e tentaremos verificar a fundo o erro de sua máquina. 
Kotol
Kotol
Moderador Local
Moderador Local

Mensagens : 77
Créditos : 17

Ir para o topo Ir para baixo

Erro no Vital do player Empty Re: Erro no Vital do player

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