No estás conectado. Conéctate o registrate

Reto por Pjs

Ir abajo  Mensaje [Página 1 de 1.]

1 Reto por Pjs el Dom Feb 13, 2011 6:35 pm

RoNiN

avatar
Usuario
Usuario
Funcion: Retas a un personaje, cuando uno gana automaticamente la cambia la pass al otro por una al azar y te la pasa a vos.

Empezamos.

SERVER

Buscamos
Código:
If UCase$(rdata) = "/MODOQUEST" Then

Abajo ponemos
Código:
If UCase$(rdata) = "/RETOPJ" Then
        If UserList(UserIndex).flags.Muerto = 1 Then Exit Sub
       
        Dim Oponente As Integer
     
        Oponente = UserList(UserIndex).flags.TargetUser
     
        If UserList(Oponente).flags.Muerto = 1 Then
        Call SendData(ToIndex, UserIndex, 0, "||El usuario esta muerto." & FONTTYPE_INFO)
        Exit Sub
        End If
     
     
        If UserIndex = Oponente Then
        Call SendData(ToIndex, UserIndex, 0, "||No puedes retarte a ti mismo." & FONTTYPE_TALK)
        Exit Sub
        End If
     
        If UserList(Oponente).flags.retando = True Then
        Call SendData(ToIndex, UserIndex, 0, "||El usuario ya esta en un duelo." & FONTTYPE_TALK)
        Exit Sub
        End If
     
        If UserList(Oponente).flags.EsperandoReto = True Or UserList(UserIndex).flags.EsperandoReto = True Then
        Call SendData(ToIndex, UserIndex, 0, "||El usuario espera otro reto" & FONTTYPE_TALK)
        Exit Sub
        End If
       
        If UserList(UserIndex).flags.retando = True Then
        Call SendData(ToIndex, UserIndex, 0, "||Ya estas en un duelo." & FONTTYPE_TALK)
        Exit Sub
        End If
             
        UserList(UserIndex).flags.EsperandoReto = True
        UserList(Oponente).flags.EsperandoReto = True
     
        UserList(Oponente).flags.Oponente = UserIndex
        UserList(UserIndex).flags.Oponente = Oponente
     
        Call SendData(ToIndex, UserIndex, 0, "||La peticion de duelo ya se ha mandado, espera la respuesta." & FONTTYPE_INFO)
        Exit Sub
        End If
        End If
       
        If UCase$(rdata) = "/ACEPTAR" Then
        Dim Oponente As Integer
        Oponente = UserList(UserIndex).flags.Oponente
            UserList(UserIndex).flags.retando = True
                UserList(Oponente).flags.retando = True
    Call WarpUserChar(UserIndex, 190, 50, 50, True)
                Call WarpUserChar(Oponente, 190, 51, 50, True)
    Call SendData(ToIndex, UserIndex, 0, "||El Duelo ha comenzado!!" & FONTTYPE_TALK)
    Call SendData(ToIndex, Oponente, 0, "||El Duelo ha comenzado!!" & FONTTYPE_TALK)
 
    End If
     
        If UCase$(rdata) = "/RECHAZAR" Then
        Oponente = UserList(UserIndex).flags.Oponente
            UserList(UserIndex).flags.retando = False
                UserList(Oponente).flags.retando = False
            UserList(UserIndex).flags.Oponente = 0
            UserList(Oponente).flags.Oponente = 0
    End If

Ahora buscamos
Código:
Type UserFlags

Y abajo ponemos
Código:
Oponente As Integer
    Retando As Boolean
    EsperandoReto As Boolean


Ahora buscamos
Código:
Sub UserDie(UserIndex As Integer)
On Error GoTo ErrorHandler

Abajo ponemos
Código:
Dim Ganadoor As Integer
Ganadoor = UserList(UserIndex).flags.Oponente
If UserList(UserIndex).flags.Retando = True Then
Call SendData(ToAll, 0, 0, "|| el Usuario " & UserList(Oponente).Name & "ha derrotado en un duelo a " & UserList(UserIndex).Name & " por su PJ." & FONTTYPE_TALK)
Call WarpUserChar(UserIndex, 190, 50, 50, True)
Call WarpUserChar(Ganadoor, 190, 51, 50, True)
UserList(UserIndex).Password = RandomNumber(1000, 2000)
UserList(Ganadoor).Stats.MinHP = UserList(Ganador).Stats.MaxHP
UserList(UserIndex).Stats.MinHP = UserList(Perdedor).Stats.MaxHP
UserList(Ganadoor).flags.Retando = False
UserList(UserIndex).flags.Retando = False
UserList(Ganadoor).flags.EsperandoReto = False
UserList(UserIndex).flags.EsperandoReto = False
UserList(UserIndex).flags.Oponente = 0
UserList(Ganadoor).flags.Oponente = 0
CuentaRegresiva = 3
Call SendData(ToIndex, Oponente, 0, "||Has ganado, el password del oponente es " & UserList(UserIndex).Password & FONTTYPE_TALK)
 
End If

Despues Buscamos Private Sub UserTimer_Timer()

Y reemplazamos, no todo el sub sino hasta el primer End If, se van a dar cuenta.

Código:
Private Sub UserTimer_Timer()
On Error GoTo Error
Static Andaban As Boolean, Contador As Single
Dim Andan As Boolean, UI As Integer, i As Integer
Dim Perdedoor As Integer
 
If CuentaRegresiva Then
    CuentaRegresiva = CuentaRegresiva - 1
   
    If CuentaRegresiva = 0 Then
        Call SendData(ToMap, 0, GMCuenta, "||YA!!!" & FONTTYPE_FIGHT)
        Me.Enabled = False
      For i = 1 To LastUser
      Perdedoor = UserList(i).flags.PerdioCuent
      If Perdedoor >= 1 Then
      Next
      Call CloseSocket(Perdedoor)
      End If
    Else
        Call SendData(ToMap, 0, GMCuenta, "||" & CuentaRegresiva & "..." & FONTTYPE_INFO)
    End If
End If

PD: Probablemente ya exista el flags "Oponente" de ultima agregenle una E mas y se lo cambio en cada lugar que diga .flags.oponente .

Ver perfil de usuario

2 Re: Reto por Pjs el Lun Abr 04, 2011 9:30 am

kratos

avatar
Usuario
Usuario
Buen aporte!
Segui asi
10 Estrellas Nos estamos Viendo




Saludos!

Ver perfil de usuario

Volver arriba  Mensaje [Página 1 de 1.]

Permisos de este foro:
No puedes responder a temas en este foro.

 

Crear foro | © PunBB | Foro gratis de asistencia | Contactar | Denunciar un abuso | Blog gratis