Oro a billetera

Estado
Cerrado para nuevas respuestas.

JahoviaBless

Mapeador.
Hola! Les cuento... Puse un codigo para que el oro vaya directamente a la billetera, el codigo funcionó, pero el oro que va a la billetera es el que está por defecto, osea x1, y mi servidor está configurado en exp=100 oro=100, al poner ese codigo del oro a billetera, vuelve el oro por defecto... Alguien me puede ayudar? El codigo que puse es el siguiente:


En el server, InvNpc. Buscamos el sub:


Public Sub TirarOroNpc(ByVal Cantidad As Long, ByRef Pos As WorldPos)


Y lo reemplazamos por:


'AyudandOh
Public Sub TirarOroNpc(ByVal UserIndex As Integer, ByVal Cantidad As Long, ByRef Pos As WorldPos)

On Error GoTo Errhandler

If Cantidad > 0 Then
UserList(UserIndex).Stats.GLD = UserList(UserIndex).Stats.GLD + Cantidad
Call WriteUpdateGold(UserIndex)
Call WriteConsoleMsg(UserIndex, "Has obtenido " & Cantidad & " monedas de oro.", FontTypeNames.FONTTYPE_INFO) 'Ponele una comilla adelante de esta linea si no queres q salga por consola
End If

Exit Sub

Errhandler:
Call LogError("Error en TirarOro. Error " & Err.Number & " : " & Err.description)
End Sub


Despues buscamos el sub:


Public Sub NPC_TIRAR_ITEMS(ByRef npc As npc, ByVal IsPretoriano As Boolean)


Y reemplazamos todo ese sub por este:


'AyudandOh
Public Sub NPC_TIRAR_ITEMS(ByVal UserIndex As Integer, ByRef npc As npc, ByVal IsPretoriano As Boolean)

On Error Resume Next

With npc

Dim i As Byte
Dim MiObj As Obj
Dim NroDrop As Integer
Dim Random As Integer
Dim ObjIndex As Integer

If IsPretoriano Then
For i = 1 To MAX_INVENTORY_SLOTS
If .Invent.Object(i).ObjIndex > 0 Then
MiObj.Amount = .Invent.Object(i).Amount
MiObj.ObjIndex = .Invent.Object(i).ObjIndex
Call TirarItemAlPiso(.Pos, MiObj)
End If
Next i

If .GiveGLD > 0 Then _
Call TirarOroNpc(UserIndex, .GiveGLD, .Pos)

Exit Sub
End If

Random = RandomNumber(1, 100)

If Random <= 90 Then
NroDrop = 1

If Random <= 10 Then
NroDrop = NroDrop + 1

For i = 1 To 3

If RandomNumber(1, 100) <= 10 Then
NroDrop = NroDrop + 1
Else
Exit For
End If
Next i

End If


ObjIndex = .Drop(NroDrop).ObjIndex
If ObjIndex > 0 Then

If ObjIndex = iORO Then
Call TirarOroNpc(UserIndex, .Drop(NroDrop).Amount, npc.Pos)
Else
MiObj.Amount = .Drop(NroDrop).Amount
MiObj.ObjIndex = .Drop(NroDrop).ObjIndex

Call TirarItemAlPiso(.Pos, MiObj)
End If
End If

End If

End With

End Sub


Y por ultimo buscamos:


Call NPC_TIRAR_ITEMS(MiNPC, IsPretoriano)


Y lo reemplazamos por:


Call NPC_TIRAR_ITEMS(UserIndex, MiNPC, IsPretoriano)
 
Estado
Cerrado para nuevas respuestas.
Arriba