Código adaptado,
Todo el código se desarrolla en el servidor:
Buscamos:
- Public Sub PurgarPenas()
- Dim i As Integer
- For i = 1 To LastUser
- If UserList(i).flags.UserLogged Then
- If UserList(i).Counters.Pena > 0 Then
- UserList(i).Counters.Pena = UserList(i).Counters.Pena - 1
- If UserList(i).Counters.Pena < 1 Then
- UserList(i).Counters.Pena = 0
- Call WarpUserChar(i, Libertad.Map, Libertad.X, Libertad.Y, True)
- Call SendData(ToIndex, i, 0, "||Has sido liberado bajo Fianza!." & FONTTYPE_INFO)
- End If
- End If
- End If
- Next i
- End Sub
y debajo colocamos:
- Public Sub Fianzarpenas()
- Dim i As Integer
- For i = 1 To LastUser
- If UserList(i).flags.UserLogged Then
- If UserList(i).Counters.Pena > 0 Then
- UserList(i).Counters.Pena = 0
- If UserList(i).Counters.Pena < 1 Then
- UserList(i).Counters.Pena = 0
- Call WarpUserChar(i, Libertad.Map, Libertad.X, Libertad.Y, True)
- Call SendData(ToIndex, i, 0, "||Has sido liberado bajo fianza!." & FONTTYPE_INFO)
- End If
- End If
- End If
- Next i
- End Sub
Luego, buscamos:
- If UCase$(rData) = "/TRABAJANDO" Then
- If UserList(UserIndex).flags.EsRolesMaster Then Exit Sub
- For LoopC = 1 To LastUser
- If (UserList(LoopC).name <> "") And UserList(LoopC).Counters.Trabajando > 0 Then
- tStr = tStr & UserList(LoopC).name & ", "
- End If
- Next LoopC
- If tStr <> "" Then
- tStr = Left$(tStr, Len(tStr) - 2)
- Call SendData(SendTarget.ToIndex, UserIndex, 0, "||Usuarios trabajando: " & tStr & FONTTYPE_INFO)
- Else
- Call SendData(SendTarget.ToIndex, UserIndex, 0, "||No hay usuarios trabajando" & FONTTYPE_INFO)
- End If
- Exit Sub
- End If
y debajo le colocamos:
- If UCase$(rData) = "/FIANZA" Then
- If UserList(UserIndex).Stats.GLD < 20000 Then
- Call SendData(SendTarget.ToIndex, UserIndex, 0, "||No tienes dinero suficiente para pagar tu Fianza." & FONTTYPE_INFO)
- Exit Sub
- End If
- 'Se asegura que el target es un npc
- If UserList(UserIndex).flags.TargetNPC = 0 Then
- Call SendData(SendTarget.ToIndex, UserIndex, 0, "||Primero tenes que hacer click izquierdo sobre el Guardia de las Fianzas." & FONTTYPE_INFO)
- Exit Sub
- End If
- ' Verificamos que sea el guardia carcel
- If Npclist(UserList(UserIndex).flags.TargetNPC).NPCtype <> 12 Then
- Call SendData(SendTarget.ToIndex, UserIndex, 0, "||Primero tenes que hacer click izquierdo sobre el Guardia de las Fianzas." & FONTTYPE_INFO)
- Exit Sub
- End If
- ' Si esta muy lejos no actua
- If Distancia(UserList(UserIndex).Pos, Npclist(UserList(UserIndex).flags.TargetNPC).Pos) > 5 Then
- Call SendData(SendTarget.ToIndex, UserIndex, 0, "||No puedes ser liberado debido a la distancia, no es muy seguro para el Guardia." & FONTTYPE_WARNING)
- Exit Sub
- End If
- Call Fianzarpenas
- UserList(UserIndex).Stats.GLD = UserList(UserIndex).Stats.GLD - 20000
- Call SendUserStatsBox(UserIndex)
- Exit Sub
- End If
Luego creamos el Npc con el cuál funciona el código, por cuestione de funcionamiento por el momento como esta armado el código a este NPC no lo coloquen fuera del mapa de la cárcel. =)
- Name=Soborname :$
- Desc=Para la liberación bajo fianza debes darme 20.000 Monedas de oro.
- Heading=3
- Body=15
- NpcType=12
- Movement=1
- Attackable=0
- ReSpawn=0
- Hostile=0
- Domable=0
- Alineacion=0
Y listo creo que con eso estaria funcionando el código de nuestro amigo NighTWolF.
Nos vemos.
PD: Ya después capaz que le agrego que le tengas que dar un item, y que solo puedas escapar 10 veces o algo parecido. Y si ya escapate más de 10 veces mmm que no te deje salir y que te maten
Abrazo!





![Aprendiz [1] Aprendiz [1]](./images/ranks/Rango6.gif)
![Destructor de Mentes [3] Destructor de Mentes [3]](./images/ranks/Rango15.gif)

66![Oraculo [2] Oraculo [2]](./images/ranks/Rango26.gif)



![Destructor de Mentes [7] Destructor de Mentes [7]](./images/ranks/Rango19.gif)
