Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Option Explicit
- '************************************
- '* Autor: Toyz - Luciano
- '* Fecha: 24/03/17
- '* ---------------
- '************************************
- Private Type tUsuario
- ID As Integer
- pos As WorldPos
- End Type
- Private Type tEquipos
- usuarios() As tUsuario
- rondasGanadas As Byte
- muertesRonda As Byte
- End Type
- Private Type tPosArenas
- PosEsquinas(1 To 2) As Position
- PosMuertes(1 To 2) As Position
- End Type
- Private Type tArenas
- equipos(1 To 2) As Byte
- ocupada As Boolean
- mapa As Integer
- conteoPelea As Integer
- posiciones As tPosArenas
- End Type
- Private Type tSalasEspera
- ocupada As Boolean
- pos As WorldPos
- End Type
- Public Type tManejoEconomico
- oro As Long
- objetos() As Obj
- End Type
- Public Type tClasesPermitidas
- mago As Boolean
- guerrero As Boolean
- druida As Boolean
- ladron As Boolean
- bandido As Boolean
- trabajador As Boolean
- paladin As Boolean
- clerigo As Boolean
- pirata As Boolean
- cazador As Boolean
- bardo As Boolean
- asesino As Boolean
- End Type
- Public Type tDatosEvento
- tipoEvento As Byte
- rondas As Byte
- cupos As Byte
- inscripcion As tManejoEconomico
- premio As tManejoEconomico
- caenObjetos As Boolean
- aim As Boolean
- invisibilidad As Boolean
- mascotas As Boolean
- maxPocionesRojas As Integer
- maxPocionesAzules As Integer
- clasesPermitidas As tClasesPermitidas
- tiempoAbrirInscripciones As Integer
- End Type
- Private Type tEvento
- salasEspera() As tSalasEspera
- arenas() As tArenas
- equipo() As tEquipos
- Datos As tDatosEvento
- tiempoAutoCancelamiento As Integer
- tiempoAgarrarObjetos As Integer
- End Type
- Private evento() As tEvento
- Public Sub CargarEventos() '<--- Carga todos los eventos y sus características principales.
- Dim eventosTotales As Byte, leerDatos As clsIniReader, LoopC As Long, cantidadArenas As Byte, cantidadSalasEsperas As Byte
- Set leerDatos = New clsIniReader
- Call leerDatos.Initialize(App.Path & "\Dat\Eventos.dat")
- eventosTotales = CByte(leerDatos.GetValue("INIT", "Eventos totales"))
- ReDim evento(1 To eventosTotales) As tEvento
- For LoopC = 1 To eventosTotales '<------ Características
- With evento(LoopC)
- cantidadArenas = CByte(leerDatos.GetValue("EVENTO" & LoopC, "Cantidad de arenas"))
- ReDim .arenas(1 To cantidadArenas) As tArenas
- cantidadSalasEsperas = CByte(leerDatos.GetValue("EVENTO" & LoopC, "Cantidad de salas de esperas"))
- ReDim .salasEspera(1 To cantidadSalasEsperas) As tSalasEspera
- End With
- Next LoopC
- End Sub
- Public Sub CargarArenas()
- Dim LoopC As Long, leerDatos As clsIniReader, loopx As Long, loopi As Long
- Set leerDatos = New clsIniReader
- Call leerDatos.Initialize(App.Path & "\Dat\ArenasEventos.dat")
- For LoopC = 1 To UBound(evento())
- With evento(LoopC)
- For loopi = 1 To UBound(evento(LoopC).arenas())
- .arenas(loopi).mapa = CInt(leerDatos.GetValue("EVENTO" & LoopC, "Mapa de la arena"))
- For loopx = 1 To 2
- .arenas(loopi).posiciones.PosEsquinas(loopx).X = CByte(leerDatos.GetValue("EVENTO" & LoopC, "Esquina X lado " & loopx))
- .arenas(loopi).posiciones.PosEsquinas(loopx).Y = CByte(leerDatos.GetValue("EVENTO" & LoopC, "Esquina Y lado " & loopx))
- .arenas(loopi).posiciones.PosMuertes(loopx).X = CByte(leerDatos.GetValue("EVENTO" & LoopC, "Posicion X donde va los muertos lado " & loopx))
- .arenas(loopi).posiciones.PosMuertes(loopx).Y = CByte(leerDatos.GetValue("EVENTO" & LoopC, "Posicion Y donde va los muertos lado " & loopx))
- Next loopx
- Next loopi
- End With
- Next LoopC
- End Sub
- Public Sub CargarSalasEspera()
- Dim LoopC As Long, leerDatos As clsIniReader, loopx As Long
- Set leerDatos = New clsIniReader
- Call leerDatos.Initialize(App.Path & "\Dat\SalasEsperaEventos.dat")
- For LoopC = 1 To UBound(evento())
- With evento(LoopC)
- For loopx = 1 To UBound(.salasEspera())
- .salasEspera(loopx).pos.X = CByte(leerDatos.GetValue("EVENTO" & LoopC, "Posicion X donde se encuentra la sala de espera"))
- .salasEspera(loopx).pos.Y = CByte(leerDatos.GetValue("EVENTO" & LoopC, "Posicion Y donde se encuentra la sala de espera"))
- .salasEspera(loopx).pos.Map = CInt(leerDatos.GetValue("EVENTO" & LoopC, "Mapa donde se encuentra la sala de espera"))
- Next loopx
- End With
- Next LoopC
- End Sub
- Public Sub ArmarEvento(ByRef Datos As tDatosEvento)
- Dim LoopC As Long
- With evento(Datos.tipoEvento)
- ReDim .equipo(1 To Datos.cupos) As tEquipos
- For LoopC = 1 To Datos.cupos
- ReDim .equipo(LoopC).usuarios(1 To Datos.tipoEvento) As tUsuario
- Next LoopC
- .Datos = Datos
- End With
- End Sub
- Public Sub ConteoEvento()
- Dim LoopC As Long, loopx As Long, loopi As Long
- For LoopC = 1 To UBound(evento()) '<--- general
- With evento(LoopC)
- '<--- falta
- For loopx = 1 To UBound(evento(LoopC).arenas()) '<-- arenas
- With .arenas(loopx)
- If .ocupada = True Then
- If .conteoPelea = 0 Then
- For loopi = 1 To LoopC
- Call WriteConsoleMsg(evento(LoopC).equipo(.equipos(1)).usuarios(loopi).ID, "Conteo>> Ya!", FontTypeNames.FONTTYPE_CONSEJO)
- Call WriteConsoleMsg(evento(LoopC).equipo(.equipos(2)).usuarios(loopi).ID, "Conteo>> Ya!", FontTypeNames.FONTTYPE_CONSEJO)
- Next loopi
- .conteoPelea = -1
- ElseIf .conteoPelea > 0 Then
- For loopi = 1 To LoopC
- Call WriteConsoleMsg(evento(LoopC).equipo(.equipos(1)).usuarios(loopi).ID, "Conteo>> " & .conteoPelea, FontTypeNames.FONTTYPE_CONSEJO)
- Call WriteConsoleMsg(evento(LoopC).equipo(.equipos(2)).usuarios(loopi).ID, "Conteo>> " & .conteoPelea, FontTypeNames.FONTTYPE_CONSEJO)
- Next loopi
- .conteoPelea = .conteoPelea - 1
- End If
- End If
- End With
- Next loopx
- End With
- Next LoopC
- End Sub
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement