- Case "/MEDITAR"
- If UserList(UserIndex).flags.Muerto = 1 Then
- Call SendData(SendTarget.ToIndex, UserIndex, 0, "||¡¡Estas muerto!! Solo podes usar items cuando estas vivo. " & FONTTYPE_INFO)
- Exit Sub
- End If
- If UserList(UserIndex).Stats.MaxMAN = 0 Then
- Call SendData(SendTarget.ToIndex, UserIndex, 0, "||Solo las clases mágicas conocen el arte de la meditación" & FONTTYPE_INFO)
- Exit Sub
- End If
- If UserList(UserIndex).flags.Privilegios > PlayerType.User Then
- UserList(UserIndex).Stats.MinMAN = UserList(UserIndex).Stats.MaxMAN
- Call SendData(SendTarget.ToIndex, UserIndex, 0, "||Mana restaurado" & FONTTYPE_VENENO)
- Call SendUserStatsBox(val(UserIndex))
- Exit Sub
- End If
- Call SendData(SendTarget.ToIndex, UserIndex, 0, "MEDOK")
- If Not UserList(UserIndex).flags.Meditando Then
- Call SendData(SendTarget.ToIndex, UserIndex, 0, "||Comenzas a meditar." & FONTTYPE_INFO)
- Else
- Call SendData(SendTarget.ToIndex, UserIndex, 0, "||Dejas de meditar." & FONTTYPE_INFO)
- End If
- UserList(UserIndex).flags.Meditando = Not UserList(UserIndex).flags.Meditando
- 'Barrin 3/10/03 Tiempo de inicio al meditar
- If UserList(UserIndex).flags.Meditando Then
- UserList(UserIndex).Char.loops = LoopAdEternum
- If UserList(UserIndex).Stats.ELV < 15 Then
- Call SendData(SendTarget.ToPCArea, UserIndex, UserList(UserIndex).Pos.Map, "CFX" & UserList(UserIndex).Char.CharIndex & "," & FXIDs.FXMEDITARCHICO & "," & LoopAdEternum)
- UserList(UserIndex).Char.FX = FXIDs.FXMEDITARCHICO
- ElseIf UserList(UserIndex).Stats.ELV < 30 Then
- Call SendData(SendTarget.ToPCArea, UserIndex, UserList(UserIndex).Pos.Map, "CFX" & UserList(UserIndex).Char.CharIndex & "," & FXIDs.FXMEDITARMEDIANO & "," & LoopAdEternum)
- UserList(UserIndex).Char.FX = FXIDs.FXMEDITARMEDIANO
- ElseIf UserList(UserIndex).Stats.ELV < 45 Then
- Call SendData(SendTarget.ToPCArea, UserIndex, UserList(UserIndex).Pos.Map, "CFX" & UserList(UserIndex).Char.CharIndex & "," & FXIDs.FXMEDITARGRANDE & "," & LoopAdEternum)
- UserList(UserIndex).Char.FX = FXIDs.FXMEDITARGRANDE
- Else
- Call SendData(SendTarget.ToPCArea, UserIndex, UserList(UserIndex).Pos.Map, "CFX" & UserList(UserIndex).Char.CharIndex & "," & FXIDs.FXMEDITARXGRANDE & "," & LoopAdEternum)
- UserList(UserIndex).Char.FX = FXIDs.FXMEDITARXGRANDE
- End If
- Else
- UserList(UserIndex).Counters.bPuedeMeditar = False
- UserList(UserIndex).Char.FX = 0
- UserList(UserIndex).Char.loops = 0
- Call SendData(SendTarget.ToMap, UserIndex, UserList(UserIndex).Pos.Map, "CFX" & UserList(UserIndex).Char.CharIndex & "," & 0 & "," & 0)
- End If
- Exit Sub
- Public Sub DoMeditar(ByVal UserIndex As Integer)
- UserList(UserIndex).Counters.IdleCount = 0
- Dim Suerte As Integer
- Dim res As Integer
- Dim Cant As Integer
- If UserList(UserIndex).Counters.bPuedeMeditar = False Then
- UserList(UserIndex).Counters.bPuedeMeditar = True
- End If
- If UserList(UserIndex).Stats.MinMAN >= UserList(UserIndex).Stats.MaxMAN Then
- Call SendData(SendTarget.ToIndex, UserIndex, 0, "||Has terminado de meditar." & FONTTYPE_INFO)
- Call SendData(SendTarget.ToIndex, UserIndex, 0, "MEDOK")
- UserList(UserIndex).flags.Meditando = False
- UserList(UserIndex).Char.FX = 0
- UserList(UserIndex).Char.loops = 0
- Call SendData(SendTarget.ToPCArea, UserIndex, UserList(UserIndex).Pos.Map, "CFX" & UserList(UserIndex).Char.CharIndex & "," & 0 & "," & 0)
- Exit Sub
- End If
- If UserList(UserIndex).Stats.UserSkills(eSkill.Meditar) <= 10 _
- And UserList(UserIndex).Stats.UserSkills(eSkill.Meditar) >= -1 Then
- Suerte = 35
- ElseIf UserList(UserIndex).Stats.UserSkills(eSkill.Meditar) <= 20 _
- And UserList(UserIndex).Stats.UserSkills(eSkill.Meditar) >= 11 Then
- Suerte = 30
- ElseIf UserList(UserIndex).Stats.UserSkills(eSkill.Meditar) <= 30 _
- And UserList(UserIndex).Stats.UserSkills(eSkill.Meditar) >= 21 Then
- Suerte = 28
- ElseIf UserList(UserIndex).Stats.UserSkills(eSkill.Meditar) <= 40 _
- And UserList(UserIndex).Stats.UserSkills(eSkill.Meditar) >= 31 Then
- Suerte = 24
- ElseIf UserList(UserIndex).Stats.UserSkills(eSkill.Meditar) <= 50 _
- And UserList(UserIndex).Stats.UserSkills(eSkill.Meditar) >= 41 Then
- Suerte = 22
- ElseIf UserList(UserIndex).Stats.UserSkills(eSkill.Meditar) <= 60 _
- And UserList(UserIndex).Stats.UserSkills(eSkill.Meditar) >= 51 Then
- Suerte = 20
- ElseIf UserList(UserIndex).Stats.UserSkills(eSkill.Meditar) <= 70 _
- And UserList(UserIndex).Stats.UserSkills(eSkill.Meditar) >= 61 Then
- Suerte = 18
- ElseIf UserList(UserIndex).Stats.UserSkills(eSkill.Meditar) <= 80 _
- And UserList(UserIndex).Stats.UserSkills(eSkill.Meditar) >= 71 Then
- Suerte = 15
- ElseIf UserList(UserIndex).Stats.UserSkills(eSkill.Meditar) <= 90 _
- And UserList(UserIndex).Stats.UserSkills(eSkill.Meditar) >= 81 Then
- Suerte = 10
- ElseIf UserList(UserIndex).Stats.UserSkills(eSkill.Meditar) <= 100 _
- And UserList(UserIndex).Stats.UserSkills(eSkill.Meditar) >= 91 Then
- Suerte = 5
- End If
- res = RandomNumber(1, Suerte)
- If res = 1 Then
- Cant = Porcentaje(UserList(UserIndex).Stats.MaxMAN, 3)
- UserList(UserIndex).Stats.MinMAN = UserList(UserIndex).Stats.MinMAN + Cant
- If UserList(UserIndex).Stats.MinMAN > UserList(UserIndex).Stats.MaxMAN Then _
- UserList(UserIndex).Stats.MinMAN = UserList(UserIndex).Stats.MaxMAN
- If Not UserList(UserIndex).flags.UltimoMensaje = 22 Then
- Call SendData(SendTarget.ToIndex, UserIndex, 0, "||¡Has recuperado " & Cant & " puntos de mana!" & FONTTYPE_INFO)
- UserList(UserIndex).flags.UltimoMensaje = 22
- End If
- Call SendData(SendTarget.ToIndex, UserIndex, 0, "ASM" & UserList(UserIndex).Stats.MinMAN)
- Call SubirSkill(UserIndex, Meditar)
- End If
- End Sub
Saludos





414![Destructor de Mentes [5] Destructor de Mentes [5]](./images/ranks/Rango17.gif)

![Newbie [4] Newbie [4]](./images/ranks/Rango3.gif)
