Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Option Explicit
- Public Con As ADODB.Connection
- Public RS As ADODB.Recordset
- Public Sub CargarDB()
- On Error GoTo Errhandler
- Set Con = New ADODB.Connection
- Con.ConnectionString = "DRIVER={MySQL ODBC 5.1 Driver};" & "SERVER=localhost;" & " DATABASE=;" & "UID=root;PWD=; OPTION=3"
- Con.CursorLocation = adUseClient
- Con.Open
- Exit Sub
- Errhandler:
- MsgBox "Error en CargarDB: " & Err.description & " String: " & Con.ConnectionString
- End
- End Sub
- Public Sub CerrarDB()
- On Error GoTo ErrHandle
- Con.Close
- Set Con = Nothing
- Exit Sub
- ErrHandle:
- MsgBox "Ha surgido un error al cerrar la base de datos MySQL"
- End
- End Sub
- Public Sub SaveUserSQL(UserIndex As Integer)
- On Local Error GoTo ErrHandle
- Dim RS As ADODB.Recordset
- Dim mUser As User
- Dim i As Byte
- Dim str As String
- If UserList(UserIndex).flags.Mimetizado = 1 Then
- UserList(UserIndex).Char.body = UserList(UserIndex).CharMimetizado.body
- UserList(UserIndex).Char.Head = UserList(UserIndex).CharMimetizado.Head
- UserList(UserIndex).Char.CascoAnim = UserList(UserIndex).CharMimetizado.CascoAnim
- UserList(UserIndex).Char.ShieldAnim = UserList(UserIndex).CharMimetizado.ShieldAnim
- UserList(UserIndex).Char.WeaponAnim = UserList(UserIndex).CharMimetizado.WeaponAnim
- UserList(UserIndex).Counters.Mimetismo = 0
- UserList(UserIndex).flags.Mimetizado = 0
- UserList(UserIndex).flags.Ignorado = False
- End If
- Dim LoopC As Integer
- mUser = UserList(UserIndex)
- If Len(mUser.name) = 0 Then Exit Sub
- Set RS = New ADODB.Recordset
- Set RS = Con.Execute("SELECT * FROM `Flags` WHERE Nombre='" & UCase$(mUser.name) & "'")
- If RS.BOF Or RS.EOF Then
- Con.Execute ("INSERT INTO `Flags` (NOMBRE) VALUES ('" & UCase$(mUser.name) & "')")
- Set RS = Nothing
- Set RS = Con.Execute("SELECT * FROM `Flags` WHERE Nombre='" & UCase$(mUser.name) & "'")
- UserList(UserIndex).IndexPJ = RS!IndexPJ
- Else
- Set RS = Con.Execute("SELECT * FROM `Flags` WHERE IndexPJ=" & mUser.IndexPJ)
- UserList(UserIndex).IndexPJ = RS!IndexPJ
- End If
- Set RS = Nothing
- Dim Pena As Integer
- Set RS = Con.Execute("SELECT * FROM `Flags` WHERE IndexPJ=" & UserList(UserIndex).IndexPJ)
- If RS.BOF Or RS.EOF Then Call Con.Execute("INSERT INTO `Flags` (IndexPJ) VALUES (" & UserList(UserIndex).IndexPJ & ")")
- Set RS = Nothing
- str = "UPDATE `Flags` SET"
- str = str & " IndexPJ=" & UserList(UserIndex).IndexPJ
- str = str & ",Nombre='" & UCase$(mUser.name) & "'" 'j
- str = str & ",Muerto=" & mUser.flags.Muerto
- str = str & ",Escondido=" & mUser.flags.Escondido
- str = str & ",Ban=" & mUser.flags.Ban '
- str = str & ",Desnudo=" & mUser.flags.Desnudo
- str = str & ",Hambre=" & mUser.flags.Hambre
- str = str & ",Sed=" & mUser.flags.Sed
- str = str & ",Envenenado=" & mUser.flags.Envenenado '
- str = str & ",Navegando=" & mUser.flags.Navegando '
- str = str & ",Paralizado=" & mUser.flags.Paralizado
- str = str & ",LastMap=" & mUser.flags.lastMap
- str = str & " WHERE IndexPJ=" & UserList(UserIndex).IndexPJ
- Call Con.Execute(str)
- Set RS = Con.Execute("SELECT * FROM `CONSEJO` WHERE IndexPJ=" & UserList(UserIndex).IndexPJ)
- If RS.BOF Or RS.EOF Then Call Con.Execute("INSERT INTO `CONSEJO` (IndexPJ) VALUES (" & UserList(UserIndex).IndexPJ & ")")
- Set RS = Nothing
- str = "UPDATE `CONSEJO` SET"
- str = str & " IndexPJ=" & UserList(UserIndex).IndexPJ
- str = str & ",PERTENECE=" & IIf(mUser.flags.Privilegios And PlayerType.RoyalCouncil, "1", "0")
- str = str & ",PERTENECECAOS=" & IIf(mUser.flags.Privilegios And PlayerType.ChaosCouncil, "1", "0")
- str = str & " WHERE IndexPJ=" & UserList(UserIndex).IndexPJ
- Call Con.Execute(str)
- Set RS = Con.Execute("SELECT * FROM `Counters` WHERE IndexPJ=" & UserList(UserIndex).IndexPJ)
- If RS.BOF Or RS.EOF Then Call Con.Execute("INSERT INTO `Counters` (IndexPJ) VALUES (" & UserList(UserIndex).IndexPJ & ")")
- Set RS = Nothing
- str = "UPDATE `Counters` SET"
- str = str & " IndexPJ=" & UserList(UserIndex).IndexPJ
- str = str & ",Pena=" & CStr(mUser.Counters.Pena)
- str = str & ",SkillsAsignados=" & CStr(mUser.Counters.AsignedSkills)
- str = str & " WHERE IndexPJ=" & UserList(UserIndex).IndexPJ
- Call Con.Execute(str)
- Set RS = Con.Execute("SELECT * FROM `Faccion` WHERE IndexPJ=" & UserList(UserIndex).IndexPJ)
- If RS.BOF Or RS.EOF Then Call Con.Execute("INSERT INTO `Faccion` (IndexPJ) VALUES (" & UserList(UserIndex).IndexPJ & ")")
- Set RS = Nothing
- str = "UPDATE `Faccion` SET"
- str = str & " IndexPJ=" & UserList(UserIndex).IndexPJ
- str = str & ",EjercitoReal=" & mUser.Faccion.ArmadaReal
- str = str & ",EjercitoCaos=" & mUser.Faccion.FuerzasCaos
- str = str & ",CiudMatados=" & mUser.Faccion.CiudadanosMatados
- str = str & ",CrimMatados=" & mUser.Faccion.CriminalesMatados
- str = str & ",rArCaos=" & mUser.Faccion.RecibioArmaduraCaos
- str = str & ",rArReal=" & mUser.Faccion.RecibioArmaduraReal
- str = str & ",rExCaos=" & mUser.Faccion.RecibioExpInicialCaos
- str = str & ",rExReal=" & mUser.Faccion.RecibioExpInicialReal
- str = str & ",recCaos=" & mUser.Faccion.RecompensasCaos
- str = str & ",recReal=" & mUser.Faccion.RecompensasReal
- str = str & ",Reenlistadas=" & mUser.Faccion.Reenlistadas
- str = str & ",NivelIngreso=" & mUser.Faccion.NivelIngreso
- str = str & ",FechaIngreso='" & mUser.Faccion.FechaIngreso & "'"
- str = str & ",MatadosIngreso=" & mUser.Faccion.MatadosIngreso
- str = str & ",NextRecompensa=" & mUser.Faccion.NextRecompensa
- str = str & " WHERE IndexPJ=" & UserList(UserIndex).IndexPJ
- Call Con.Execute(str)
- Set RS = Con.Execute("SELECT * FROM `Atributos` WHERE IndexPJ=" & UserList(UserIndex).IndexPJ)
- If RS.BOF Or RS.EOF Then Call Con.Execute("INSERT INTO `Atributos` (IndexPJ) VALUES (" & UserList(UserIndex).IndexPJ & ")")
- Set RS = Nothing
- str = "UPDATE `Atributos` SET"
- str = str & " IndexPJ=" & UserList(UserIndex).IndexPJ
- For i = 1 To UBound(mUser.Stats.UserAtributos)
- str = str & ",AT" & i & "=" & mUser.Stats.UserAtributos(i)
- Next i
- str = str & " WHERE IndexPJ=" & UserList(UserIndex).IndexPJ
- Call Con.Execute(str)
- Set RS = Con.Execute("SELECT * FROM `Skills` WHERE IndexPJ=" & UserList(UserIndex).IndexPJ)
- If RS.BOF Or RS.EOF Then Call Con.Execute("INSERT INTO `Skills` (IndexPJ) VALUES (" & UserList(UserIndex).IndexPJ & ")")
- Set RS = Nothing
- str = "UPDATE `Skills` SET"
- str = str & " IndexPJ=" & UserList(UserIndex).IndexPJ
- For i = 1 To UBound(mUser.Stats.UserSkills)
- str = str & ",SK" & i & "=" & mUser.Stats.UserSkills(i)
- str = str & ",ELUSK" & i & "=" & mUser.Stats.EluSkills(i)
- str = str & ",EXPSK" & i & "=" & mUser.Stats.ExpSkills(i)
- Next i
- str = str & " WHERE IndexPJ=" & UserList(UserIndex).IndexPJ
- Call Con.Execute(str)
- Set RS = Con.Execute("SELECT * FROM `Clanes` WHERE IndexPJ=" & UserList(UserIndex).IndexPJ)
- If RS.BOF Or RS.EOF Then Call Con.Execute("INSERT INTO `Clanes` (IndexPJ) VALUES (" & UserList(UserIndex).IndexPJ & ")")
- Set RS = Nothing
- str = "UPDATE `Clanes` SET"
- str = str & " IndexPJ=" & UserList(UserIndex).IndexPJ
- str = str & ",GuildIndex=" & mUser.GuildIndex
- str = str & " WHERE IndexPJ=" & UserList(UserIndex).IndexPJ
- Call Con.Execute(str)
- Set RS = Con.Execute("SELECT * FROM `Contacto` WHERE IndexPJ=" & UserList(UserIndex).IndexPJ)
- If RS.BOF Or RS.EOF Then Call Con.Execute("INSERT INTO `Contacto` (IndexPJ) VALUES (" & UserList(UserIndex).IndexPJ & ")")
- Set RS = Nothing
- str = "UPDATE `Contacto` SET"
- str = str & " IndexPJ=" & UserList(UserIndex).IndexPJ
- str = str & ",Email='" & UserList(UserIndex).email & "'"
- str = str & " WHERE IndexPJ=" & UserList(UserIndex).IndexPJ
- Call Con.Execute(str)
- Set RS = Con.Execute("SELECT * FROM `Init` WHERE IndexPJ=" & UserList(UserIndex).IndexPJ)
- If RS.BOF Or RS.EOF Then Call Con.Execute("INSERT INTO `Init` (IndexPJ) VALUES (" & UserList(UserIndex).IndexPJ & ")")
- Set RS = Nothing
- str = "UPDATE `Init` SET"
- str = str & " IndexPJ=" & UserList(UserIndex).IndexPJ
- str = str & ",Genero='" & mUser.Genero & "'"
- str = str & ",Password='" & mUser.Password & "'"
- str = str & ",Hogar='" & mUser.Hogar & "'"
- str = str & ",Clase='" & mUser.clase & "'"
- str = str & ",Raza='" & mUser.raza & "'"
- If mUser.desc <> "" Then
- str = str & ",Descripcion='" & mUser.desc & "'"
- End If
- str = str & ",Heading=" & mUser.Char.heading
- str = str & ",Head=" & mUser.Char.Head
- str = str & ",Body=" & mUser.Char.body
- str = str & ",Arma=" & mUser.Char.WeaponAnim
- str = str & ",Escudo=" & mUser.Char.ShieldAnim
- str = str & ",Casco=" & mUser.Char.CascoAnim
- str = str & ",LastIP='" & mUser.ip & "'"
- str = str & ",Position='" & mUser.Pos.Map & "-" & mUser.Pos.X & "-" & mUser.Pos.Y & "'"
- str = str & " WHERE IndexPJ=" & UserList(UserIndex).IndexPJ
- Call Con.Execute(str)
- Set RS = Con.Execute("SELECT * FROM `Stats` WHERE IndexPJ=" & UserList(UserIndex).IndexPJ)
- If RS.BOF Or RS.EOF Then Call Con.Execute("INSERT INTO `Stats` (IndexPJ) VALUES (" & UserList(UserIndex).IndexPJ & ")")
- Set RS = Nothing
- str = "UPDATE `Stats` SET"
- str = str & " IndexPJ=" & UserList(UserIndex).IndexPJ
- str = str & ",BANCO=" & mUser.Stats.Banco
- str = str & ",MaxHP=" & mUser.Stats.MaxHp
- str = str & ",MinHP=" & mUser.Stats.MinHp
- str = str & ",MaxMAN=" & mUser.Stats.MaxMAN
- str = str & ",MinMAN=" & mUser.Stats.MinMAN
- str = str & ",MaxSTA=" & mUser.Stats.MaxSta
- str = str & ",MinSTA=" & mUser.Stats.MinSta
- str = str & ",MaxHIT=" & mUser.Stats.MaxHIT
- str = str & ",MinHIT=" & mUser.Stats.MinHIT
- str = str & ",MinAGU=" & mUser.Stats.MinAGU
- str = str & ",MaxAGU=" & mUser.Stats.MaxAGU
- str = str & ",MaxHAM=" & mUser.Stats.MaxHam
- str = str & ",MinHAM=" & mUser.Stats.MinHam
- str = str & ",SkillPtsLibres=" & mUser.Stats.SkillPts
- str = str & ",EXP=" & mUser.Stats.Exp
- str = str & ",ELV=" & mUser.Stats.ELV
- str = str & ",ELU=" & mUser.Stats.ELU
- str = str & ",GLD=" & mUser.Stats.GLD
- str = str & ",NpcsMuertes=" & mUser.Stats.NPCsMuertos
- str = str & ",UserMuertes=" & mUser.Stats.UsuariosMatados
- str = str & " WHERE IndexPJ=" & UserList(UserIndex).IndexPJ
- Call Con.Execute(str)
- Set RS = Con.Execute("SELECT * FROM `MASCOTAS` WHERE IndexPJ=" & UserList(UserIndex).IndexPJ)
- If RS.BOF Or RS.EOF Then Call Con.Execute("INSERT INTO `MASCOTAS` (IndexPJ) VALUES (" & UserList(UserIndex).IndexPJ & ")")
- Set RS = Nothing
- str = "UPDATE `MASCOTAS` SET"
- Dim NroMascotas As Long
- NroMascotas = mUser.NroMascotas
- Dim cad As String
- str = str & " IndexPJ=" & UserList(UserIndex).IndexPJ
- For LoopC = 1 To MAXMASCOTAS
- ' Mascota valida?
- If UserList(UserIndex).MascotasIndex(LoopC) > 0 Then
- ' Nos aseguramos que la criatura no fue invocada
- If Npclist(UserList(UserIndex).MascotasIndex(LoopC)).Contadores.TiempoExistencia = 0 Then
- cad = UserList(UserIndex).MascotasType(LoopC)
- Else 'Si fue invocada no la guardamos
- cad = "0"
- NroMascotas = NroMascotas - 1
- End If
- str = str & ",MAS" & LoopC & "=" & cad
- Else
- cad = UserList(UserIndex).MascotasType(LoopC)
- str = str & ",MAS" & LoopC & "=" & cad
- End If
- Next
- str = str & ",NroMascota=" & NroMascotas
- str = str & " WHERE IndexPJ=" & UserList(UserIndex).IndexPJ
- Call Con.Execute(str)
- Set RS = Con.Execute("SELECT * FROM `Banco` WHERE IndexPJ=" & UserList(UserIndex).IndexPJ)
- If RS.BOF Or RS.EOF Then Call Con.Execute("INSERT INTO `Banco` (IndexPJ) VALUES (" & UserList(UserIndex).IndexPJ & ")")
- str = "UPDATE `Banco` SET"
- str = str & " IndexPJ=" & UserList(UserIndex).IndexPJ
- str = str & ",CantidadItems=" & mUser.BancoInvent.NroItems
- For i = 1 To MAX_BANCOINVENTORY_SLOTS
- str = str & ",OBJ" & i & "=" & mUser.BancoInvent.Object(i).ObjIndex
- str = str & ",CANT" & i & "=" & mUser.BancoInvent.Object(i).Amount
- Next i
- str = str & " WHERE IndexPJ=" & UserList(UserIndex).IndexPJ
- Call Con.Execute(str)
- Set RS = Con.Execute("SELECT * FROM `Hechizos` WHERE IndexPJ=" & UserList(UserIndex).IndexPJ)
- If RS.BOF Or RS.EOF Then Call Con.Execute("INSERT INTO `Hechizos` (IndexPJ) VALUES (" & UserList(UserIndex).IndexPJ & ")")
- Set RS = Nothing
- str = "UPDATE `Hechizos` SET"
- str = str & " IndexPJ=" & UserList(UserIndex).IndexPJ
- For i = 1 To MAXUSERHECHIZOS
- str = str & ",H" & i & "=" & mUser.Stats.UserHechizos(i)
- Next i
- str = str & " WHERE IndexPJ=" & UserList(UserIndex).IndexPJ
- Call Con.Execute(str)
- Set RS = Con.Execute("SELECT * FROM `inventario` WHERE IndexPJ=" & UserList(UserIndex).IndexPJ)
- If RS.BOF Or RS.EOF Then Call Con.Execute("INSERT INTO `inventario` (IndexPJ) VALUES (" & UserList(UserIndex).IndexPJ & ")")
- Set RS = Nothing
- str = "UPDATE `inventario` SET"
- str = str & " IndexPJ=" & UserList(UserIndex).IndexPJ
- str = str & ",CantidadItems=" & val(mUser.Invent.NroItems)
- For i = 1 To MAX_INVENTORY_SLOTS
- str = str & ",OBJ" & i & "=" & mUser.Invent.Object(i).ObjIndex
- str = str & ",CANT" & i & "=" & mUser.Invent.Object(i).Amount
- str = str & ",EQUIP" & i & "=" & mUser.Invent.Object(i).Equipped
- Next i
- str = str & ",CascoEqpSlot=" & mUser.Invent.CascoEqpSlot
- str = str & ",ArmourEqpSlot=" & mUser.Invent.ArmourEqpSlot
- str = str & ",EscudoEqpSlot=" & mUser.Invent.EscudoEqpSlot
- str = str & ",WeaponEqpSlot=" & mUser.Invent.WeaponEqpSlot
- str = str & ",MunicionSlot=" & mUser.Invent.MunicionEqpSlot
- str = str & ",BarcoSlot=" & mUser.Invent.BarcoSlot
- str = str & ",MochilaSlot=" & mUser.Invent.MochilaEqpSlot
- str = str & " WHERE IndexPJ=" & UserList(UserIndex).IndexPJ
- Call Con.Execute(str)
- Exit Sub
- ErrHandle:
- Call MsgBox("Error en el SAVEDB: " & Err.description & " String: " & str)
- 'End
- End Sub
- Public Function LoadUserSQL(UserIndex As Integer, ByVal name As String) As Boolean
- On Error GoTo Errhandler
- Dim i As Integer
- With UserList(UserIndex)
- Set RS = Con.Execute("SELECT * FROM `Flags` WHERE Nombre='" & UCase$(name) & "'")
- If RS.BOF Or RS.EOF Then
- LoadUserSQL = False
- Exit Function
- End If
- .IndexPJ = RS!IndexPJ
- Set RS = Nothing
- Set RS = Con.Execute("SELECT * FROM `Flags` WHERE IndexPJ=" & .IndexPJ)
- If RS.BOF Or RS.EOF Then
- LoadUserSQL = False
- Exit Function
- End If
- .name = RS!Nombre
- .flags.Muerto = RS!Muerto
- .flags.Escondido = RS!Escondido
- .flags.Ban = RS!Ban
- .flags.Desnudo = RS!Desnudo
- .flags.Envenenado = RS!Envenenado
- .flags.Navegando = RS!Navegando
- .flags.Paralizado = RS!Paralizado
- If UserList(UserIndex).flags.Paralizado = 1 Then
- UserList(UserIndex).Counters.Paralisis = IntervaloParalizado
- End If
- .flags.lastMap = RS!lastMap
- Set RS = Nothing
- Set RS = Con.Execute("SELECT * FROM `Counters` WHERE IndexPJ=" & .IndexPJ)
- If RS.BOF Or RS.EOF Then
- LoadUserSQL = False
- Exit Function
- End If
- .Counters.Pena = RS!Pena
- .Counters.AsignedSkills = RS!SkillsAsignados
- Set RS = Nothing
- Set RS = Con.Execute("SELECT * FROM `Faccion` WHERE IndexPJ=" & .IndexPJ)
- If RS.BOF Or RS.EOF Then
- LoadUserSQL = False
- Exit Function
- End If
- .Faccion.ArmadaReal = RS!EjercitoReal
- .Faccion.FuerzasCaos = RS!EjercitoCaos
- .Faccion.CiudadanosMatados = RS!CiudMatados
- .Faccion.CriminalesMatados = RS!CrimMatados
- .Faccion.RecibioArmaduraCaos = RS!rArCaos
- .Faccion.RecibioArmaduraReal = RS!rArReal
- .Faccion.RecibioExpInicialCaos = RS!rExCaos
- .Faccion.RecibioExpInicialReal = RS!rExReal
- .Faccion.RecompensasCaos = RS!recCaos
- .Faccion.RecompensasReal = RS!recReal
- .Faccion.Reenlistadas = RS!Reenlistadas
- .Faccion.NivelIngreso = RS!NivelIngreso
- .Faccion.FechaIngreso = RS!FechaIngreso
- .Faccion.MatadosIngreso = RS!MatadosIngreso
- .Faccion.NextRecompensa = RS!NextRecompensa
- Set RS = Nothing
- Set RS = Con.Execute("SELECT * FROM `CONTACTO` WHERE IndexPJ=" & .IndexPJ)
- If RS.BOF Or RS.EOF Then
- LoadUserSQL = False
- Exit Function
- End If
- .email = RS!email
- Set RS = Nothing
- Set RS = Con.Execute("SELECT * FROM `Atributos` WHERE IndexPJ=" & .IndexPJ)
- If RS.BOF Or RS.EOF Then
- LoadUserSQL = False
- Exit Function
- End If
- For i = 1 To NUMATRIBUTOS
- .Stats.UserAtributos(i) = RS.Fields("AT" & i)
- .Stats.UserAtributosBackUP(i) = .Stats.UserAtributos(i)
- Next i
- Set RS = Nothing
- Set RS = Con.Execute("SELECT * FROM `Skills` WHERE IndexPJ=" & .IndexPJ)
- If RS.BOF Or RS.EOF Then
- LoadUserSQL = False
- Exit Function
- End If
- For i = 1 To NUMSKILLS
- .Stats.UserSkills(i) = RS.Fields("SK" & i)
- .Stats.EluSkills(i) = RS.Fields("ELUSK" & i)
- .Stats.ExpSkills(i) = RS.Fields("EXPSK" & i)
- Next i
- Set RS = Nothing
- Set RS = Con.Execute("SELECT * FROM `Banco` WHERE IndexPJ=" & .IndexPJ)
- If RS.BOF Or RS.EOF Then
- LoadUserSQL = False
- Exit Function
- End If
- .BancoInvent.NroItems = RS!CantidadItems
- For i = 1 To MAX_BANCOINVENTORY_SLOTS
- .BancoInvent.Object(i).ObjIndex = RS.Fields("OBJ" & i)
- .BancoInvent.Object(i).Amount = RS.Fields("CANT" & i)
- Next i
- Set RS = Nothing
- Set RS = Con.Execute("SELECT * FROM `inventario` WHERE IndexPJ=" & .IndexPJ)
- If RS.BOF Or RS.EOF Then
- LoadUserSQL = False
- Exit Function
- End If
- .Invent.NroItems = RS!CantidadItems
- For i = 1 To MAX_INVENTORY_SLOTS
- .Invent.Object(i).ObjIndex = RS.Fields("OBJ" & i)
- .Invent.Object(i).Amount = RS.Fields("CANT" & i)
- .Invent.Object(i).Equipped = RS.Fields("EQUIP" & i)
- Next i
- .Invent.CascoEqpSlot = RS!CascoEqpSlot
- If .Invent.CascoEqpSlot > 0 Then
- .Invent.CascoEqpObjIndex = .Invent.Object(.Invent.CascoEqpSlot).ObjIndex
- End If
- .Invent.ArmourEqpSlot = RS!ArmourEqpSlot
- If .Invent.ArmourEqpSlot > 0 Then
- .Invent.ArmourEqpObjIndex = .Invent.Object(.Invent.ArmourEqpSlot).ObjIndex
- .flags.Desnudo = 0
- Else
- .flags.Desnudo = 1
- End If
- .Invent.EscudoEqpSlot = RS!EscudoEqpSlot
- If .Invent.EscudoEqpSlot > 0 Then
- .Invent.EscudoEqpObjIndex = .Invent.Object(.Invent.EscudoEqpSlot).ObjIndex
- End If
- .Invent.WeaponEqpSlot = RS!WeaponEqpSlot
- If .Invent.WeaponEqpSlot > 0 Then
- .Invent.WeaponEqpObjIndex = .Invent.Object(.Invent.WeaponEqpSlot).ObjIndex
- End If
- .Invent.MunicionEqpSlot = RS!MunicionSlot
- If .Invent.MunicionEqpSlot > 0 Then
- .Invent.MunicionEqpObjIndex = .Invent.Object(.Invent.MunicionEqpSlot).ObjIndex
- End If
- .Invent.BarcoSlot = RS!BarcoSlot
- If .Invent.BarcoSlot > 0 Then
- .Invent.BarcoObjIndex = .Invent.Object(.Invent.BarcoSlot).ObjIndex
- End If
- .Invent.MochilaEqpSlot = RS!mochilaSlot
- If .Invent.MochilaEqpSlot > 0 Then
- .Invent.MochilaEqpObjIndex = .Invent.Object(.Invent.MochilaEqpSlot).ObjIndex
- End If
- Set RS = Nothing
- Set RS = Con.Execute("SELECT * FROM `Clanes` WHERE IndexPJ=" & .IndexPJ)
- If RS.BOF Or RS.EOF Then
- LoadUserSQL = False
- Exit Function
- End If
- Dim ln As String
- ln = RS!GuildIndex
- If IsNumeric(ln) Then
- .GuildIndex = CInt(ln)
- Else
- .GuildIndex = 0
- End If
- Set RS = Nothing
- Set RS = Con.Execute("SELECT * FROM `Hechizos` WHERE IndexPJ=" & .IndexPJ)
- If RS.BOF Or RS.EOF Then
- LoadUserSQL = False
- Exit Function
- End If
- For i = 1 To MAXUSERHECHIZOS
- .Stats.UserHechizos(i) = RS.Fields("H" & i)
- Next i
- Set RS = Nothing
- Set RS = Con.Execute("SELECT * FROM `Stats` WHERE IndexPJ=" & .IndexPJ)
- If RS.BOF Or RS.EOF Then
- LoadUserSQL = False
- Exit Function
- End If
- .Stats.Banco = RS!Banco
- .Stats.MaxHp = RS!MaxHp
- .Stats.MinHp = RS!MinHp
- .Stats.MinSta = RS!MinSta
- .Stats.MaxSta = RS!MaxSta
- .Stats.MaxMAN = RS!MaxMAN
- .Stats.MinMAN = RS!MinMAN
- .Stats.MaxHIT = RS!MaxHIT
- .Stats.MinHIT = RS!MinHIT
- .Stats.SkillPts = RS!SkillPtsLibres
- .Stats.Exp = RS!Exp
- .Stats.ELU = RS!ELU
- .Stats.ELV = RS!ELV
- .Stats.UsuariosMatados = RS!UserMuertes
- .Stats.NPCsMuertos = RS!NpcsMuertes
- Set RS = Nothing
- Set RS = Con.Execute("SELECT * FROM `CONSEJO` WHERE IndexPJ=" & .IndexPJ)
- If RS.BOF Or RS.EOF Then
- LoadUserSQL = False
- Exit Function
- End If
- If RS!pertenece Then _
- .flags.Privilegios = .flags.Privilegios Or PlayerType.RoyalCouncil
- If RS!PERTENECECAOS Then _
- .flags.Privilegios = .flags.Privilegios Or PlayerType.ChaosCouncil
- Set RS = Nothing
- Set RS = Con.Execute("SELECT * FROM `Init` WHERE IndexPJ=" & .IndexPJ)
- If RS.BOF Or RS.EOF Then
- LoadUserSQL = False
- Exit Function
- End If
- .Password = RS!Password
- .Genero = RS!Genero
- .clase = RS!clase
- .raza = RS!raza
- .Hogar = RS!Hogar
- .Char.heading = RS!heading
- If .desc <> "" Then
- .desc = RS!Descripcion
- End If
- .OrigChar.Head = RS!Head
- .OrigChar.body = RS!body
- .OrigChar.WeaponAnim = RS!Arma
- .OrigChar.ShieldAnim = RS!Escudo
- .OrigChar.CascoAnim = RS!casco
- .OrigChar.heading = eHeading.SOUTH
- If .flags.Muerto = 0 Then
- .Char = .OrigChar
- Else
- .Char.body = iCuerpoMuerto
- .Char.Head = iCabezaMuerto
- .Char.WeaponAnim = NingunArma
- .Char.ShieldAnim = NingunEscudo
- .Char.CascoAnim = NingunCasco
- End If
- .Pos.Map = ReadField(1, RS!Position, 45)
- .Pos.X = ReadField(2, RS!Position, 45)
- .Pos.Y = ReadField(3, RS!Position, 45)
- Set RS = Nothing
- LoadUserSQL = True
- End With
- Exit Function
- Errhandler:
- Call MsgBox("Error en el loadDB: " & Err.description)
- Set RS = Nothing
- End Function
- Public Function ComprobarPassword(ByVal name As String, Password As String) As Boolean
- Dim Pass As String
- Dim index As String
- Set RS = Con.Execute("SELECT * FROM `Flags` WHERE Nombre='" & UCase$(name) & "'")
- If RS.BOF Or RS.EOF Then Exit Function
- index = RS!IndexPJ
- Set RS = Nothing
- Set RS = Con.Execute("SELECT * FROM `Init` WHERE IndexPj=" & index)
- If RS.BOF Or RS.EOF Then Exit Function
- Pass = RS!Password
- If Len(Pass) = 0 Then Exit Function
- Set RS = Nothing
- If Password = Pass Then ComprobarPassword = True
- End Function
- Public Function BANCheck(ByVal name As String) As Boolean
- Dim Baneado As Byte
- Set RS = Con.Execute("SELECT * FROM `Flags` WHERE Nombre='" & UCase$(name) & "'")
- If RS.BOF Or RS.EOF Then Exit Function
- Baneado = RS!Ban
- BANCheck = (Baneado = 1)
- Set RS = Nothing
- End Function
- Public Function IndexPJ(ByVal name As String) As Integer
- Set RS = Con.Execute("SELECT * FROM `Flags` WHERE Nombre='" & UCase$(name) & "'")
- If RS.BOF Or RS.EOF Then Exit Function
- IndexPJ = RS!IndexPJ
- Set RS = Nothing
- End Function
- Function ExistePersonaje(name As String) As Boolean
- Set RS = Con.Execute("SELECT * FROM `Flags` WHERE Nombre='" & UCase$(name) & "'")
- If RS.BOF Or RS.EOF Then Exit Function
- Set RS = Nothing
- ExistePersonaje = True
- End Function
- Y ahora nos descargamos el .sql para poderlo subir a nuestro host
- http://www.mediafire.com/?4ac300ddk7s8mjy
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement