En el Servidor
Primero declaramos las variables que van a contener las defensas y daños.
En el modulo declaraciones buscamos:
- Type UserStats
Y abajo de eso buscamos:
- MinAGU As Integer
Y abajo de eso ponemos esto:
- AMinDef As Integer
- AMaxDef As Integer
- EMinDef As Integer
- EMaxDef As Integer
- CMinDef As Integer
- CMaxDef As Integer
- WMinHit As Integer
- WMaxHit As Integer
Busca la Sub "EquiparInvItem":
Ahora al final de la sub busca esto:
- Call UpdateUserInv(True, UserIndex, 0)
Y abajo de eso pone esto:
- Call LAB(UserIndex)
Ahora buscas en la Sub "Desequipar":
- Call UpdateUserInv(False, UserIndex, Slot)
Y abajo pones:
- Call LAB(UserIndex)
Ahora busca:
- Case "EQUI"
Y Arriba del "Exit Sub" dentro de ese Case pones esto:
- Call LAB(UserIndex)
Ahora en el Modulo usuarios al final de todo pones esta nueva "SUB":
- Sub LAB(ByVal UserIndex As Integer)
- If UserList(UserIndex).Invent.ArmourEqpObjIndex > 0 Then
- UserList(UserIndex).Stats.AMinDef = ObjData(UserList(UserIndex).Invent.ArmourEqpObjIndex).MinDef
- Else
- UserList(UserIndex).Stats.AMinDef = 0
- End If
- If UserList(UserIndex).Invent.ArmourEqpObjIndex > 0 Then
- UserList(UserIndex).Stats.AMaxDef = ObjData(UserList(UserIndex).Invent.ArmourEqpObjIndex).MaxDef
- Else
- UserList(UserIndex).Stats.AMaxDef = 0
- End If
- If UserList(UserIndex).Invent.EscudoEqpObjIndex > 0 Then
- UserList(UserIndex).Stats.EMinDef = ObjData(UserList(UserIndex).Invent.EscudoEqpObjIndex).MinDef
- Else
- UserList(UserIndex).Stats.EMinDef = 0
- End If
- If UserList(UserIndex).Invent.EscudoEqpObjIndex > 0 Then
- UserList(UserIndex).Stats.EMaxDef = ObjData(UserList(UserIndex).Invent.EscudoEqpObjIndex).MaxDef
- Else
- UserList(UserIndex).Stats.EMaxDef = 0
- End If
- If UserList(UserIndex).Invent.CascoEqpObjIndex > 0 Then
- UserList(UserIndex).Stats.CMinDef = ObjData(UserList(UserIndex).Invent.CascoEqpObjIndex).MinDef
- UserList(UserIndex).Stats.MMinDef = ObjData(UserList(UserIndex).Invent.CascoEqpObjIndex).DefensaMagicaMin
- Else
- UserList(UserIndex).Stats.CMinDef = 0
- UserList(UserIndex).Stats.MMinDef = 0
- End If
- If UserList(UserIndex).Invent.CascoEqpObjIndex > 0 Then
- UserList(UserIndex).Stats.CMaxDef = ObjData(UserList(UserIndex).Invent.CascoEqpObjIndex).MaxDef
- UserList(UserIndex).Stats.MMaxDef = ObjData(UserList(UserIndex).Invent.CascoEqpObjIndex).DefensaMagicaMax
- Else
- UserList(UserIndex).Stats.CMaxDef = 0
- UserList(UserIndex).Stats.MMaxDef = 0
- End If
- If UserList(UserIndex).Invent.WeaponEqpObjIndex > 0 Then
- UserList(UserIndex).Stats.WMinHit = ObjData(UserList(UserIndex).Invent.WeaponEqpObjIndex).MinHIT
- Else
- UserList(UserIndex).Stats.WMinHit = 0
- End If
- If UserList(UserIndex).Invent.WeaponEqpObjIndex > 0 Then
- UserList(UserIndex).Stats.WMaxHit = ObjData(UserList(UserIndex).Invent.WeaponEqpObjIndex).MaxHIT
- Else
- UserList(UserIndex).Stats.WMaxHit = 0
- End If
- If UserList(UserIndex).Invent.ArmourEqpObjIndex > 0 Then
- UserList(UserIndex).Stats.MMinDef = UserList(UserIndex).Stats.MMinDef + ObjData(UserList(UserIndex).Invent.ArmourEqpObjIndex).DefensaMagicaMin
- Else
- UserList(UserIndex).Stats.MMinDef = UserList(UserIndex).Stats.MMinDef
- End If
- If UserList(UserIndex).Invent.HerramientaEqpObjIndex > 0 Then
- UserList(UserIndex).Stats.MMinDef = UserList(UserIndex).Stats.MMinDef + ObjData(UserList(UserIndex).Invent.HerramientaEqpObjIndex).DefensaMagicaMin
- Else
- UserList(UserIndex).Stats.MMinDef = UserList(UserIndex).Stats.MMinDef
- End If
- If UserList(UserIndex).Invent.ArmourEqpObjIndex > 0 Then
- UserList(UserIndex).Stats.MMaxDef = UserList(UserIndex).Stats.MMaxDef + ObjData(UserList(UserIndex).Invent.ArmourEqpObjIndex).DefensaMagicaMax
- Else
- UserList(UserIndex).Stats.MMaxDef = UserList(UserIndex).Stats.MMaxDef
- End If
- If UserList(UserIndex).Invent.HerramientaEqpObjIndex > 0 Then
- UserList(UserIndex).Stats.MMaxDef = UserList(UserIndex).Stats.MMaxDef + ObjData(UserList(UserIndex).Invent.HerramientaEqpObjIndex).DefensaMagicaMax
- Else
- UserList(UserIndex).Stats.MMaxDef = UserList(UserIndex).Stats.MMaxDef
- End If
- Call SendData(ToIndex, UserIndex, 0, "LAB" & UserList(UserIndex).Stats.AMinDef & "," & UserList(UserIndex).Stats.AMaxDef & "," & UserList(UserIndex).Stats.CMinDef & "," & UserList(UserIndex).Stats.CMaxDef & "," & UserList(UserIndex).Stats.EMinDef & "," & UserList(UserIndex).Stats.EMaxDef & "," & UserList(UserIndex).Stats.WMinHit & "," & UserList(UserIndex).Stats.WMaxHit)
- End Sub
En el Cliente
Arriba de:
- Case "T01"
Pones esto:
- Case "LAB"
- Rdata = Right$(Rdata, Len(Rdata) - 3)
- frmmain.lblArmaduras.Caption = Val(ReadField(1, Rdata, 44)) & "/" & Val(ReadField(2, Rdata, 44))
- frmmain.lblCascos.Caption = Val(ReadField(3, Rdata, 44)) & "/" & Val(ReadField(4, Rdata, 44))
- frmmain.lblEscudos.Caption = Val(ReadField(5, Rdata, 44)) & "/" & Val(ReadField(6, Rdata, 44))
- frmmain.lblArmas.Caption = Val(ReadField(7, Rdata, 44)) & "/" & Val(ReadField(8, Rdata, 44))
Ahora es cuestion que los frmmain.(lbl...) los cambies por el nombre de los Labels que queres que contengan esa informacion!
Cualquier cosa me avisan.
Suerte.
Silver





19![Destructor de Mentes [4] Destructor de Mentes [4]](./images/ranks/Rango16.gif)

![Legendario Inmortal [1] Legendario Inmortal [1]](./images/ranks/Rango36.gif)
![Newbie [2] Newbie [2]](./images/ranks/Rango1.gif)
